import { CSSProperties, FunctionComponent, ReactHTML, ReactNode, ReactSVG } from 'react'; export type Style = CSSProperties & { [key: `@media${string}`]: Style; [key: `@keyframes${string}`]: Record; [key: `&${string}`]: Style; }; export type Props = { [key: string]: any; style?: Style; children?: ReactNode; }; export type As = string | FunctionComponent; export type StyledFn = (as: As, style: Style) => FunctionComponent; export type StyledProxy = { [Tag in keyof (ReactHTML & ReactSVG)]: FunctionComponent & { style?: Style; }>; };