import type { components } from '../generated/api.js';
import { WorkspaceScopedResource } from './base.js';
/**
 * Workspace-level settings — configure voice behavior, branding, security
 * policies, data retention, outreach rules, and more.
 *
 * Each sub-resource has `get()` and `update()`.
 */
export declare class SettingsResource extends WorkspaceScopedResource {
    readonly voice: {
        get: () => Promise<{
            correction_categories: string[];
            keyterms: string[];
            language: string;
            language_providers?: {
                [x: string]: {
                    config?: {
                        [x: string]: unknown;
                    } | undefined;
                    provider: "cartesia" | "elevenlabs" | "groq";
                };
            } | null | undefined;
            post_call_analysis_enabled: boolean;
            pronunciation_dict_id: string | null;
            sensitive_topics: string[];
            speed: number | null;
            tone: string | null;
            transcript_correction_enabled: boolean;
            tts_config: {
                [x: string]: unknown;
            } | null;
            tts_provider: ("cartesia" | "elevenlabs" | "groq") | null;
            voice_id: string | null;
            volume: number | null;
        } & import("../index.js").ResponseMetadata>;
        update: (body: components["schemas"]["VoiceSettingsRequest"]) => Promise<{
            correction_categories: string[];
            keyterms: string[];
            language: string;
            language_providers?: {
                [x: string]: {
                    config?: {
                        [x: string]: unknown;
                    } | undefined;
                    provider: "cartesia" | "elevenlabs" | "groq";
                };
            } | null | undefined;
            post_call_analysis_enabled: boolean;
            pronunciation_dict_id: string | null;
            sensitive_topics: string[];
            speed: number | null;
            tone: string | null;
            transcript_correction_enabled: boolean;
            tts_config: {
                [x: string]: unknown;
            } | null;
            tts_provider: ("cartesia" | "elevenlabs" | "groq") | null;
            voice_id: string | null;
            volume: number | null;
        } & import("../index.js").ResponseMetadata>;
    };
    readonly branding: {
        get: () => Promise<{
            branding: {
                background_color?: string | null | undefined;
                font_family?: string | null | undefined;
                logo_url?: string | null | undefined;
                primary_color?: string | null | undefined;
            };
        } & import("../index.js").ResponseMetadata>;
        update: (body: components["schemas"]["BrandingSettingsRequest"]) => Promise<{
            branding: {
                background_color?: string | null | undefined;
                font_family?: string | null | undefined;
                logo_url?: string | null | undefined;
                primary_color?: string | null | undefined;
            };
        } & import("../index.js").ResponseMetadata>;
    };
    readonly outreach: {
        get: () => Promise<{
            data_templates: {
                fields: {
                    field_type?: components["schemas"]["FieldType"] | undefined;
                    key: string;
                    label: components["schemas"]["NameString"];
                    path: string;
                    required?: boolean | undefined;
                    sensitive?: boolean | undefined;
                }[];
                id?: string | undefined;
                name: components["schemas"]["NameString"];
            }[];
            rules: {
                active?: boolean | undefined;
                channel?: components["schemas"]["ChannelType"] | undefined;
                consent_required?: boolean | undefined;
                data_template_id?: string | null | undefined;
                form_template_id?: string | null | undefined;
                id?: string | undefined;
                message_template?: string | undefined;
                name: components["schemas"]["NameString"];
                quiet_hours?: {
                    enabled?: boolean | undefined;
                    end_hour?: number | undefined;
                    start_hour?: number | undefined;
                    timezone?: string | undefined;
                } | undefined;
                review_required?: boolean | undefined;
                trigger?: "appointment_window" | "post_visit" | "gap_detected" | "form_intake" | "manual" | undefined;
                trigger_config?: {
                    [x: string]: unknown;
                } | undefined;
            }[];
        } & import("../index.js").ResponseMetadata>;
        update: (body: components["schemas"]["OutreachSettingsRequest"]) => Promise<{
            data_templates: {
                fields: {
                    field_type?: components["schemas"]["FieldType"] | undefined;
                    key: string;
                    label: components["schemas"]["NameString"];
                    path: string;
                    required?: boolean | undefined;
                    sensitive?: boolean | undefined;
                }[];
                id?: string | undefined;
                name: components["schemas"]["NameString"];
            }[];
            rules: {
                active?: boolean | undefined;
                channel?: components["schemas"]["ChannelType"] | undefined;
                consent_required?: boolean | undefined;
                data_template_id?: string | null | undefined;
                form_template_id?: string | null | undefined;
                id?: string | undefined;
                message_template?: string | undefined;
                name: components["schemas"]["NameString"];
                quiet_hours?: {
                    enabled?: boolean | undefined;
                    end_hour?: number | undefined;
                    start_hour?: number | undefined;
                    timezone?: string | undefined;
                } | undefined;
                review_required?: boolean | undefined;
                trigger?: "appointment_window" | "post_visit" | "gap_detected" | "form_intake" | "manual" | undefined;
                trigger_config?: {
                    [x: string]: unknown;
                } | undefined;
            }[];
        } & import("../index.js").ResponseMetadata>;
    };
    readonly memory: {
        get: () => Promise<{
            backfill_requested: boolean;
            dimensions: {
                active?: boolean | undefined;
                builtin?: boolean | undefined;
                description?: (components["schemas"]["DescriptionString"] | null) | undefined;
                event_types: string[];
                extract_paths?: string[] | undefined;
                extraction_mode?: "static" | "llm" | undefined;
                id?: string | undefined;
                key: string;
                name: components["schemas"]["NameString"];
                weight?: number | undefined;
            }[];
        } & import("../index.js").ResponseMetadata>;
        update: (body: components["schemas"]["MemorySettingsRequest"]) => Promise<{
            backfill_requested: boolean;
            dimensions: {
                active?: boolean | undefined;
                builtin?: boolean | undefined;
                description?: (components["schemas"]["DescriptionString"] | null) | undefined;
                event_types: string[];
                extract_paths?: string[] | undefined;
                extraction_mode?: "static" | "llm" | undefined;
                id?: string | undefined;
                key: string;
                name: components["schemas"]["NameString"];
                weight?: number | undefined;
            }[];
        } & import("../index.js").ResponseMetadata>;
    };
    readonly security: {
        get: () => Promise<{
            voice_auth_enabled?: boolean | undefined;
        } & import("../index.js").ResponseMetadata>;
        update: (body: components["schemas"]["SecuritySettingsRequest"]) => Promise<{
            voice_auth_enabled?: boolean | undefined;
        } & import("../index.js").ResponseMetadata>;
    };
    readonly retention: {
        get: () => Promise<{
            audit_log_days: number;
            call_recordings_days: number;
            call_transcripts_days: number;
            legal_hold: boolean;
            legal_hold_reason?: string | null | undefined;
            phi_data_days: number;
            world_events_days: number;
        } & import("../index.js").ResponseMetadata>;
        update: (body: components["schemas"]["RetentionPolicyRequest"]) => Promise<{
            audit_log_days: number;
            call_recordings_days: number;
            call_transcripts_days: number;
            legal_hold: boolean;
            legal_hold_reason?: string | null | undefined;
            phi_data_days: number;
            world_events_days: number;
        } & import("../index.js").ResponseMetadata>;
    };
    readonly behaviors: {
        get: () => Promise<{
            behaviors: {
                action?: {
                    add_tools?: string[] | undefined;
                    filler_override?: ("empathy" | "receipt" | "working" | "silent") | null | undefined;
                    instruction?: string | undefined;
                    remove_tools?: string[] | undefined;
                    turn_policy_overrides?: {
                        [x: string]: unknown;
                    } | undefined;
                } | undefined;
                cooldown_turns?: number | undefined;
                description?: components["schemas"]["DescriptionString"] | undefined;
                enabled?: boolean | undefined;
                name: components["schemas"]["NameString"];
                priority?: number | undefined;
                trigger?: {
                    emotion_tiers?: number[] | undefined;
                    intent_categories?: string[] | undefined;
                    keywords?: string[] | undefined;
                    states?: string[] | undefined;
                } | undefined;
            }[];
            enabled: boolean;
        } & import("../index.js").ResponseMetadata>;
        update: (body: components["schemas"]["BehaviorSettingsRequest"]) => Promise<{
            behaviors: {
                action?: {
                    add_tools?: string[] | undefined;
                    filler_override?: ("empathy" | "receipt" | "working" | "silent") | null | undefined;
                    instruction?: string | undefined;
                    remove_tools?: string[] | undefined;
                    turn_policy_overrides?: {
                        [x: string]: unknown;
                    } | undefined;
                } | undefined;
                cooldown_turns?: number | undefined;
                description?: components["schemas"]["DescriptionString"] | undefined;
                enabled?: boolean | undefined;
                name: components["schemas"]["NameString"];
                priority?: number | undefined;
                trigger?: {
                    emotion_tiers?: number[] | undefined;
                    intent_categories?: string[] | undefined;
                    keywords?: string[] | undefined;
                    states?: string[] | undefined;
                } | undefined;
            }[];
            enabled: boolean;
        } & import("../index.js").ResponseMetadata>;
    };
    readonly gapScanner: {
        get: () => Promise<{
            appointment_lookahead_hours: number;
            channel_optimization: boolean;
            cooldown_hours: number;
            enabled: boolean;
            max_pending_surfaces: number;
            max_surfaces_per_tick: number;
            min_completion_rate: number;
            requirements: {
                channel?: components["schemas"]["ChannelType"] | undefined;
                entity_type?: "person" | undefined;
                name: components["schemas"]["NameString"];
                priority?: "low" | "normal" | "high" | undefined;
                required_fields: {
                    field_type?: components["schemas"]["FieldType"] | undefined;
                    label: components["schemas"]["NameString"];
                    min_items?: number | null | undefined;
                    path: string;
                }[];
                surface_description?: (components["schemas"]["DescriptionString"] | null) | undefined;
                surface_title?: (components["schemas"]["NameString"] | null) | undefined;
                trigger?: "upcoming_appointment" | "recent_interaction" | undefined;
            }[];
            scan_interval_seconds: number;
        } & import("../index.js").ResponseMetadata>;
        update: (body: components["schemas"]["GapScannerSettingsRequest"]) => Promise<{
            appointment_lookahead_hours: number;
            channel_optimization: boolean;
            cooldown_hours: number;
            enabled: boolean;
            max_pending_surfaces: number;
            max_surfaces_per_tick: number;
            min_completion_rate: number;
            requirements: {
                channel?: components["schemas"]["ChannelType"] | undefined;
                entity_type?: "person" | undefined;
                name: components["schemas"]["NameString"];
                priority?: "low" | "normal" | "high" | undefined;
                required_fields: {
                    field_type?: components["schemas"]["FieldType"] | undefined;
                    label: components["schemas"]["NameString"];
                    min_items?: number | null | undefined;
                    path: string;
                }[];
                surface_description?: (components["schemas"]["DescriptionString"] | null) | undefined;
                surface_title?: (components["schemas"]["NameString"] | null) | undefined;
                trigger?: "upcoming_appointment" | "recent_interaction" | undefined;
            }[];
            scan_interval_seconds: number;
        } & import("../index.js").ResponseMetadata>;
    };
    readonly scribe: {
        get: () => Promise<{
            authorized_clinicians: {
                email: string;
                name?: string | null | undefined;
                role?: string | undefined;
            }[];
            cds?: {
                care_gap_surfacing?: boolean | undefined;
                documentation_completeness?: boolean | undefined;
                guideline_matching?: boolean | undefined;
                icd10_auto_suggest?: boolean | undefined;
            } | undefined;
            custom_instructions?: string | null | undefined;
            enabled: boolean;
            keyterms?: string[] | undefined;
            language?: string | undefined;
            post_encounter?: {
                auto_polish_note?: boolean | undefined;
                education_materials?: boolean | undefined;
                follow_up_surface?: boolean | undefined;
                order_preparation?: boolean | undefined;
            } | undefined;
            safety?: {
                allergy_cross_reference?: boolean | undefined;
                crisis_detection?: boolean | undefined;
                drug_interaction_checking?: boolean | undefined;
                vital_range_alerting?: boolean | undefined;
            } | undefined;
            soap_style?: "concise" | "detailed" | "structured" | undefined;
            specialty?: string | null | undefined;
            tools_enabled?: string[] | null | undefined;
            voice_auth_enabled?: boolean | undefined;
        } & import("../index.js").ResponseMetadata>;
        update: (body: components["schemas"]["ScribeSettingsRequest"]) => Promise<{
            authorized_clinicians: {
                email: string;
                name?: string | null | undefined;
                role?: string | undefined;
            }[];
            cds?: {
                care_gap_surfacing?: boolean | undefined;
                documentation_completeness?: boolean | undefined;
                guideline_matching?: boolean | undefined;
                icd10_auto_suggest?: boolean | undefined;
            } | undefined;
            custom_instructions?: string | null | undefined;
            enabled: boolean;
            keyterms?: string[] | undefined;
            language?: string | undefined;
            post_encounter?: {
                auto_polish_note?: boolean | undefined;
                education_materials?: boolean | undefined;
                follow_up_surface?: boolean | undefined;
                order_preparation?: boolean | undefined;
            } | undefined;
            safety?: {
                allergy_cross_reference?: boolean | undefined;
                crisis_detection?: boolean | undefined;
                drug_interaction_checking?: boolean | undefined;
                vital_range_alerting?: boolean | undefined;
            } | undefined;
            soap_style?: "concise" | "detailed" | "structured" | undefined;
            specialty?: string | null | undefined;
            tools_enabled?: string[] | null | undefined;
            voice_auth_enabled?: boolean | undefined;
        } & import("../index.js").ResponseMetadata>;
    };
    readonly metrics: {
        get: () => Promise<{
            definitions: {
                active?: boolean | undefined;
                aggregation?: "count" | "sum" | "avg" | "min" | "max" | "count_distinct" | "ratio" | "rate" | undefined;
                ai_labels?: string[] | null | undefined;
                ai_query_endpoint?: string | null | undefined;
                ai_query_prompt?: string | null | undefined;
                ai_schema?: {
                    [x: string]: unknown;
                } | null | undefined;
                applies_to_product_types?: string[] | null | undefined;
                builtin?: boolean | undefined;
                categories?: string[] | null | undefined;
                channel_scope?: "all" | "voice" | "text" | "surface" | "inbound" | "outbound" | undefined;
                description?: (components["schemas"]["DescriptionString"] | null) | undefined;
                event_types: string[];
                extract_path?: string | null | undefined;
                extraction_mode?: "static" | "ai_classify" | "ai_extract" | "ai_sentiment" | "ai_query" | "sql_expr" | undefined;
                freshness_sla_minutes?: number | undefined;
                granularity?: "aggregate" | "per_entity" | undefined;
                id?: string | undefined;
                key: string;
                latency_tier?: "streaming" | "near_realtime" | "batch" | undefined;
                metric_type: "numerical" | "categorical" | "boolean";
                model_tier?: "free" | "fast" | "balanced" | "max" | "custom" | undefined;
                name: components["schemas"]["NameString"];
                period_granularity?: "hourly" | "daily" | undefined;
                prompt?: string | null | undefined;
                ratio_denominator_event?: string | null | undefined;
                ratio_numerator_event?: string | null | undefined;
                source: "call_intelligence" | "world_events" | "surface_events" | "emotion_events" | "connector_events" | "zerobus_events" | "voice_judge_results";
                source_filter?: string | null | undefined;
                sql_expression?: string | null | undefined;
                unit?: string | null | undefined;
                valid_range_max?: number | null | undefined;
                valid_range_min?: number | null | undefined;
            }[];
        } & import("../index.js").ResponseMetadata>;
        update: (body: components["schemas"]["MetricSettingsRequest"]) => Promise<{
            definitions: {
                active?: boolean | undefined;
                aggregation?: "count" | "sum" | "avg" | "min" | "max" | "count_distinct" | "ratio" | "rate" | undefined;
                ai_labels?: string[] | null | undefined;
                ai_query_endpoint?: string | null | undefined;
                ai_query_prompt?: string | null | undefined;
                ai_schema?: {
                    [x: string]: unknown;
                } | null | undefined;
                applies_to_product_types?: string[] | null | undefined;
                builtin?: boolean | undefined;
                categories?: string[] | null | undefined;
                channel_scope?: "all" | "voice" | "text" | "surface" | "inbound" | "outbound" | undefined;
                description?: (components["schemas"]["DescriptionString"] | null) | undefined;
                event_types: string[];
                extract_path?: string | null | undefined;
                extraction_mode?: "static" | "ai_classify" | "ai_extract" | "ai_sentiment" | "ai_query" | "sql_expr" | undefined;
                freshness_sla_minutes?: number | undefined;
                granularity?: "aggregate" | "per_entity" | undefined;
                id?: string | undefined;
                key: string;
                latency_tier?: "streaming" | "near_realtime" | "batch" | undefined;
                metric_type: "numerical" | "categorical" | "boolean";
                model_tier?: "free" | "fast" | "balanced" | "max" | "custom" | undefined;
                name: components["schemas"]["NameString"];
                period_granularity?: "hourly" | "daily" | undefined;
                prompt?: string | null | undefined;
                ratio_denominator_event?: string | null | undefined;
                ratio_numerator_event?: string | null | undefined;
                source: "call_intelligence" | "world_events" | "surface_events" | "emotion_events" | "connector_events" | "zerobus_events" | "voice_judge_results";
                source_filter?: string | null | undefined;
                sql_expression?: string | null | undefined;
                unit?: string | null | undefined;
                valid_range_max?: number | null | undefined;
                valid_range_min?: number | null | undefined;
            }[];
        } & import("../index.js").ResponseMetadata>;
    };
    readonly environments: {
        get: () => Promise<{
            environments?: {
                [x: string]: {
                    data_source_id?: string | null | undefined;
                    data_source_overrides?: {
                        [x: string]: unknown;
                    } | undefined;
                    tool_overrides?: {
                        [x: string]: unknown;
                    } | undefined;
                };
            } | undefined;
        } & import("../index.js").ResponseMetadata>;
        update: (body: components["schemas"]["EnvironmentSettingsRequest"]) => Promise<{
            environments?: {
                [x: string]: {
                    data_source_id?: string | null | undefined;
                    data_source_overrides?: {
                        [x: string]: unknown;
                    } | undefined;
                    tool_overrides?: {
                        [x: string]: unknown;
                    } | undefined;
                };
            } | undefined;
        } & import("../index.js").ResponseMetadata>;
    };
    readonly workflows: {
        get: () => Promise<{
            workflows?: {
                description?: string | undefined;
                enabled?: boolean | undefined;
                id?: string | undefined;
                input_query?: string | null | undefined;
                max_concurrent?: number | undefined;
                name: string;
                steps: {
                    body_steps?: /*elided*/ any[] | null | undefined;
                    condition?: string | null | undefined;
                    endpoint?: string | null | undefined;
                    integration?: string | null | undefined;
                    items_from?: string | null | undefined;
                    name: string;
                    on_false?: string | null | undefined;
                    on_true?: string | null | undefined;
                    request_body?: {
                        [x: string]: unknown;
                    } | undefined;
                    retry_backoff_seconds?: number | undefined;
                    retry_count?: number | undefined;
                    surface_spec?: {
                        [x: string]: unknown;
                    } | null | undefined;
                    tool_name?: string | null | undefined;
                    tool_params?: {
                        [x: string]: unknown;
                    } | undefined;
                    type: "tool_call" | "integration_call" | "wait" | "branch" | "for_each" | "surface";
                    wait_duration?: string | null | undefined;
                    wait_for_event?: string | null | undefined;
                }[];
                timeout?: string | undefined;
                trigger: {
                    cron_expression?: string | null | undefined;
                    event_filter?: {
                        [x: string]: unknown;
                    } | null | undefined;
                    type: "cron" | "event" | "manual";
                };
            }[] | undefined;
        } & import("../index.js").ResponseMetadata>;
        update: (body: components["schemas"]["WorkflowSettingsRequest"]) => Promise<{
            workflows?: {
                description?: string | undefined;
                enabled?: boolean | undefined;
                id?: string | undefined;
                input_query?: string | null | undefined;
                max_concurrent?: number | undefined;
                name: string;
                steps: {
                    body_steps?: /*elided*/ any[] | null | undefined;
                    condition?: string | null | undefined;
                    endpoint?: string | null | undefined;
                    integration?: string | null | undefined;
                    items_from?: string | null | undefined;
                    name: string;
                    on_false?: string | null | undefined;
                    on_true?: string | null | undefined;
                    request_body?: {
                        [x: string]: unknown;
                    } | undefined;
                    retry_backoff_seconds?: number | undefined;
                    retry_count?: number | undefined;
                    surface_spec?: {
                        [x: string]: unknown;
                    } | null | undefined;
                    tool_name?: string | null | undefined;
                    tool_params?: {
                        [x: string]: unknown;
                    } | undefined;
                    type: "tool_call" | "integration_call" | "wait" | "branch" | "for_each" | "surface";
                    wait_duration?: string | null | undefined;
                    wait_for_event?: string | null | undefined;
                }[];
                timeout?: string | undefined;
                trigger: {
                    cron_expression?: string | null | undefined;
                    event_filter?: {
                        [x: string]: unknown;
                    } | null | undefined;
                    type: "cron" | "event" | "manual";
                };
            }[] | undefined;
        } & import("../index.js").ResponseMetadata>;
    };
}
//# sourceMappingURL=settings.d.ts.map