import { Style } from '@glitz/core'; import { FunctionComponent, Component, ComponentState, ComponentClass, ClassType, ComponentType } from 'react'; import { StyledElementLike } from './apply-class-name'; import { StyledComponent, StyledComponentWithRef } from './create'; import { StyledDecorator } from './decorator'; import { WithoutCompose, StyledForwardStyle } from './forward-style'; import { StyledElementProps } from './predefined'; export declare type Styles = Style | readonly Style[] | StyledDecorator | false | undefined; export interface Styled { (component: FunctionComponent, ...styles: Styles[]): StyledComponent; (component: StyledComponent, ...styles: Styles[]): StyledComponent; (component: StyledForwardStyle>, ...styles: Styles[]): StyledComponent>; >(component: StyledForwardStyle>>, ...styles: Styles[]): StyledComponent>; (component: StyledElementLike>, ...styles: Styles[]): StyledComponent; >(component: StyledElementLike>>, ...styles: Styles[]): StyledComponentWithRef; >(component: ClassType>, ...styles: Styles[]): StyledComponentWithRef; (...styles: Styles[]): StyledDecorator; (): StyledDecorator; (component: StyledElementLike> | ComponentType, ...styles: Styles[]): StyledComponent; (style: Styles): StyledDecorator; } export declare const createStyled: Styled;