import { AllHTMLAttributes, CSSProperties } from 'react'; import { Styles } from './styles/types'; import { BASE_STYLES, BLOCK_STYLES, COLOR_STYLES, CONTAINER_STYLES, DIMENSION_STYLES, FLOW_STYLES, OUTER_STYLES, POSITION_STYLES, TEXT_STYLES } from './styles/list'; export interface GlobalStyledProps { breakpoints?: number[]; } declare type Caps = 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G' | 'H' | 'I' | 'J' | 'K' | 'L' | 'M' | 'N' | 'O' | 'P' | 'Q' | 'R' | 'S' | 'T' | 'U' | 'V' | 'W' | 'X' | 'Y' | 'Z'; export interface BasePropsWithoutChildren extends Pick, 'className' | 'role' | 'id'> { /** QA ID for e2e testing. An alias for `data-qa` attribute. */ qa?: string; /** QA value for e2e testing. An alias for `data-qaval` attribute. */ qaVal?: string | number; /** Inner element name */ element?: `${Caps}${string}`; /** The style map */ styles?: Styles; /** The list of responsive points in pixels */ breakpoints?: number[]; /** Whether the element has the block layout outside */ block?: boolean; /** Whether the element has the inline layout outside */ inline?: boolean; /** The list of element modifiers **/ mods?: { [key: string]: boolean | undefined | null; }; /** Whether the element is hidden (`hidden` attribute is set) */ isHidden?: boolean; /** Whether the element is disabled (`disabled` attribute is set) */ isDisabled?: boolean; /** Plain css for the element */ css?: string; /** The element name for using in style overriding */ styleName?: string; /** The CSS style map */ style?: CSSProperties | (CSSProperties & { [key: string]: string | number | null; }); /** User-defined theme for the element. Mapped to data-theme attribute. Use `default`, or `danger`, or any custom string value you need. */ theme?: 'default' | 'danger' | 'special' | (string & {}); } export interface BaseProps extends BasePropsWithoutChildren, Pick, 'children'> { } export interface AllBaseProps extends BaseProps, Omit, 'style' | 'size' | 'disabled' | 'hidden' | 'css' | 'color' | 'height' | 'width'> { as?: string; } export declare type BaseStyleProps = Pick; export declare type PositionStyleProps = Pick; export declare type BlockStyleProps = Pick; export declare type ColorStyleProps = Pick; export declare type TextStyleProps = Pick; export declare type DimensionStyleProps = Pick; export declare type FlowStyleProps = Pick; export declare type ContainerStyleProps = Pick; export declare type OuterStyleProps = Pick; export declare type ShortGridStyles = { template?: Styles['gridTemplate']; columns?: Styles['gridColumns']; rows?: Styles['gridRows']; areas?: Styles['gridAreas']; }; export interface Props { [key: string]: any; } export declare type TagName = keyof HTMLElementTagNameMap; export interface TagNameProps { /** The tag name you want to use for the element */ as?: TagName; } export {};