import { type MouseEvent } from 'react'; import React from 'react'; import type { Emphasis, Appearance, ShirtSize } from './types/common.js'; export interface ButtonProps extends React.ComponentPropsWithoutRef<'button'> { /** * If used in a form or as a regular button */ type?: 'button' | 'submit'; /** * The display variant of the button */ emphasis?: Emphasis; /** * The display appearance of the button */ appearance?: Appearance; /** * Callback for when the button is clicked */ onClick?: (e: MouseEvent) => void; /** * Size variant of the button */ size?: ShirtSize; /** * If set, the button will be rendered as an anchor tag with the provided href */ href?: string; /** * If set, the button will be disabled */ disabled?: boolean; /** * If set, the button will display a loading spinner */ loading?: boolean; /** * A unique ID to pass to the button */ id?: string; /** * An icon to display to the left of the button text */ icon?: React.ReactNode; /** * If set, the button will be rendered as a dropdown */ asDropdown?: boolean; /** * If set, the button will be rendered as a full width element */ fullWidth?: boolean; /** * If set, the button will be rendered as the element provided */ as?: React.ElementType; children?: React.ReactNode; } export declare const Button: React.ForwardRefExoticComponent>; //# sourceMappingURL=Button.d.ts.map