import { type ButtonHTMLAttributes } from 'react';
type Surface = 'admin' | 'kiosk' | 'customer' | 'pickup';
type SharedIntent = 'primary' | 'secondary' | 'ghost' | 'danger' | 'success';
type SharedSize = 'sm' | 'md' | 'lg' | 'xl';
export type ButtonProps = ButtonHTMLAttributes & {
readonly surface?: Surface;
readonly intent?: SharedIntent;
readonly size?: SharedSize;
readonly block?: boolean;
/** Shows spinner; preserves width via invisible label (no collapse). */
readonly loading?: boolean;
/**
* Square icon button. Requires `aria-label` for accessible name.
* No shared Tooltip primitive — uses native `title` (falls back to aria-label).
*/
readonly iconOnly?: boolean;
};
export declare const Button: import("react").ForwardRefExoticComponent & {
readonly surface?: Surface;
readonly intent?: SharedIntent;
readonly size?: SharedSize;
readonly block?: boolean;
/** Shows spinner; preserves width via invisible label (no collapse). */
readonly loading?: boolean;
/**
* Square icon button. Requires `aria-label` for accessible name.
* No shared Tooltip primitive — uses native `title` (falls back to aria-label).
*/
readonly iconOnly?: boolean;
} & import("react").RefAttributes>;
export {};
//# sourceMappingURL=Button.d.ts.map