UNPKG

react-uki

Version:
50 lines (49 loc) 3.41 kB
import { HTMLProps, ReactType } from 'react'; import { SpaceProps, ColorProps, FontSizeProps, FontFamilyProps, FontWeightProps, LineHeightProps, TextAlignProps, FontStyleProps, LetterSpacingProps, TextStyleProps, DisplayProps, WidthProps, HeightProps, MaxHeightProps, MinHeightProps, MaxWidthProps, MinWidthProps, BordersProps, AlignItemsProps, JustifyContentProps, FlexWrapProps, FlexDirectionProps, FlexProps, AlignSelfProps, OrderProps, GridGapProps, GridColumnGapProps, GridRowGapProps, GridColumnProps, GridRowProps, GridAutoFlowProps, GridAutoColumnsProps, GridAutoRowsProps, GridTemplateColumnsProps, GridTemplateRowsProps, GridTemplatesAreasProps, GridAreaProps, PositionProps, ZIndexProps, TopProps, LeftProps, RightProps, BottomProps, BackgroundProps, BackgroundImageProps, BackgroundSizeProps, BackgroundPositionProps, BackgroundRepeatProps, OpacityProps, OverflowProps, BoxShadowProps, VerticalAlignProps, ButtonStyleProps, ResponsiveValue, Theme } from 'styled-system'; import { CSSObject, BaseThemedCssFunction } from 'styled-components'; declare type Omit<T, K> = Pick<T, Exclude<keyof T, K>>; export interface VariantProps { variant?: ResponsiveValue<string>; } export interface BaseStyleProps extends SpaceProps, ColorProps, DisplayProps, WidthProps, HeightProps, MaxHeightProps, MinHeightProps, MaxWidthProps, MinWidthProps, BordersProps, FlexProps, OrderProps, AlignSelfProps, PositionProps, ZIndexProps, TopProps, RightProps, BottomProps, LeftProps, OverflowProps, BackgroundProps, BackgroundImageProps, BackgroundSizeProps, BackgroundPositionProps, BackgroundRepeatProps, FontSizeProps, FontStyleProps, TextStyleProps, OpacityProps, BoxShadowProps, LineHeightProps, VerticalAlignProps { as?: ReactType; css?: CSSObject | BaseThemedCssFunction<any> | string; } export interface BoxProps extends BaseStyleProps, Omit<HTMLProps<HTMLDivElement>, keyof BaseStyleProps> { } export interface FlexBoxProps extends BoxProps, FlexWrapProps, FlexDirectionProps, AlignItemsProps, JustifyContentProps { } export interface GridProps extends BoxProps, GridGapProps, GridColumnGapProps, GridRowGapProps, GridColumnProps, GridRowProps, GridAutoFlowProps, GridAutoColumnsProps, GridAutoRowsProps, GridTemplateColumnsProps, GridTemplateRowsProps, GridTemplatesAreasProps, GridAreaProps { } interface ButtonBaseProps extends FlexBoxProps, FontWeightProps, ButtonStyleProps { } export interface ButtonProps extends ButtonBaseProps, VariantProps, Omit<HTMLProps<HTMLDivElement>, keyof ButtonBaseProps> { } interface LinkBaseProps extends BoxProps { } export interface LinkProps extends LinkBaseProps, Omit<React.HTMLProps<HTMLAnchorElement>, keyof LinkBaseProps> { } interface TextBaseProps extends BaseStyleProps, FontFamilyProps, FontWeightProps, TextAlignProps, LetterSpacingProps { } export interface TextProps extends TextBaseProps, Omit<React.HTMLProps<HTMLDivElement>, keyof TextBaseProps> { } export interface HeadingProps extends TextProps, VariantProps { } interface ImageBaseProps extends BoxProps { } export interface ImageProps extends ImageBaseProps, Omit<React.HTMLProps<HTMLImageElement>, keyof ImageBaseProps> { } export interface ThemeProps { theme: { [key: string]: any; }; } export interface SvgProps extends BoxProps { viewBox?: string; } export interface DefaultTheme extends Theme { colors: { [key: string]: string[] | string; }; } export {};