/** * Branding Resolution * * Resolves branding config with defaults and generates CSS variables. * * @module @kya-os/consent/resolution/resolve-branding */ import type { ConsentBranding, ResolvedConsentBranding, ConsentCSSVars } from "../types/branding.types.js"; /** * Validate hex color format * * @param color - Color string to validate * @returns True if valid hex color */ export declare function isValidHexColor(color: string | undefined): color is string; /** * Sanitize a color value, returning default if invalid * * @param color - Color to sanitize * @param defaultColor - Default if invalid * @returns Valid hex color */ export declare function sanitizeColor(color: string | undefined, defaultColor: string): string; /** * Validate URL format * * @param url - URL string to validate * @returns True if valid http/https URL */ export declare function isValidUrl(url: string | undefined): url is string; /** * Sanitize a URL value, returning undefined if invalid * * @param url - URL to sanitize * @returns Valid URL or undefined */ export declare function sanitizeUrl(url: string | undefined): string | undefined; /** * Generate CSS variables from branding * * @param branding - Resolved branding config * @returns CSS variable object */ export declare function generateBrandingCSSVars(branding: { primaryColor: string; secondaryColor: string; }): ConsentCSSVars; /** * Resolve branding config with defaults and validation * * @param branding - Partial branding config * @returns Fully resolved branding with CSS variables */ export declare function resolveConsentBranding(branding?: ConsentBranding): ResolvedConsentBranding; /** * Check if branding has custom values (non-default) * * @param branding - Branding config * @returns True if any custom values are set */ export declare function hasCustomBranding(branding?: ConsentBranding): boolean; /** * Merge branding configs (later values override earlier) * * @param base - Base branding config * @param override - Override values * @returns Merged branding */ export declare function mergeBranding(base: ConsentBranding, override?: ConsentBranding): ConsentBranding; //# sourceMappingURL=resolve-branding.d.ts.map