import * as React from "react"; import injectSheet, { JssProvider, SheetsRegistry, Styles, WithSheet, ThemeProvider } from "react-jss"; interface MyTheme { color: { primary: string; secondary: string; }; } /** * helper function to counter typescripts type widening */ function createStyles(styles: Styles): Styles { return styles; } const styles = (theme: MyTheme) => createStyles({ myButton: { color: theme.color.primary, margin: 1, "& span": { fontWeight: "revert" } }, myLabel: { fontStyle: "italic" } }); interface ButtonProps extends WithSheet { label: string; } const Button: React.SFC = ({ classes, children }) => { return ( ); }; const ManuallyStyles = () => { return (