import type { WithNormalizedProps } from "../../global";
static declare const validSizes: readonly ["large", "small"];
export interface Input extends WithNormalizedProps<ButtonInput> {
}
export interface ButtonEvent<T extends Event> {
    originalEvent: T;
}
export interface ButtonInput extends Omit<Marko.HTML.Button, `on${string}` | "type">, Omit<Marko.HTML.A, `on${string}`> {
    href?: string;
    size?: (typeof validSizes)[number];
    priority?: "primary" | "secondary" | "tertiary" | "none";
    variant?: "standard" | "destructive" | "form";
    "body-state"?: "loading" | "expand" | "reset" | "none";
    fluid?: boolean;
    borderless?: boolean;
    disabled?: boolean;
    partiallyDisabled?: boolean;
    transparent?: boolean;
    fixedHeight?: boolean;
    truncate?: boolean;
    split?: string;
    "a11y-text"?: Marko.HTMLAttributes["aria-label"];
    "aria-label"?: Marko.HTMLAttributes["aria-label"];
    "on-click"?: (event: ButtonEvent<MouseEvent>) => void;
    "on-escape"?: (event: ButtonEvent<KeyboardEvent>) => void;
    "on-focus"?: (event: ButtonEvent<FocusEvent>) => void;
    "on-blur"?: (event: ButtonEvent<FocusEvent>) => void;
}
export interface Component extends Marko._.ResolveComponent<typeof import("./component-browser")> {
}
