import { type VvocPluginToggleConfig } from "./plugin-toggle-config.js"; export declare const VVOC_CONFIG_VERSION = 3; export declare const VVOC_CONFIG_SCHEMA_URL: string; type VvocConfigVersion = 3; export type VvocRoleAssignments = Partial>; export type VvocPresetAgents = VvocRoleAssignments; export type VvocPreset = { description?: string; agents: VvocPresetAgents; }; export type VvocPresets = Record; export type GuardianConfig = { model?: string; timeoutMs: number; approvalRiskThreshold: number; reviewToastDurationMs: number; }; export type GuardianConfigOverrides = Partial; export type SecretsRedactionKeywordRule = { value: string; category?: string; }; export type SecretsRedactionRegexRule = { pattern: string; category: string; }; export type SecretsRedactionConfig = { secret: string; ttlMs: number; maxMappings: number; patterns: { keywords: SecretsRedactionKeywordRule[]; regex: SecretsRedactionRegexRule[]; builtin: string[]; exclude: string[]; }; debug: boolean; }; export type VvocConfig = { $schema: string; version: number; roles: Record; guardian: GuardianConfig; secretsRedaction: SecretsRedactionConfig; presets: VvocPresets; plugins: VvocPluginToggleConfig; }; export type ParsedVvocConfig = { sourceSchema: string; sourceVersion: VvocConfigVersion; config: VvocConfig; }; export declare const VVOC_CONFIG_SCHEMA: { $schema: string; $id: string; title: string; description: string; type: string; additionalProperties: boolean; required: string[]; properties: { $schema: { type: string; minLength: number; description: string; }; version: { type: string; const: number; }; roles: { type: string; propertyNames: { minLength: number; pattern: string; }; minProperties: 4; additionalProperties: { type: string; minLength: number; }; }; guardian: { type: string; additionalProperties: boolean; required: string[]; properties: { model: { type: string; minLength: number; }; timeoutMs: { type: string; minimum: number; }; approvalRiskThreshold: { type: string; minimum: number; maximum: number; }; reviewToastDurationMs: { type: string; minimum: number; }; }; }; secretsRedaction: { type: string; additionalProperties: boolean; required: string[]; properties: { secret: { type: string; minLength: number; }; ttlMs: { type: string; minimum: number; }; maxMappings: { type: string; minimum: number; }; debug: { type: string; }; patterns: { type: string; additionalProperties: boolean; required: string[]; properties: { keywords: { type: string; items: { type: string; additionalProperties: boolean; required: string[]; properties: { value: { type: string; minLength: number; }; category: { type: string; minLength: number; }; }; }; }; regex: { type: string; items: { type: string; additionalProperties: boolean; required: string[]; properties: { pattern: { type: string; minLength: number; }; category: { type: string; minLength: number; }; }; }; }; builtin: { type: string; items: { type: string; minLength: number; }; }; exclude: { type: string; items: { type: string; minLength: number; }; }; }; }; }; }; presets: { type: string; propertyNames: { minLength: number; }; additionalProperties: { type: string; additionalProperties: boolean; required: string[]; properties: { description: { type: string; minLength: number; }; agents: { type: string; propertyNames: { minLength: number; pattern: string; }; minProperties: number; additionalProperties: { type: string; minLength: number; }; }; }; }; }; plugins: { type: string; propertyNames: { minLength: number; }; additionalProperties: { type: string; }; }; }; }; export declare function createGuardianConfig(overrides?: GuardianConfigOverrides): GuardianConfig; export declare function createDefaultSecretsRedactionConfig(): SecretsRedactionConfig; export declare function createDefaultVvocPresets(): VvocPresets; export declare function createDefaultVvocConfig(): VvocConfig; export declare function parseGuardianConfigText(text: string, label: string): GuardianConfigOverrides; export declare function renderGuardianConfig(overrides?: GuardianConfigOverrides): string; export declare function parseVersionedVvocConfigText(text: string, label: string): ParsedVvocConfig; export declare function parseVvocConfigText(text: string, label: string): VvocConfig; export declare function loadLenientVvocConfigText(text: string, label: string, warnings: string[]): VvocConfig; export declare function renderVvocConfig(config?: VvocConfig): string; export declare function validateVvocConfigDocument(document: unknown): string[]; export {};