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; export declare function themeGet(themeProp: keyof T, defaultValue?: string): InterpolationFunction; /** * Enables component to have fontSize prop that can have responsive scale styles as well as the direct override */ export declare const fontSize: InterpolationFunction; /** * Enables component to have space prop that can have responsive scale styles as well as the direct override */ export declare const space: InterpolationFunction; /** * Builds getter for a slice of the theme for convenience use like * colorGet(ColorFields.PRIMARY) instead of `themeGet(THEME_FIELDS.COLORS + '.' + ColorFields.PRIMARY)` */ export declare function getter({ key }: { key: any; }): (objectPath: any, fallbackValue?: string) => InterpolationFunction; /** * Gets prop value from props object by prop name. */ export declare const propGet:

(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; export declare const fontFamilyGet: (objectPath: any, fallbackValue?: string) => InterpolationFunction; export declare const fontSizeGet: (objectPath: any, fallbackValue?: string) => InterpolationFunction; export declare const shadowGet: (objectPath: any, fallbackValue?: string) => InterpolationFunction; export declare const paddingGet: (objectPath: any, fallbackValue?: string) => InterpolationFunction; /** * Mandatory to use for all theme related interpolations. * * Wraps styled-component interpolation function injecting default theme if styled-component has no ThemeProvider above * him. Enables all dependent on theme interpolations/components to be ThemeProvider agnostic so you can use components * without it. */ export declare function withTheme

(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

): (ifValue: CallbackOrValue, elseValue?: CallbackOrValue) => InterpolationFunction; export {};