import type { FieldDefinition, GroupFieldDefinition } from '../manifest/schema';
export type ButtonOptions = {
    variants?: {
        value: string;
        label: string;
    }[];
    defaultVariant?: string;
    includeSize?: boolean;
    defaultSize?: 'sm' | 'md' | 'lg' | 'xl';
    showGroupLabel?: boolean;
    groupId?: string;
    groupLabel?: string;
    flattenInRepeater?: boolean;
};
export declare const DEFAULT_THEME_BUTTON_VARIANTS: readonly [{
    readonly value: "primary";
    readonly label: "Primary";
}, {
    readonly value: "secondary";
    readonly label: "Secondary";
}, {
    readonly value: "outline";
    readonly label: "Outline";
}, {
    readonly value: "link";
    readonly label: "Link";
}];
export type ButtonVariantFieldOptions = {
    id?: string;
    label?: string;
    description?: string;
    defaultValue?: string;
    variants?: Array<{
        value: string;
        label: string;
    }>;
};
export declare function createButtonVariantField(options?: ButtonVariantFieldOptions): FieldDefinition;
export declare function createButtonGroup(options?: ButtonOptions): GroupFieldDefinition;
