import * as StyledSystem from 'styled-system'; import * as React from 'react'; import { LiteralUnion } from 'type-fest'; import * as CSS from 'csstype'; import { Omit } from '../common-types'; import typography, { TextStylesLiteral } from '../theme/typography'; import { SpacingProps } from '../theme/types'; import { shadows } from '../theme/theme'; export declare type FontSizeValues = 'xs' | 'sm' | 'base' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl' | '5xl' | '6xl'; export declare type FontWeightValues = keyof typeof typography.fontWeights; export interface FontSize { fontSize?: StyledSystem.ResponsiveValue | StyledSystem.FontSizeProps['fontSize']; } export interface FontWeight { fontWeight?: StyledSystem.ResponsiveValue | StyledSystem.FontWeightProps['fontWeight']; } export declare type LineHeightValues = keyof typeof typography.lineHeights; export interface LineHeight { lineHeight?: StyledSystem.ResponsiveValue | StyledSystem.LineHeightProps['lineHeight']; } export declare type LetterSpacingValues = keyof typeof typography.letterSpacings; export interface LetterSpacing { letterSpacing?: StyledSystem.ResponsiveValue | StyledSystem.LetterSpacingProps['letterSpacing']; } export interface TextAlign { textAlign?: StyledSystem.ResponsiveValue | StyledSystem.TextAlignProps['textAlign']; } export interface TextDecoration { textDecoration?: StyledSystem.ResponsiveValue> | CSS.TextDecorationProperty; } export interface TextTransform { textTransform?: StyledSystem.ResponsiveValue | CSS.TextTransformProperty; } export interface TextStyle { textStyle?: StyledSystem.ResponsiveValue>; } export declare type AsType = React.ElementType; export interface As { as?: AsType; } export interface WhiteSpace { whiteSpace?: StyledSystem.ResponsiveValue; } export declare type TypographyProps = Omit & WhiteSpace; export interface FlexDirectionShorthandProps { flexDir?: StyledSystem.FlexDirectionProps['flexDirection']; } export interface DisplayShorthandProps { d?: StyledSystem.DisplayProps['display']; } export declare type BoxShadow = LiteralUnion; export interface OtherProps { children?: React.ReactNode[] | React.ReactNode; cursor?: CSS.CursorProperty | StyledSystem.ResponsiveValue; transform?: CSS.TransformProperty | StyledSystem.ResponsiveValue; transition?: CSS.TransitionProperty | StyledSystem.ResponsiveValue; boxShadow?: BoxShadow | StyledSystem.ResponsiveValue; pointerEvents?: CSS.PointerEventsProperty | StyledSystem.ResponsiveValue; outline?: CSS.OutlineProperty | StyledSystem.ResponsiveValue>; } export declare type ShorthandProps = FlexDirectionShorthandProps & DisplayShorthandProps; export declare type StyledSystemProps = StyledSystem.LayoutProps & StyledSystem.ColorProps & StyledSystem.SpaceProps & StyledSystem.BordersProps & StyledSystem.BackgroundProps & StyledSystem.PositionProps & StyledSystem.FlexboxProps & StyledSystem.ShadowProps & StyledSystem.GridProps & StyledSystem.OpacityProps & StyledSystem.OverflowProps; export declare type ModifiedStyledSystemProps = TypographyProps & FontSize & LetterSpacing & TextAlign & TextStyle & FontWeight & LineHeight & TextDecoration & TextTransform & OtherProps; export declare type BoxHTMLProps = React.RefAttributes & React.HTMLAttributes; export declare type BoxPropsBase = StyledSystemProps & ModifiedStyledSystemProps & ShorthandProps & As & BoxHTMLProps & SpacingProps; export declare type Box = React.FC; export declare type PropsOf = React.ComponentPropsWithRef; declare type BoxSystemProps = Omit; export interface BoxProps extends BoxPropsBase { _after?: BoxSystemProps; _before?: BoxSystemProps; _focus?: BoxSystemProps; _hover?: BoxSystemProps; _active?: BoxSystemProps; _pressed?: BoxSystemProps; _selected?: BoxSystemProps; _focusWithin?: BoxSystemProps; _invalid?: BoxSystemProps; _disabled?: BoxSystemProps; _grabbed?: BoxSystemProps; _expanded?: BoxSystemProps; _checked?: BoxSystemProps; _mixed?: BoxSystemProps; _odd?: BoxSystemProps; _even?: BoxSystemProps; _visited?: BoxSystemProps; _readOnly?: BoxSystemProps; _first?: BoxSystemProps; _last?: BoxSystemProps; _groupHover?: BoxSystemProps; _notFirst?: BoxSystemProps; _notLast?: BoxSystemProps; _placeholder?: BoxSystemProps; } export {};