import { Emphasis, Scale, Variant } from '../../variations';
export declare const BUTTON_SCALES: readonly ["xs", "sm", "md", "lg", "xl"];
export type ButtonScale = Extract<Scale, (typeof BUTTON_SCALES)[number]>;
export declare const BUTTON_VARIANTS: readonly ["primary", "secondary", "inverse", "destructive", "ai"];
export type ButtonVariant = Extract<Variant | 'destructive', (typeof BUTTON_VARIANTS)[number]>;
export declare const BUTTON_EMPHASIS: readonly ["bold", "subtle", "minimal"];
export type ButtonEmphasis = Extract<Emphasis, (typeof BUTTON_EMPHASIS)[number]>;
export type ButtonProperties = {
    /**
     * The button emphasis
     */
    emphasis?: ButtonEmphasis;
    /**
     * The button variant
     */
    variant?: ButtonVariant;
    /**
     * The button size
     */
    scale?: ButtonScale;
    /**
     * The button icon name
     */
    icon?: string;
    /**
     * Whether button is loading or not
     */
    isLoading?: boolean;
};
