import { ButtonActionSize, ButtonActionVariant } from './ButtonAction.vue';
export interface ButtonGroupItem {
    id?: string;
    label: string;
    /** Lucide icon name rendered before the label. */
    icon?: string;
    /** Navigation target — renders as an anchor when set. */
    href?: string;
    target?: "_self" | "_blank" | "_parent" | "_top";
    /** Visual variant; falls back to the group's variant prop. */
    variant?: ButtonActionVariant;
    /** Custom event name emitted via `action` when clicked. */
    emit?: string;
    disabled?: boolean;
}
export interface ButtonGroupActionProps {
    items?: ButtonGroupItem[];
    /** Default variant applied to items that don't specify one. */
    variant?: ButtonActionVariant;
    size?: ButtonActionSize;
    /** Render the group stretched (each child becomes flex-1). */
    block?: boolean;
    /** Group HTML id. */
    id?: string;
    /** Group name (used as `data-element-name`). */
    name?: string;
}
declare const _default: import('vue').DefineComponent<ButtonGroupActionProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
    action: (payload: {
        name: string;
        item: ButtonGroupItem;
    }) => any;
    click: (event: MouseEvent, item: ButtonGroupItem) => any;
}, string, import('vue').PublicProps, Readonly<ButtonGroupActionProps> & Readonly<{
    onAction?: ((payload: {
        name: string;
        item: ButtonGroupItem;
    }) => any) | undefined;
    onClick?: ((event: MouseEvent, item: ButtonGroupItem) => any) | undefined;
}>, {
    variant: ButtonActionVariant;
    size: ButtonActionSize;
    items: ButtonGroupItem[];
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
export default _default;
//# sourceMappingURL=ButtonGroupAction.vue.d.ts.map