import { CSSProperties } from './css-properties' import { Component } from './glamorous' import { Omit } from './helpers.d' /** * `glamorousComponentFactory` returns a ComponentClass * * @see {@link https://github.com/paypal/glamorous/blob/master/src/create-glamorous.js#L28-L131} */ export interface ExtraGlamorousProps { innerRef?: (instance: any) => void; className?: string; css?: CSSProperties; theme?: object; } export interface WithComponent { withComponent: ( component: string | Component ) => GlamorousComponent< ExternalProps, Props > } export interface WithProps { withProps: ( props: DefaultProps ) => GlamorousComponent< ExternalProps & Partial, Props > } export type GlamorousComponent = & React.ComponentClass & WithComponent & WithProps