import { Interpolation, InterpolationFunction, ThemedCssFunction } from 'styled-components'; import { NonFunctionKeys } from 'utility-types'; import { DefaultTheme } from './theme.main'; declare type BooleanFunction
= (props: P) => boolean; declare type CallbackOrPropKey
= NonFunctionKeys
| BooleanFunction
; declare type CallbackOrValue
= Interpolation
| ThemedCssFunction
;
/**
* Same as style from `styled-system` but wrapped with decorator, for custom things
*/
export declare function style(options: any): InterpolationFunction (prop: keyof P, defaultValue?: string | number) => (props: P) => any;
/**
* Gets prop value from props object by prop name and convert it to css units
*/
export declare const getUnitProp: (prop: any, defaultValue?: string) => (a1: P) => any;
/**
* Adds support for css prop to inject css interpolation extending the styles in this way.
*/
export declare const cssMixin: (cssProp?: string) => InterpolationFunction ;
export declare const colorGet: (objectPath: any, fallbackValue?: string) => InterpolationFunction (callback: InterpolationFunction ): InterpolationFunction ;
/**
* Helper function to generate interpolation function for getting variants out of variant function.
* Variant function should get theme and return object with keys of 'danger', 'info' etc. and styles for them
*/
export declare function variantsGet(getVariantFn: any): InterpolationFunction<{
variant?: string;
} & {
theme: DefaultTheme;
}>;
export declare function ifProp (propKeyOrCondFn: CallbackOrPropKey , ifValue: CallbackOrValue , elseValue: CallbackOrValue ): InterpolationFunction ;
export declare function ifProp (propKeyOrCondFn: CallbackOrPropKey ):