import { Style } from '@glitz/core'; import { ClassType, Component, ComponentClass, ComponentState, ComponentType, FunctionComponent } from 'react'; import { FORWARD_STYLE_TYPE, SECRET_GLITZ_PROPERTY } from './constants'; import { Styles } from './custom'; import { StyledType } from './predefined'; export declare type ForwardStyleProps = { compose(style?: Styles): readonly Style[]; }; export declare type WithoutCompose = TProps extends ForwardStyleProps ? Omit : TProps; export interface StyledForwardStyle extends StyledType { [SECRET_GLITZ_PROPERTY]: typeof FORWARD_STYLE_TYPE; value: TComponent; } export declare function forwardStyle(component: FunctionComponent): StyledForwardStyle>; export declare function forwardStyle>(component: ClassType, TComponent>): StyledForwardStyle; export declare function isForwardStyleType(type: any): type is StyledForwardStyle>;