/**
 * AuthHero Widget - Branding Utilities
 *
 * Converts AuthHero branding and theme configurations to CSS custom properties.
 */
/**
 * Branding configuration from AuthHero API (simplified for widget)
 */
export interface WidgetBranding {
    colors?: {
        primary?: string;
        page_background?: {
            type?: string;
            start?: string;
            end?: string;
            angle_deg?: number;
        };
    };
    logo_url?: string;
    favicon_url?: string;
    powered_by_logo_url?: string;
    font?: {
        url?: string;
    };
}
/**
 * Theme configuration from AuthHero API
 */
export interface WidgetTheme {
    borders?: {
        button_border_radius?: number;
        button_border_weight?: number;
        buttons_style?: "pill" | "rounded" | "sharp";
        input_border_radius?: number;
        input_border_weight?: number;
        inputs_style?: "pill" | "rounded" | "sharp";
        show_widget_shadow?: boolean;
        widget_border_weight?: number;
        widget_corner_radius?: number;
    };
    colors?: {
        base_focus_color?: string;
        base_hover_color?: string;
        body_text?: string;
        captcha_widget_theme?: "auto" | "dark" | "light";
        error?: string;
        header?: string;
        icons?: string;
        input_background?: string;
        input_border?: string;
        input_filled_text?: string;
        input_labels_placeholders?: string;
        links_focused_components?: string;
        primary_button?: string;
        primary_button_label?: string;
        secondary_button_border?: string;
        secondary_button_label?: string;
        success?: string;
        widget_background?: string;
        widget_border?: string;
    };
    fonts?: {
        body_text?: {
            bold?: boolean;
            size?: number;
        };
        buttons_text?: {
            bold?: boolean;
            size?: number;
        };
        font_url?: string;
        input_labels?: {
            bold?: boolean;
            size?: number;
        };
        links?: {
            bold?: boolean;
            size?: number;
        };
        links_style?: "normal" | "underlined";
        reference_text_size?: number;
        subtitle?: {
            bold?: boolean;
            size?: number;
        };
        title?: {
            bold?: boolean;
            size?: number;
        };
    };
    page_background?: {
        background_color?: string;
        background_image_url?: string;
        page_layout?: "center" | "left" | "right";
    };
    widget?: {
        header_text_alignment?: "center" | "left" | "right";
        logo_height?: number;
        logo_position?: "center" | "left" | "none" | "right";
        logo_url?: string;
        social_buttons_layout?: "bottom" | "top";
    };
}
/**
 * Convert branding configuration to CSS custom properties
 */
export declare function brandingToCssVars(branding?: WidgetBranding): Record<string, string>;
/**
 * Convert theme configuration to CSS custom properties
 */
export declare function themeToCssVars(theme?: WidgetTheme): Record<string, string>;
/**
 * Merge branding and theme into a single CSS variables object
 */
export declare function mergeThemeVars(branding?: WidgetBranding, theme?: WidgetTheme): Record<string, string>;
/**
 * Apply CSS variables to an element's style
 */
export declare function applyCssVars(element: HTMLElement, vars: Record<string, string>): void;
