export type ButtonActionVariant = "default" | "secondary" | "destructive" | "outline" | "ghost" | "link" | "success" | "warning" | "info";
export type ButtonActionSize = "sm" | "md" | "lg";
export interface ButtonActionProps {
    label?: string;
    variant?: ButtonActionVariant;
    size?: ButtonActionSize;
    /** Lucide icon name rendered before the label. */
    icon?: string;
    /** Navigation target — renders as an anchor when set and confirm is false. */
    href?: string;
    target?: "_self" | "_blank" | "_parent" | "_top";
    /** Custom event name emitted via `action` when clicked. */
    emit?: string;
    /** Show a confirmation dialog before firing. */
    confirm?: boolean;
    /** Confirmation message displayed in the dialog. */
    confirmMessage?: string;
    disabled?: boolean;
    /** Render full width. */
    block?: boolean;
    /** HTML name attribute. */
    name?: string;
    /** HTML id attribute. */
    id?: string;
}
declare const _default: import('vue').DefineComponent<ButtonActionProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
    action: (payload: {
        name: string;
    }) => any;
    click: (event: MouseEvent) => any;
}, string, import('vue').PublicProps, Readonly<ButtonActionProps> & Readonly<{
    onAction?: ((payload: {
        name: string;
    }) => any) | undefined;
    onClick?: ((event: MouseEvent) => any) | undefined;
}>, {
    variant: ButtonActionVariant;
    size: ButtonActionSize;
    target: "_self" | "_blank" | "_parent" | "_top";
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
export default _default;
//# sourceMappingURL=ButtonAction.vue.d.ts.map