export declare const VARIANT: { readonly PRIMARY: "primary"; readonly PRIMARY_NEGATIVE: "primary-negative"; readonly SECONDARY: "secondary"; readonly SECONDARY_NEGATIVE: "secondary-negative"; readonly EXPRESSIVE: "expressive"; readonly EXPRESSIVE_NEGATIVE: "expressive-negative"; }; export declare const variants: ("primary" | "secondary" | "expressive" | "primary-negative" | "secondary-negative" | "expressive-negative")[]; export type Variant = (typeof VARIANT)[keyof typeof VARIANT]; export declare const SIZE: { readonly SM: "sm"; readonly MD: "md"; readonly LG: "lg"; }; export declare const sizes: ("sm" | "md" | "lg")[]; export type Size = (typeof SIZE)[keyof typeof SIZE]; type DefaultProps = { children?: React.ReactNode; className?: string; fullWidth?: boolean; size?: Size; variant: TVariant | Variant; } & T; export type UnionParams = DefaultProps | DefaultProps; type UnionKeys = T extends T ? keyof T : never; type StrictUnionHelper = T extends any ? T & Partial, keyof T>, never>> : never; type StrictUnion = StrictUnionHelper; export type ActionProps = StrictUnion>; export {};