interface BaseCssValue { /** * The base css value, without any media queries applied */ base?: T; } export declare type InferPropsFromFunctionArgument = T extends (props: infer R) => any ? R extends { theme?: any; } ? Pick> : R : {}; export declare type StyleProps = InferPropsFromFunctionArgument & InferPropsFromFunctionArgument & InferPropsFromFunctionArgument & InferPropsFromFunctionArgument & InferPropsFromFunctionArgument & InferPropsFromFunctionArgument & InferPropsFromFunctionArgument & InferPropsFromFunctionArgument & InferPropsFromFunctionArgument; export declare type ResponsivePropValue = { [P in Extract]?: ValueType; } & BaseCssValue; export declare type ResponsiveProp = [BreakPoints] extends [never] ? ValueType : ValueType | ResponsivePropValue; export interface Dictionary { [index: string]: T; } export declare type ResponsiveObject = { [K in keyof P]?: ResponsiveProp; }; export interface Theme { theme: T & { breakpoints?: undefined; }; } export interface IBreakpointTheme { theme: T & { breakpoints: B; }; } export declare type ThemeWithBreakpoints = [B] extends [never] ? [T] extends [never] ? Partial> : Theme : IBreakpointTheme; export declare type WithTheme = ResponsiveObject & ThemeWithBreakpoints; export interface StyleOptions = Extract> { /** * The css property this function should map to */ cssProp: string; /** * The property of the component's props to read from */ prop: Extract; /** * The property within the theme to map the `prop` value to */ themeProp?: K; /** * The resolver to be used for array values */ arrayResolver?: (value: Array, themeValue?: T[K]) => string; } export interface VariantOptions = Extract> { /** * The property of the component's props to read from */ prop: Extract; /** * The property within the theme to map the `prop` value to */ themeProp: K; } export interface Styles { [ruleOrSelector: string]: string | number | Styles; } export {};