import { z } from 'zod'; export declare const HttpProviderConfigSchema: z.ZodObject<{ type: z.ZodDefault>; api_key: z.ZodOptional; base_url: z.ZodString; models: z.ZodArray; default_model: z.ZodString; nickname: z.ZodString; temperature: z.ZodOptional; system_prompt: z.ZodOptional; timeout: z.ZodOptional; max_retries: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "http"; base_url: string; models: string[]; default_model: string; nickname: string; api_key?: string | undefined; temperature?: number | undefined; system_prompt?: string | undefined; timeout?: number | undefined; max_retries?: number | undefined; }, { base_url: string; models: string[]; default_model: string; nickname: string; type?: "http" | undefined; api_key?: string | undefined; temperature?: number | undefined; system_prompt?: string | undefined; timeout?: number | undefined; max_retries?: number | undefined; }>; export declare const CLIProviderConfigSchema: z.ZodObject<{ type: z.ZodLiteral<"cli">; cli_type: z.ZodEnum<["claude", "codex", "gemini", "grok", "aider", "custom"]>; cli_command: z.ZodOptional; prompt_delivery: z.ZodOptional>; prompt_flag: z.ZodOptional; output_format: z.ZodOptional>; response_json_path: z.ZodOptional; usage_json_path: z.ZodOptional; cli_args: z.ZodOptional>; process_timeout: z.ZodOptional; working_directory: z.ZodOptional; env_vars: z.ZodOptional>; nickname: z.ZodString; default_model: z.ZodOptional; models: z.ZodOptional>; system_prompt: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "cli"; nickname: string; cli_type: "custom" | "claude" | "codex" | "gemini" | "grok" | "aider"; models?: string[] | undefined; default_model?: string | undefined; system_prompt?: string | undefined; cli_command?: string | undefined; prompt_delivery?: "flag" | "positional" | "stdin" | undefined; prompt_flag?: string | undefined; output_format?: "text" | "json" | "jsonl" | undefined; response_json_path?: string | undefined; usage_json_path?: string | undefined; cli_args?: string[] | undefined; process_timeout?: number | undefined; working_directory?: string | undefined; env_vars?: Record | undefined; }, { type: "cli"; nickname: string; cli_type: "custom" | "claude" | "codex" | "gemini" | "grok" | "aider"; models?: string[] | undefined; default_model?: string | undefined; system_prompt?: string | undefined; cli_command?: string | undefined; prompt_delivery?: "flag" | "positional" | "stdin" | undefined; prompt_flag?: string | undefined; output_format?: "text" | "json" | "jsonl" | undefined; response_json_path?: string | undefined; usage_json_path?: string | undefined; cli_args?: string[] | undefined; process_timeout?: number | undefined; working_directory?: string | undefined; env_vars?: Record | undefined; }>; export declare const ProviderConfigSchema: z.ZodEffects>; api_key: z.ZodOptional; base_url: z.ZodString; models: z.ZodArray; default_model: z.ZodString; nickname: z.ZodString; temperature: z.ZodOptional; system_prompt: z.ZodOptional; timeout: z.ZodOptional; max_retries: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "http"; base_url: string; models: string[]; default_model: string; nickname: string; api_key?: string | undefined; temperature?: number | undefined; system_prompt?: string | undefined; timeout?: number | undefined; max_retries?: number | undefined; }, { base_url: string; models: string[]; default_model: string; nickname: string; type?: "http" | undefined; api_key?: string | undefined; temperature?: number | undefined; system_prompt?: string | undefined; timeout?: number | undefined; max_retries?: number | undefined; }>, z.ZodObject<{ type: z.ZodLiteral<"cli">; cli_type: z.ZodEnum<["claude", "codex", "gemini", "grok", "aider", "custom"]>; cli_command: z.ZodOptional; prompt_delivery: z.ZodOptional>; prompt_flag: z.ZodOptional; output_format: z.ZodOptional>; response_json_path: z.ZodOptional; usage_json_path: z.ZodOptional; cli_args: z.ZodOptional>; process_timeout: z.ZodOptional; working_directory: z.ZodOptional; env_vars: z.ZodOptional>; nickname: z.ZodString; default_model: z.ZodOptional; models: z.ZodOptional>; system_prompt: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "cli"; nickname: string; cli_type: "custom" | "claude" | "codex" | "gemini" | "grok" | "aider"; models?: string[] | undefined; default_model?: string | undefined; system_prompt?: string | undefined; cli_command?: string | undefined; prompt_delivery?: "flag" | "positional" | "stdin" | undefined; prompt_flag?: string | undefined; output_format?: "text" | "json" | "jsonl" | undefined; response_json_path?: string | undefined; usage_json_path?: string | undefined; cli_args?: string[] | undefined; process_timeout?: number | undefined; working_directory?: string | undefined; env_vars?: Record | undefined; }, { type: "cli"; nickname: string; cli_type: "custom" | "claude" | "codex" | "gemini" | "grok" | "aider"; models?: string[] | undefined; default_model?: string | undefined; system_prompt?: string | undefined; cli_command?: string | undefined; prompt_delivery?: "flag" | "positional" | "stdin" | undefined; prompt_flag?: string | undefined; output_format?: "text" | "json" | "jsonl" | undefined; response_json_path?: string | undefined; usage_json_path?: string | undefined; cli_args?: string[] | undefined; process_timeout?: number | undefined; working_directory?: string | undefined; env_vars?: Record | undefined; }>]>, { type: "http"; base_url: string; models: string[]; default_model: string; nickname: string; api_key?: string | undefined; temperature?: number | undefined; system_prompt?: string | undefined; timeout?: number | undefined; max_retries?: number | undefined; } | { type: "cli"; nickname: string; cli_type: "custom" | "claude" | "codex" | "gemini" | "grok" | "aider"; models?: string[] | undefined; default_model?: string | undefined; system_prompt?: string | undefined; cli_command?: string | undefined; prompt_delivery?: "flag" | "positional" | "stdin" | undefined; prompt_flag?: string | undefined; output_format?: "text" | "json" | "jsonl" | undefined; response_json_path?: string | undefined; usage_json_path?: string | undefined; cli_args?: string[] | undefined; process_timeout?: number | undefined; working_directory?: string | undefined; env_vars?: Record | undefined; }, unknown>; export declare const MCPServerConfigSchema: z.ZodObject<{ name: z.ZodString; type: z.ZodEnum<["stdio", "http"]>; command: z.ZodOptional; args: z.ZodOptional>; url: z.ZodOptional; apiKey: z.ZodOptional; enabled: z.ZodDefault; retryAttempts: z.ZodDefault; retryDelay: z.ZodDefault; }, "strip", z.ZodTypeAny, { type: "http" | "stdio"; name: string; enabled: boolean; retryAttempts: number; retryDelay: number; url?: string | undefined; command?: string | undefined; args?: string[] | undefined; apiKey?: string | undefined; }, { type: "http" | "stdio"; name: string; url?: string | undefined; command?: string | undefined; args?: string[] | undefined; apiKey?: string | undefined; enabled?: boolean | undefined; retryAttempts?: number | undefined; retryDelay?: number | undefined; }>; export declare const MCPBridgeConfigSchema: z.ZodObject<{ enabled: z.ZodDefault; approval_mode: z.ZodDefault>; approval_timeout: z.ZodDefault; trusted_tools: z.ZodDefault>; trusted_tools_by_server: z.ZodOptional>>; mcp_servers: z.ZodDefault; command: z.ZodOptional; args: z.ZodOptional>; url: z.ZodOptional; apiKey: z.ZodOptional; enabled: z.ZodDefault; retryAttempts: z.ZodDefault; retryDelay: z.ZodDefault; }, "strip", z.ZodTypeAny, { type: "http" | "stdio"; name: string; enabled: boolean; retryAttempts: number; retryDelay: number; url?: string | undefined; command?: string | undefined; args?: string[] | undefined; apiKey?: string | undefined; }, { type: "http" | "stdio"; name: string; url?: string | undefined; command?: string | undefined; args?: string[] | undefined; apiKey?: string | undefined; enabled?: boolean | undefined; retryAttempts?: number | undefined; retryDelay?: number | undefined; }>, "many">>; max_tool_rounds: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; approval_mode: "never" | "always" | "trusted"; approval_timeout: number; trusted_tools: string[]; mcp_servers: { type: "http" | "stdio"; name: string; enabled: boolean; retryAttempts: number; retryDelay: number; url?: string | undefined; command?: string | undefined; args?: string[] | undefined; apiKey?: string | undefined; }[]; max_tool_rounds: number; trusted_tools_by_server?: Record | undefined; }, { enabled?: boolean | undefined; approval_mode?: "never" | "always" | "trusted" | undefined; approval_timeout?: number | undefined; trusted_tools?: string[] | undefined; trusted_tools_by_server?: Record | undefined; mcp_servers?: { type: "http" | "stdio"; name: string; url?: string | undefined; command?: string | undefined; args?: string[] | undefined; apiKey?: string | undefined; enabled?: boolean | undefined; retryAttempts?: number | undefined; retryDelay?: number | undefined; }[] | undefined; max_tool_rounds?: number | undefined; }>; export declare const ModelPricingSchema: z.ZodObject<{ inputPricePerMillion: z.ZodNumber; outputPricePerMillion: z.ZodNumber; }, "strip", z.ZodTypeAny, { inputPricePerMillion: number; outputPricePerMillion: number; }, { inputPricePerMillion: number; outputPricePerMillion: number; }>; export declare const PricingConfigSchema: z.ZodRecord>>; export declare const RateLimiterConfigSchema: z.ZodObject<{ enabled: z.ZodDefault; priority: z.ZodDefault; requests_per_minute: z.ZodDefault; requests_per_hour: z.ZodDefault; per_provider: z.ZodDefault; burst_allowance: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; requests_per_minute: number; requests_per_hour: number; per_provider: boolean; burst_allowance: number; }, { enabled?: boolean | undefined; priority?: number | undefined; requests_per_minute?: number | undefined; requests_per_hour?: number | undefined; per_provider?: boolean | undefined; burst_allowance?: number | undefined; }>; export declare const TokenLimiterConfigSchema: z.ZodObject<{ enabled: z.ZodDefault; priority: z.ZodDefault; max_input_tokens: z.ZodDefault; max_output_tokens: z.ZodOptional; warn_at_percentage: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; max_input_tokens: number; warn_at_percentage: number; max_output_tokens?: number | undefined; }, { enabled?: boolean | undefined; priority?: number | undefined; max_input_tokens?: number | undefined; max_output_tokens?: number | undefined; warn_at_percentage?: number | undefined; }>; export declare const PatternBlockerConfigSchema: z.ZodObject<{ enabled: z.ZodDefault; priority: z.ZodDefault; blocked_patterns: z.ZodDefault>; blocked_patterns_regex: z.ZodDefault>; case_sensitive: z.ZodDefault; action_on_match: z.ZodDefault>; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; blocked_patterns: string[]; blocked_patterns_regex: string[]; case_sensitive: boolean; action_on_match: "block" | "warn" | "redact"; }, { enabled?: boolean | undefined; priority?: number | undefined; blocked_patterns?: string[] | undefined; blocked_patterns_regex?: string[] | undefined; case_sensitive?: boolean | undefined; action_on_match?: "block" | "warn" | "redact" | undefined; }>; export declare const PIIRedactorConfigSchema: z.ZodObject<{ enabled: z.ZodDefault; priority: z.ZodDefault; detect_emails: z.ZodDefault; detect_phones: z.ZodDefault; detect_ssn: z.ZodDefault; detect_api_keys: z.ZodDefault; detect_credit_cards: z.ZodDefault; detect_ip_addresses: z.ZodDefault; custom_patterns: z.ZodDefault, "many">>; allowlist: z.ZodDefault>; allowlist_domains: z.ZodDefault>; restore_on_response: z.ZodDefault; log_detections: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; detect_emails: boolean; detect_phones: boolean; detect_ssn: boolean; detect_api_keys: boolean; detect_credit_cards: boolean; detect_ip_addresses: boolean; custom_patterns: { name: string; pattern: string; placeholder: string; }[]; allowlist: string[]; allowlist_domains: string[]; restore_on_response: boolean; log_detections: boolean; }, { enabled?: boolean | undefined; priority?: number | undefined; detect_emails?: boolean | undefined; detect_phones?: boolean | undefined; detect_ssn?: boolean | undefined; detect_api_keys?: boolean | undefined; detect_credit_cards?: boolean | undefined; detect_ip_addresses?: boolean | undefined; custom_patterns?: { name: string; pattern: string; placeholder: string; }[] | undefined; allowlist?: string[] | undefined; allowlist_domains?: string[] | undefined; restore_on_response?: boolean | undefined; log_detections?: boolean | undefined; }>; export declare const GuardrailsPluginsConfigSchema: z.ZodObject<{ rate_limiter: z.ZodOptional; priority: z.ZodDefault; requests_per_minute: z.ZodDefault; requests_per_hour: z.ZodDefault; per_provider: z.ZodDefault; burst_allowance: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; requests_per_minute: number; requests_per_hour: number; per_provider: boolean; burst_allowance: number; }, { enabled?: boolean | undefined; priority?: number | undefined; requests_per_minute?: number | undefined; requests_per_hour?: number | undefined; per_provider?: boolean | undefined; burst_allowance?: number | undefined; }>>; token_limiter: z.ZodOptional; priority: z.ZodDefault; max_input_tokens: z.ZodDefault; max_output_tokens: z.ZodOptional; warn_at_percentage: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; max_input_tokens: number; warn_at_percentage: number; max_output_tokens?: number | undefined; }, { enabled?: boolean | undefined; priority?: number | undefined; max_input_tokens?: number | undefined; max_output_tokens?: number | undefined; warn_at_percentage?: number | undefined; }>>; pattern_blocker: z.ZodOptional; priority: z.ZodDefault; blocked_patterns: z.ZodDefault>; blocked_patterns_regex: z.ZodDefault>; case_sensitive: z.ZodDefault; action_on_match: z.ZodDefault>; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; blocked_patterns: string[]; blocked_patterns_regex: string[]; case_sensitive: boolean; action_on_match: "block" | "warn" | "redact"; }, { enabled?: boolean | undefined; priority?: number | undefined; blocked_patterns?: string[] | undefined; blocked_patterns_regex?: string[] | undefined; case_sensitive?: boolean | undefined; action_on_match?: "block" | "warn" | "redact" | undefined; }>>; pii_redactor: z.ZodOptional; priority: z.ZodDefault; detect_emails: z.ZodDefault; detect_phones: z.ZodDefault; detect_ssn: z.ZodDefault; detect_api_keys: z.ZodDefault; detect_credit_cards: z.ZodDefault; detect_ip_addresses: z.ZodDefault; custom_patterns: z.ZodDefault, "many">>; allowlist: z.ZodDefault>; allowlist_domains: z.ZodDefault>; restore_on_response: z.ZodDefault; log_detections: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; detect_emails: boolean; detect_phones: boolean; detect_ssn: boolean; detect_api_keys: boolean; detect_credit_cards: boolean; detect_ip_addresses: boolean; custom_patterns: { name: string; pattern: string; placeholder: string; }[]; allowlist: string[]; allowlist_domains: string[]; restore_on_response: boolean; log_detections: boolean; }, { enabled?: boolean | undefined; priority?: number | undefined; detect_emails?: boolean | undefined; detect_phones?: boolean | undefined; detect_ssn?: boolean | undefined; detect_api_keys?: boolean | undefined; detect_credit_cards?: boolean | undefined; detect_ip_addresses?: boolean | undefined; custom_patterns?: { name: string; pattern: string; placeholder: string; }[] | undefined; allowlist?: string[] | undefined; allowlist_domains?: string[] | undefined; restore_on_response?: boolean | undefined; log_detections?: boolean | undefined; }>>; }, "strip", z.ZodTypeAny, { rate_limiter?: { enabled: boolean; priority: number; requests_per_minute: number; requests_per_hour: number; per_provider: boolean; burst_allowance: number; } | undefined; token_limiter?: { enabled: boolean; priority: number; max_input_tokens: number; warn_at_percentage: number; max_output_tokens?: number | undefined; } | undefined; pattern_blocker?: { enabled: boolean; priority: number; blocked_patterns: string[]; blocked_patterns_regex: string[]; case_sensitive: boolean; action_on_match: "block" | "warn" | "redact"; } | undefined; pii_redactor?: { enabled: boolean; priority: number; detect_emails: boolean; detect_phones: boolean; detect_ssn: boolean; detect_api_keys: boolean; detect_credit_cards: boolean; detect_ip_addresses: boolean; custom_patterns: { name: string; pattern: string; placeholder: string; }[]; allowlist: string[]; allowlist_domains: string[]; restore_on_response: boolean; log_detections: boolean; } | undefined; }, { rate_limiter?: { enabled?: boolean | undefined; priority?: number | undefined; requests_per_minute?: number | undefined; requests_per_hour?: number | undefined; per_provider?: boolean | undefined; burst_allowance?: number | undefined; } | undefined; token_limiter?: { enabled?: boolean | undefined; priority?: number | undefined; max_input_tokens?: number | undefined; max_output_tokens?: number | undefined; warn_at_percentage?: number | undefined; } | undefined; pattern_blocker?: { enabled?: boolean | undefined; priority?: number | undefined; blocked_patterns?: string[] | undefined; blocked_patterns_regex?: string[] | undefined; case_sensitive?: boolean | undefined; action_on_match?: "block" | "warn" | "redact" | undefined; } | undefined; pii_redactor?: { enabled?: boolean | undefined; priority?: number | undefined; detect_emails?: boolean | undefined; detect_phones?: boolean | undefined; detect_ssn?: boolean | undefined; detect_api_keys?: boolean | undefined; detect_credit_cards?: boolean | undefined; detect_ip_addresses?: boolean | undefined; custom_patterns?: { name: string; pattern: string; placeholder: string; }[] | undefined; allowlist?: string[] | undefined; allowlist_domains?: string[] | undefined; restore_on_response?: boolean | undefined; log_detections?: boolean | undefined; } | undefined; }>; export declare const GuardrailsConfigSchema: z.ZodObject<{ enabled: z.ZodDefault; log_violations: z.ZodDefault; log_modifications: z.ZodDefault; fail_open: z.ZodDefault; plugins: z.ZodOptional; priority: z.ZodDefault; requests_per_minute: z.ZodDefault; requests_per_hour: z.ZodDefault; per_provider: z.ZodDefault; burst_allowance: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; requests_per_minute: number; requests_per_hour: number; per_provider: boolean; burst_allowance: number; }, { enabled?: boolean | undefined; priority?: number | undefined; requests_per_minute?: number | undefined; requests_per_hour?: number | undefined; per_provider?: boolean | undefined; burst_allowance?: number | undefined; }>>; token_limiter: z.ZodOptional; priority: z.ZodDefault; max_input_tokens: z.ZodDefault; max_output_tokens: z.ZodOptional; warn_at_percentage: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; max_input_tokens: number; warn_at_percentage: number; max_output_tokens?: number | undefined; }, { enabled?: boolean | undefined; priority?: number | undefined; max_input_tokens?: number | undefined; max_output_tokens?: number | undefined; warn_at_percentage?: number | undefined; }>>; pattern_blocker: z.ZodOptional; priority: z.ZodDefault; blocked_patterns: z.ZodDefault>; blocked_patterns_regex: z.ZodDefault>; case_sensitive: z.ZodDefault; action_on_match: z.ZodDefault>; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; blocked_patterns: string[]; blocked_patterns_regex: string[]; case_sensitive: boolean; action_on_match: "block" | "warn" | "redact"; }, { enabled?: boolean | undefined; priority?: number | undefined; blocked_patterns?: string[] | undefined; blocked_patterns_regex?: string[] | undefined; case_sensitive?: boolean | undefined; action_on_match?: "block" | "warn" | "redact" | undefined; }>>; pii_redactor: z.ZodOptional; priority: z.ZodDefault; detect_emails: z.ZodDefault; detect_phones: z.ZodDefault; detect_ssn: z.ZodDefault; detect_api_keys: z.ZodDefault; detect_credit_cards: z.ZodDefault; detect_ip_addresses: z.ZodDefault; custom_patterns: z.ZodDefault, "many">>; allowlist: z.ZodDefault>; allowlist_domains: z.ZodDefault>; restore_on_response: z.ZodDefault; log_detections: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; detect_emails: boolean; detect_phones: boolean; detect_ssn: boolean; detect_api_keys: boolean; detect_credit_cards: boolean; detect_ip_addresses: boolean; custom_patterns: { name: string; pattern: string; placeholder: string; }[]; allowlist: string[]; allowlist_domains: string[]; restore_on_response: boolean; log_detections: boolean; }, { enabled?: boolean | undefined; priority?: number | undefined; detect_emails?: boolean | undefined; detect_phones?: boolean | undefined; detect_ssn?: boolean | undefined; detect_api_keys?: boolean | undefined; detect_credit_cards?: boolean | undefined; detect_ip_addresses?: boolean | undefined; custom_patterns?: { name: string; pattern: string; placeholder: string; }[] | undefined; allowlist?: string[] | undefined; allowlist_domains?: string[] | undefined; restore_on_response?: boolean | undefined; log_detections?: boolean | undefined; }>>; }, "strip", z.ZodTypeAny, { rate_limiter?: { enabled: boolean; priority: number; requests_per_minute: number; requests_per_hour: number; per_provider: boolean; burst_allowance: number; } | undefined; token_limiter?: { enabled: boolean; priority: number; max_input_tokens: number; warn_at_percentage: number; max_output_tokens?: number | undefined; } | undefined; pattern_blocker?: { enabled: boolean; priority: number; blocked_patterns: string[]; blocked_patterns_regex: string[]; case_sensitive: boolean; action_on_match: "block" | "warn" | "redact"; } | undefined; pii_redactor?: { enabled: boolean; priority: number; detect_emails: boolean; detect_phones: boolean; detect_ssn: boolean; detect_api_keys: boolean; detect_credit_cards: boolean; detect_ip_addresses: boolean; custom_patterns: { name: string; pattern: string; placeholder: string; }[]; allowlist: string[]; allowlist_domains: string[]; restore_on_response: boolean; log_detections: boolean; } | undefined; }, { rate_limiter?: { enabled?: boolean | undefined; priority?: number | undefined; requests_per_minute?: number | undefined; requests_per_hour?: number | undefined; per_provider?: boolean | undefined; burst_allowance?: number | undefined; } | undefined; token_limiter?: { enabled?: boolean | undefined; priority?: number | undefined; max_input_tokens?: number | undefined; max_output_tokens?: number | undefined; warn_at_percentage?: number | undefined; } | undefined; pattern_blocker?: { enabled?: boolean | undefined; priority?: number | undefined; blocked_patterns?: string[] | undefined; blocked_patterns_regex?: string[] | undefined; case_sensitive?: boolean | undefined; action_on_match?: "block" | "warn" | "redact" | undefined; } | undefined; pii_redactor?: { enabled?: boolean | undefined; priority?: number | undefined; detect_emails?: boolean | undefined; detect_phones?: boolean | undefined; detect_ssn?: boolean | undefined; detect_api_keys?: boolean | undefined; detect_credit_cards?: boolean | undefined; detect_ip_addresses?: boolean | undefined; custom_patterns?: { name: string; pattern: string; placeholder: string; }[] | undefined; allowlist?: string[] | undefined; allowlist_domains?: string[] | undefined; restore_on_response?: boolean | undefined; log_detections?: boolean | undefined; } | undefined; }>>; }, "strip", z.ZodTypeAny, { enabled: boolean; log_violations: boolean; log_modifications: boolean; fail_open: boolean; plugins?: { rate_limiter?: { enabled: boolean; priority: number; requests_per_minute: number; requests_per_hour: number; per_provider: boolean; burst_allowance: number; } | undefined; token_limiter?: { enabled: boolean; priority: number; max_input_tokens: number; warn_at_percentage: number; max_output_tokens?: number | undefined; } | undefined; pattern_blocker?: { enabled: boolean; priority: number; blocked_patterns: string[]; blocked_patterns_regex: string[]; case_sensitive: boolean; action_on_match: "block" | "warn" | "redact"; } | undefined; pii_redactor?: { enabled: boolean; priority: number; detect_emails: boolean; detect_phones: boolean; detect_ssn: boolean; detect_api_keys: boolean; detect_credit_cards: boolean; detect_ip_addresses: boolean; custom_patterns: { name: string; pattern: string; placeholder: string; }[]; allowlist: string[]; allowlist_domains: string[]; restore_on_response: boolean; log_detections: boolean; } | undefined; } | undefined; }, { enabled?: boolean | undefined; log_violations?: boolean | undefined; log_modifications?: boolean | undefined; fail_open?: boolean | undefined; plugins?: { rate_limiter?: { enabled?: boolean | undefined; priority?: number | undefined; requests_per_minute?: number | undefined; requests_per_hour?: number | undefined; per_provider?: boolean | undefined; burst_allowance?: number | undefined; } | undefined; token_limiter?: { enabled?: boolean | undefined; priority?: number | undefined; max_input_tokens?: number | undefined; max_output_tokens?: number | undefined; warn_at_percentage?: number | undefined; } | undefined; pattern_blocker?: { enabled?: boolean | undefined; priority?: number | undefined; blocked_patterns?: string[] | undefined; blocked_patterns_regex?: string[] | undefined; case_sensitive?: boolean | undefined; action_on_match?: "block" | "warn" | "redact" | undefined; } | undefined; pii_redactor?: { enabled?: boolean | undefined; priority?: number | undefined; detect_emails?: boolean | undefined; detect_phones?: boolean | undefined; detect_ssn?: boolean | undefined; detect_api_keys?: boolean | undefined; detect_credit_cards?: boolean | undefined; detect_ip_addresses?: boolean | undefined; custom_patterns?: { name: string; pattern: string; placeholder: string; }[] | undefined; allowlist?: string[] | undefined; allowlist_domains?: string[] | undefined; restore_on_response?: boolean | undefined; log_detections?: boolean | undefined; } | undefined; } | undefined; }>; export declare const ConfigSchema: z.ZodObject<{ providers: z.ZodRecord>; api_key: z.ZodOptional; base_url: z.ZodString; models: z.ZodArray; default_model: z.ZodString; nickname: z.ZodString; temperature: z.ZodOptional; system_prompt: z.ZodOptional; timeout: z.ZodOptional; max_retries: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "http"; base_url: string; models: string[]; default_model: string; nickname: string; api_key?: string | undefined; temperature?: number | undefined; system_prompt?: string | undefined; timeout?: number | undefined; max_retries?: number | undefined; }, { base_url: string; models: string[]; default_model: string; nickname: string; type?: "http" | undefined; api_key?: string | undefined; temperature?: number | undefined; system_prompt?: string | undefined; timeout?: number | undefined; max_retries?: number | undefined; }>, z.ZodObject<{ type: z.ZodLiteral<"cli">; cli_type: z.ZodEnum<["claude", "codex", "gemini", "grok", "aider", "custom"]>; cli_command: z.ZodOptional; prompt_delivery: z.ZodOptional>; prompt_flag: z.ZodOptional; output_format: z.ZodOptional>; response_json_path: z.ZodOptional; usage_json_path: z.ZodOptional; cli_args: z.ZodOptional>; process_timeout: z.ZodOptional; working_directory: z.ZodOptional; env_vars: z.ZodOptional>; nickname: z.ZodString; default_model: z.ZodOptional; models: z.ZodOptional>; system_prompt: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "cli"; nickname: string; cli_type: "custom" | "claude" | "codex" | "gemini" | "grok" | "aider"; models?: string[] | undefined; default_model?: string | undefined; system_prompt?: string | undefined; cli_command?: string | undefined; prompt_delivery?: "flag" | "positional" | "stdin" | undefined; prompt_flag?: string | undefined; output_format?: "text" | "json" | "jsonl" | undefined; response_json_path?: string | undefined; usage_json_path?: string | undefined; cli_args?: string[] | undefined; process_timeout?: number | undefined; working_directory?: string | undefined; env_vars?: Record | undefined; }, { type: "cli"; nickname: string; cli_type: "custom" | "claude" | "codex" | "gemini" | "grok" | "aider"; models?: string[] | undefined; default_model?: string | undefined; system_prompt?: string | undefined; cli_command?: string | undefined; prompt_delivery?: "flag" | "positional" | "stdin" | undefined; prompt_flag?: string | undefined; output_format?: "text" | "json" | "jsonl" | undefined; response_json_path?: string | undefined; usage_json_path?: string | undefined; cli_args?: string[] | undefined; process_timeout?: number | undefined; working_directory?: string | undefined; env_vars?: Record | undefined; }>]>, { type: "http"; base_url: string; models: string[]; default_model: string; nickname: string; api_key?: string | undefined; temperature?: number | undefined; system_prompt?: string | undefined; timeout?: number | undefined; max_retries?: number | undefined; } | { type: "cli"; nickname: string; cli_type: "custom" | "claude" | "codex" | "gemini" | "grok" | "aider"; models?: string[] | undefined; default_model?: string | undefined; system_prompt?: string | undefined; cli_command?: string | undefined; prompt_delivery?: "flag" | "positional" | "stdin" | undefined; prompt_flag?: string | undefined; output_format?: "text" | "json" | "jsonl" | undefined; response_json_path?: string | undefined; usage_json_path?: string | undefined; cli_args?: string[] | undefined; process_timeout?: number | undefined; working_directory?: string | undefined; env_vars?: Record | undefined; }, unknown>>; default_provider: z.ZodOptional; default_temperature: z.ZodDefault; enable_failover: z.ZodDefault; log_level: z.ZodDefault>; mcp_bridge: z.ZodOptional; approval_mode: z.ZodDefault>; approval_timeout: z.ZodDefault; trusted_tools: z.ZodDefault>; trusted_tools_by_server: z.ZodOptional>>; mcp_servers: z.ZodDefault; command: z.ZodOptional; args: z.ZodOptional>; url: z.ZodOptional; apiKey: z.ZodOptional; enabled: z.ZodDefault; retryAttempts: z.ZodDefault; retryDelay: z.ZodDefault; }, "strip", z.ZodTypeAny, { type: "http" | "stdio"; name: string; enabled: boolean; retryAttempts: number; retryDelay: number; url?: string | undefined; command?: string | undefined; args?: string[] | undefined; apiKey?: string | undefined; }, { type: "http" | "stdio"; name: string; url?: string | undefined; command?: string | undefined; args?: string[] | undefined; apiKey?: string | undefined; enabled?: boolean | undefined; retryAttempts?: number | undefined; retryDelay?: number | undefined; }>, "many">>; max_tool_rounds: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; approval_mode: "never" | "always" | "trusted"; approval_timeout: number; trusted_tools: string[]; mcp_servers: { type: "http" | "stdio"; name: string; enabled: boolean; retryAttempts: number; retryDelay: number; url?: string | undefined; command?: string | undefined; args?: string[] | undefined; apiKey?: string | undefined; }[]; max_tool_rounds: number; trusted_tools_by_server?: Record | undefined; }, { enabled?: boolean | undefined; approval_mode?: "never" | "always" | "trusted" | undefined; approval_timeout?: number | undefined; trusted_tools?: string[] | undefined; trusted_tools_by_server?: Record | undefined; mcp_servers?: { type: "http" | "stdio"; name: string; url?: string | undefined; command?: string | undefined; args?: string[] | undefined; apiKey?: string | undefined; enabled?: boolean | undefined; retryAttempts?: number | undefined; retryDelay?: number | undefined; }[] | undefined; max_tool_rounds?: number | undefined; }>>; pricing: z.ZodOptional>>>; guardrails: z.ZodOptional; log_violations: z.ZodDefault; log_modifications: z.ZodDefault; fail_open: z.ZodDefault; plugins: z.ZodOptional; priority: z.ZodDefault; requests_per_minute: z.ZodDefault; requests_per_hour: z.ZodDefault; per_provider: z.ZodDefault; burst_allowance: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; requests_per_minute: number; requests_per_hour: number; per_provider: boolean; burst_allowance: number; }, { enabled?: boolean | undefined; priority?: number | undefined; requests_per_minute?: number | undefined; requests_per_hour?: number | undefined; per_provider?: boolean | undefined; burst_allowance?: number | undefined; }>>; token_limiter: z.ZodOptional; priority: z.ZodDefault; max_input_tokens: z.ZodDefault; max_output_tokens: z.ZodOptional; warn_at_percentage: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; max_input_tokens: number; warn_at_percentage: number; max_output_tokens?: number | undefined; }, { enabled?: boolean | undefined; priority?: number | undefined; max_input_tokens?: number | undefined; max_output_tokens?: number | undefined; warn_at_percentage?: number | undefined; }>>; pattern_blocker: z.ZodOptional; priority: z.ZodDefault; blocked_patterns: z.ZodDefault>; blocked_patterns_regex: z.ZodDefault>; case_sensitive: z.ZodDefault; action_on_match: z.ZodDefault>; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; blocked_patterns: string[]; blocked_patterns_regex: string[]; case_sensitive: boolean; action_on_match: "block" | "warn" | "redact"; }, { enabled?: boolean | undefined; priority?: number | undefined; blocked_patterns?: string[] | undefined; blocked_patterns_regex?: string[] | undefined; case_sensitive?: boolean | undefined; action_on_match?: "block" | "warn" | "redact" | undefined; }>>; pii_redactor: z.ZodOptional; priority: z.ZodDefault; detect_emails: z.ZodDefault; detect_phones: z.ZodDefault; detect_ssn: z.ZodDefault; detect_api_keys: z.ZodDefault; detect_credit_cards: z.ZodDefault; detect_ip_addresses: z.ZodDefault; custom_patterns: z.ZodDefault, "many">>; allowlist: z.ZodDefault>; allowlist_domains: z.ZodDefault>; restore_on_response: z.ZodDefault; log_detections: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; priority: number; detect_emails: boolean; detect_phones: boolean; detect_ssn: boolean; detect_api_keys: boolean; detect_credit_cards: boolean; detect_ip_addresses: boolean; custom_patterns: { name: string; pattern: string; placeholder: string; }[]; allowlist: string[]; allowlist_domains: string[]; restore_on_response: boolean; log_detections: boolean; }, { enabled?: boolean | undefined; priority?: number | undefined; detect_emails?: boolean | undefined; detect_phones?: boolean | undefined; detect_ssn?: boolean | undefined; detect_api_keys?: boolean | undefined; detect_credit_cards?: boolean | undefined; detect_ip_addresses?: boolean | undefined; custom_patterns?: { name: string; pattern: string; placeholder: string; }[] | undefined; allowlist?: string[] | undefined; allowlist_domains?: string[] | undefined; restore_on_response?: boolean | undefined; log_detections?: boolean | undefined; }>>; }, "strip", z.ZodTypeAny, { rate_limiter?: { enabled: boolean; priority: number; requests_per_minute: number; requests_per_hour: number; per_provider: boolean; burst_allowance: number; } | undefined; token_limiter?: { enabled: boolean; priority: number; max_input_tokens: number; warn_at_percentage: number; max_output_tokens?: number | undefined; } | undefined; pattern_blocker?: { enabled: boolean; priority: number; blocked_patterns: string[]; blocked_patterns_regex: string[]; case_sensitive: boolean; action_on_match: "block" | "warn" | "redact"; } | undefined; pii_redactor?: { enabled: boolean; priority: number; detect_emails: boolean; detect_phones: boolean; detect_ssn: boolean; detect_api_keys: boolean; detect_credit_cards: boolean; detect_ip_addresses: boolean; custom_patterns: { name: string; pattern: string; placeholder: string; }[]; allowlist: string[]; allowlist_domains: string[]; restore_on_response: boolean; log_detections: boolean; } | undefined; }, { rate_limiter?: { enabled?: boolean | undefined; priority?: number | undefined; requests_per_minute?: number | undefined; requests_per_hour?: number | undefined; per_provider?: boolean | undefined; burst_allowance?: number | undefined; } | undefined; token_limiter?: { enabled?: boolean | undefined; priority?: number | undefined; max_input_tokens?: number | undefined; max_output_tokens?: number | undefined; warn_at_percentage?: number | undefined; } | undefined; pattern_blocker?: { enabled?: boolean | undefined; priority?: number | undefined; blocked_patterns?: string[] | undefined; blocked_patterns_regex?: string[] | undefined; case_sensitive?: boolean | undefined; action_on_match?: "block" | "warn" | "redact" | undefined; } | undefined; pii_redactor?: { enabled?: boolean | undefined; priority?: number | undefined; detect_emails?: boolean | undefined; detect_phones?: boolean | undefined; detect_ssn?: boolean | undefined; detect_api_keys?: boolean | undefined; detect_credit_cards?: boolean | undefined; detect_ip_addresses?: boolean | undefined; custom_patterns?: { name: string; pattern: string; placeholder: string; }[] | undefined; allowlist?: string[] | undefined; allowlist_domains?: string[] | undefined; restore_on_response?: boolean | undefined; log_detections?: boolean | undefined; } | undefined; }>>; }, "strip", z.ZodTypeAny, { enabled: boolean; log_violations: boolean; log_modifications: boolean; fail_open: boolean; plugins?: { rate_limiter?: { enabled: boolean; priority: number; requests_per_minute: number; requests_per_hour: number; per_provider: boolean; burst_allowance: number; } | undefined; token_limiter?: { enabled: boolean; priority: number; max_input_tokens: number; warn_at_percentage: number; max_output_tokens?: number | undefined; } | undefined; pattern_blocker?: { enabled: boolean; priority: number; blocked_patterns: string[]; blocked_patterns_regex: string[]; case_sensitive: boolean; action_on_match: "block" | "warn" | "redact"; } | undefined; pii_redactor?: { enabled: boolean; priority: number; detect_emails: boolean; detect_phones: boolean; detect_ssn: boolean; detect_api_keys: boolean; detect_credit_cards: boolean; detect_ip_addresses: boolean; custom_patterns: { name: string; pattern: string; placeholder: string; }[]; allowlist: string[]; allowlist_domains: string[]; restore_on_response: boolean; log_detections: boolean; } | undefined; } | undefined; }, { enabled?: boolean | undefined; log_violations?: boolean | undefined; log_modifications?: boolean | undefined; fail_open?: boolean | undefined; plugins?: { rate_limiter?: { enabled?: boolean | undefined; priority?: number | undefined; requests_per_minute?: number | undefined; requests_per_hour?: number | undefined; per_provider?: boolean | undefined; burst_allowance?: number | undefined; } | undefined; token_limiter?: { enabled?: boolean | undefined; priority?: number | undefined; max_input_tokens?: number | undefined; max_output_tokens?: number | undefined; warn_at_percentage?: number | undefined; } | undefined; pattern_blocker?: { enabled?: boolean | undefined; priority?: number | undefined; blocked_patterns?: string[] | undefined; blocked_patterns_regex?: string[] | undefined; case_sensitive?: boolean | undefined; action_on_match?: "block" | "warn" | "redact" | undefined; } | undefined; pii_redactor?: { enabled?: boolean | undefined; priority?: number | undefined; detect_emails?: boolean | undefined; detect_phones?: boolean | undefined; detect_ssn?: boolean | undefined; detect_api_keys?: boolean | undefined; detect_credit_cards?: boolean | undefined; detect_ip_addresses?: boolean | undefined; custom_patterns?: { name: string; pattern: string; placeholder: string; }[] | undefined; allowlist?: string[] | undefined; allowlist_domains?: string[] | undefined; restore_on_response?: boolean | undefined; log_detections?: boolean | undefined; } | undefined; } | undefined; }>>; }, "strip", z.ZodTypeAny, { providers: Record | undefined; }>; default_temperature: number; enable_failover: boolean; log_level: "warn" | "debug" | "info" | "error"; default_provider?: string | undefined; mcp_bridge?: { enabled: boolean; approval_mode: "never" | "always" | "trusted"; approval_timeout: number; trusted_tools: string[]; mcp_servers: { type: "http" | "stdio"; name: string; enabled: boolean; retryAttempts: number; retryDelay: number; url?: string | undefined; command?: string | undefined; args?: string[] | undefined; apiKey?: string | undefined; }[]; max_tool_rounds: number; trusted_tools_by_server?: Record | undefined; } | undefined; pricing?: Record> | undefined; guardrails?: { enabled: boolean; log_violations: boolean; log_modifications: boolean; fail_open: boolean; plugins?: { rate_limiter?: { enabled: boolean; priority: number; requests_per_minute: number; requests_per_hour: number; per_provider: boolean; burst_allowance: number; } | undefined; token_limiter?: { enabled: boolean; priority: number; max_input_tokens: number; warn_at_percentage: number; max_output_tokens?: number | undefined; } | undefined; pattern_blocker?: { enabled: boolean; priority: number; blocked_patterns: string[]; blocked_patterns_regex: string[]; case_sensitive: boolean; action_on_match: "block" | "warn" | "redact"; } | undefined; pii_redactor?: { enabled: boolean; priority: number; detect_emails: boolean; detect_phones: boolean; detect_ssn: boolean; detect_api_keys: boolean; detect_credit_cards: boolean; detect_ip_addresses: boolean; custom_patterns: { name: string; pattern: string; placeholder: string; }[]; allowlist: string[]; allowlist_domains: string[]; restore_on_response: boolean; log_detections: boolean; } | undefined; } | undefined; } | undefined; }, { providers: Record; default_provider?: string | undefined; default_temperature?: number | undefined; enable_failover?: boolean | undefined; log_level?: "warn" | "debug" | "info" | "error" | undefined; mcp_bridge?: { enabled?: boolean | undefined; approval_mode?: "never" | "always" | "trusted" | undefined; approval_timeout?: number | undefined; trusted_tools?: string[] | undefined; trusted_tools_by_server?: Record | undefined; mcp_servers?: { type: "http" | "stdio"; name: string; url?: string | undefined; command?: string | undefined; args?: string[] | undefined; apiKey?: string | undefined; enabled?: boolean | undefined; retryAttempts?: number | undefined; retryDelay?: number | undefined; }[] | undefined; max_tool_rounds?: number | undefined; } | undefined; pricing?: Record> | undefined; guardrails?: { enabled?: boolean | undefined; log_violations?: boolean | undefined; log_modifications?: boolean | undefined; fail_open?: boolean | undefined; plugins?: { rate_limiter?: { enabled?: boolean | undefined; priority?: number | undefined; requests_per_minute?: number | undefined; requests_per_hour?: number | undefined; per_provider?: boolean | undefined; burst_allowance?: number | undefined; } | undefined; token_limiter?: { enabled?: boolean | undefined; priority?: number | undefined; max_input_tokens?: number | undefined; max_output_tokens?: number | undefined; warn_at_percentage?: number | undefined; } | undefined; pattern_blocker?: { enabled?: boolean | undefined; priority?: number | undefined; blocked_patterns?: string[] | undefined; blocked_patterns_regex?: string[] | undefined; case_sensitive?: boolean | undefined; action_on_match?: "block" | "warn" | "redact" | undefined; } | undefined; pii_redactor?: { enabled?: boolean | undefined; priority?: number | undefined; detect_emails?: boolean | undefined; detect_phones?: boolean | undefined; detect_ssn?: boolean | undefined; detect_api_keys?: boolean | undefined; detect_credit_cards?: boolean | undefined; detect_ip_addresses?: boolean | undefined; custom_patterns?: { name: string; pattern: string; placeholder: string; }[] | undefined; allowlist?: string[] | undefined; allowlist_domains?: string[] | undefined; restore_on_response?: boolean | undefined; log_detections?: boolean | undefined; } | undefined; } | undefined; } | undefined; }>; export type HttpProviderConfig = z.infer; export type CLIProviderConfig = z.infer; export type ProviderConfig = HttpProviderConfig | CLIProviderConfig; export type MCPServerConfig = z.infer; export type MCPBridgeConfig = z.infer; export type ModelPricing = z.infer; export type PricingConfig = z.infer; export type RateLimiterConfig = z.infer; export type TokenLimiterConfig = z.infer; export type PatternBlockerConfig = z.infer; export type PIIRedactorConfig = z.infer; export type GuardrailsPluginsConfig = z.infer; export type GuardrailsConfig = z.infer; export type Config = z.infer; export interface ImageInput { data?: string; url?: string; mimeType?: string; } export type TextContentPart = { type: 'text'; text: string; }; export type ImageContentPartBase64 = { type: 'image'; data: string; mimeType: string; }; export type ImageContentPartUrl = { type: 'image'; url: string; mimeType?: string; }; export type ImageContentPart = ImageContentPartBase64 | ImageContentPartUrl; export type ContentPart = TextContentPart | ImageContentPart; export type MessageContent = string | ContentPart[]; /** Extract plain text from MessageContent, regardless of format */ export declare function getTextContent(content: MessageContent): string; /** Check if content contains images */ export declare function hasImages(content: MessageContent): boolean; /** Build a MessageContent from text + optional images */ export declare function buildContent(text: string, images?: ImageInput[]): MessageContent; export interface ConversationMessage { role: 'system' | 'user' | 'assistant'; content: MessageContent; timestamp: Date; provider?: string; } export interface Conversation { id: string; messages: ConversationMessage[]; provider: string; createdAt: Date; updatedAt: Date; } export interface ProviderHealth { provider: string; healthy: boolean; latency?: number; lastCheck: Date; error?: string; } export interface DuckResponse { provider: string; nickname: string; model: string; content: string; usage?: { prompt_tokens: number; completion_tokens: number; total_tokens: number; promptTokens?: number; completionTokens?: number; totalTokens?: number; }; latency: number; } export interface VoteResult { voter: string; nickname: string; choice: string; confidence: number; reasoning: string; rawResponse: string; } export interface AggregatedVote { question: string; options: string[]; winner: string | null; isTie: boolean; tally: Record; confidenceByOption: Record; votes: VoteResult[]; totalVoters: number; validVotes: number; consensusLevel: 'unanimous' | 'majority' | 'plurality' | 'split' | 'none'; } export interface JudgeRanking { provider: string; nickname: string; rank: number; score: number; justification: string; } export interface JudgeEvaluation { judge: string; judgeNickname: string; prompt: string; criteria: string[]; rankings: JudgeRanking[]; criteriaScores: Record>; summary: string; rawResponse: string; } export interface IterationRound { round: number; provider: string; nickname: string; role: 'generator' | 'critic' | 'refiner'; content: string; timestamp: Date; } export interface IterationResult { prompt: string; mode: 'refine' | 'critique-improve'; providers: [string, string]; rounds: IterationRound[]; finalResponse: string; totalIterations: number; converged: boolean; } export type DebateFormat = 'oxford' | 'socratic' | 'adversarial'; export type DebatePosition = 'pro' | 'con' | 'neutral'; export interface DebateParticipant { provider: string; nickname: string; position: DebatePosition; } export interface DebateArgument { round: number; provider: string; nickname: string; position: DebatePosition; content: string; timestamp: Date; } export interface DebateResult { topic: string; format: DebateFormat; participants: DebateParticipant[]; rounds: DebateArgument[][]; synthesis: string; synthesizer: string; totalRounds: number; } export interface ModelUsageStats { requests: number; promptTokens: number; completionTokens: number; errors: number; } export interface DailyUsage { [provider: string]: { [model: string]: ModelUsageStats; }; } export interface UsageData { version: number; daily: Record; } export type UsageTimePeriod = 'today' | '7d' | '30d' | 'all'; export interface UsageStatsResult { period: UsageTimePeriod; startDate: string; endDate: string; usage: DailyUsage; totals: { requests: number; promptTokens: number; completionTokens: number; errors: number; estimatedCostUSD?: number; }; costByProvider?: Record; } //# sourceMappingURL=types.d.ts.map