import { MessageSource, SdkCommand, WidgetCommand } from '../shared/messages'; /** Messenger look & feel — supplied by API config */ export interface WidgetAppearanceConfig { theme_mode?: 'dark' | 'light'; accent_color?: string; messenger_background?: string; messenger_text?: string; messenger_text_secondary?: string; bubble_agent_background?: string; bubble_user_background?: string; bubble_user_text?: string; composer_border?: string; composer_background?: string; composer_placeholder?: string; privacy_policy_url?: string; privacy_policy_label?: string; } export interface DuochatConfig { /** Primary app identifier (preferred). Alias: widget_id */ app_id?: string; /** Legacy alias for app_id — kept for backward compatibility */ widget_id: string; name?: string; email?: string; phone?: string; user_id?: string; custom_attributes?: Record; alignment?: 'left' | 'right'; horizontal_padding?: number; vertical_padding?: number; background_color?: string; appearance?: WidgetAppearanceConfig; /** Populated from API config after session init */ brand_name?: string; start_conversation_teammates?: string; launcher_logo_url?: string | null; show_launcher?: boolean; launch_directly?: boolean; panel_open?: boolean; collect_visitor_email?: boolean; sound_enabled?: boolean; } /** Minimal bootstrap params passed via iframe URL (no PII). */ export interface WidgetBootstrapParams { widget_id: string; parent_origin: string; alignment?: 'left' | 'right'; horizontal_padding?: number; vertical_padding?: number; background_color?: string; is_mobile?: boolean; } /** Payload sent from widget → SDK after API config is loaded */ export interface ConfigSyncPayload extends Partial { show_launcher?: boolean; launch_directly?: boolean; panel_open?: boolean; } export type DuochatCommand = SdkCommand; export interface PostMessagePayload { source: MessageSource; command: SdkCommand | WidgetCommand; data?: Partial | ConfigSyncPayload; } declare global { const __DUOCHAT_WIDGET_BASE_URL__: string | undefined; const __DUOCHAT_DEV__: boolean | undefined; } export {}; //# sourceMappingURL=types.d.ts.map