import { SvelteComponent } from "svelte";
export declare const BUTTON_SIZES: {
    readonly 'x-small': "x-small";
    readonly small: "small";
    readonly medium: "medium";
    readonly large: "large";
};
export declare const BUTTON_VARIANTS: {
    readonly primary: "primary";
    readonly secondary: "secondary";
    readonly tertiary: "tertiary";
    readonly clear: "clear";
    readonly error: "error";
    readonly warning: "warning";
};
export declare const BUTTON_TYPES: HTMLButtonAttributes['type'][];
export declare const BUTTON_SHAPES: {
    readonly rounded: "rounded";
    readonly 'rounded-full': "rounded-full";
    readonly none: "rounded-none";
};
export declare const BUTTON_DEFAULTS: {
    readonly size: "medium";
    readonly variant: "primary";
    readonly shape: "rounded";
    readonly type: "submit" | "reset" | "button" | null | undefined;
};
export declare const sizeClasses: {
    'x-small': string;
    small: string;
    medium: string;
    large: string;
};
export declare const shapeClasses: {
    rounded: string;
    'rounded-full': string;
    none: string;
};
export declare const colorClasses: {
    primary: string;
    secondary: string;
    tertiary: string;
    clear: string;
    error: string;
    warning: string;
};
export declare const colorOutlineClasses: {
    primary: string;
    secondary: string;
    tertiary: string;
    clear: string;
    error: string;
    warning: string;
};
export declare const BUTTON_GROUP_ITEM_SELECTED_CLASS = "\n    text-link-active hover:text-link-active active:text-link-active\n    bg-secondary-surface-weakest active:bg-secondary-surface-weakest hover:bg-secondary-surface-weakest dark:bg-secondary-surface-weakest\n    border-neutral-border-bright hover:border-neutral-border-bright active:border-neutral-border-bright\n    shadow-none\n  ";
export declare const BUTTON_GROUP_ITEM_DEFAULT_CLASS: string;
import type { HTMLButtonAttributes } from 'svelte/elements';
declare const __propDef: {
    props: {
        [x: string]: any;
        size?: (keyof typeof BUTTON_SIZES | string) | undefined;
        variant?: (keyof typeof BUTTON_VARIANTS | string) | undefined;
        shape?: (keyof typeof BUTTON_SHAPES | string) | undefined;
        disabled?: boolean | undefined;
        animation?: boolean | undefined;
        skeleton?: boolean | undefined;
        rtl?: boolean | undefined;
        outline?: boolean | undefined;
        tag?: "button" | "a" | "span" | undefined | undefined;
        href?: string | undefined;
        stretch?: boolean | undefined;
        type?: "submit" | "reset" | "button" | null | undefined;
    };
    events: {
        click: any;
        change: any;
        keydown: any;
        keyup: any;
        touchstart: any;
        touchend: any;
        touchcancel: any;
        mouseenter: any;
        mouseleave: any;
        focus: any;
        blur: any;
    } & {
        [evt: string]: CustomEvent<any>;
    };
    slots: {
        default: {};
    };
    exports?: undefined;
    bindings?: undefined;
};
export type ButtonProps = typeof __propDef.props;
export type ButtonEvents = typeof __propDef.events;
export type ButtonSlots = typeof __propDef.slots;
export default class Button extends SvelteComponent<ButtonProps, ButtonEvents, ButtonSlots> {
}
export {};
