/** * Zod schema for configuration validation * * This schema defines the structure of `.agents-reverse/config.yaml` * and provides sensible defaults for all fields. */ import { z } from 'zod'; /** * Schema for exclusion configuration */ declare const ExcludeSchema: z.ZodDefault>; /** Vendor directories to exclude */ vendorDirs: z.ZodDefault>; /** Binary file extensions to exclude */ binaryExtensions: z.ZodDefault>; }, "strip", z.ZodTypeAny, { patterns: string[]; vendorDirs: string[]; binaryExtensions: string[]; }, { patterns?: string[] | undefined; vendorDirs?: string[] | undefined; binaryExtensions?: string[] | undefined; }>>; /** * Schema for options configuration */ declare const OptionsSchema: z.ZodDefault; /** Maximum file size in bytes (files larger than this are skipped) */ maxFileSize: z.ZodDefault; }, "strip", z.ZodTypeAny, { followSymlinks: boolean; maxFileSize: number; }, { followSymlinks?: boolean | undefined; maxFileSize?: number | undefined; }>>; /** * Schema for output configuration */ declare const OutputSchema: z.ZodDefault; }, "strip", z.ZodTypeAny, { colors: boolean; }, { colors?: boolean | undefined; }>>; /** * Schema for generation configuration. * * Controls documentation generation behavior including compression ratio * for .sum files. All fields have sensible defaults. */ declare const GenerationSchema: z.ZodDefault; /** * Active eval variant (e.g., "claude.haiku"). * When set, AGENTS.md hub files will reference this variant. * Set automatically by `--eval` flag. */ activeVariant: z.ZodOptional; }, "strip", z.ZodTypeAny, { compressionRatio: number; activeVariant?: string | undefined; }, { compressionRatio?: number | undefined; activeVariant?: string | undefined; }>>; /** * Schema for AI service configuration. * * Controls backend selection, model, timeout, retry behavior, and * telemetry log retention. All fields have sensible defaults. */ declare const AISchema: z.ZodDefault>; /** Model identifier (backend-specific, e.g., "sonnet", "opus") */ model: z.ZodDefault; /** Default subprocess timeout in milliseconds */ timeoutMs: z.ZodDefault; /** Maximum number of retries for transient errors */ maxRetries: z.ZodDefault; /** Default parallelism for concurrent AI calls (1-20). Auto-detected from CPU cores and available memory. */ concurrency: z.ZodDefault; /** Telemetry settings */ telemetry: z.ZodDefault; }, "strip", z.ZodTypeAny, { keepRuns: number; }, { keepRuns?: number | undefined; }>>; }, "strip", z.ZodTypeAny, { maxRetries: number; concurrency: number; model: string; backend: "claude" | "codex" | "gemini" | "opencode" | "auto"; timeoutMs: number; telemetry: { keepRuns: number; }; }, { maxRetries?: number | undefined; concurrency?: number | undefined; model?: string | undefined; backend?: "claude" | "codex" | "gemini" | "opencode" | "auto" | undefined; timeoutMs?: number | undefined; telemetry?: { keepRuns?: number | undefined; } | undefined; }>>; /** * Main configuration schema for agents-reverse. * * All fields have sensible defaults, so an empty object `{}` is valid * and will result in a fully populated configuration. * * @example * ```typescript * // Parse with defaults * const config = ConfigSchema.parse({}); * * // Parse with partial overrides * const config = ConfigSchema.parse({ * exclude: { patterns: ['*.log'] }, * ai: { backend: 'claude', model: 'opus' }, * }); * ``` */ export declare const ConfigSchema: z.ZodDefault>; /** Vendor directories to exclude */ vendorDirs: z.ZodDefault>; /** Binary file extensions to exclude */ binaryExtensions: z.ZodDefault>; }, "strip", z.ZodTypeAny, { patterns: string[]; vendorDirs: string[]; binaryExtensions: string[]; }, { patterns?: string[] | undefined; vendorDirs?: string[] | undefined; binaryExtensions?: string[] | undefined; }>>; /** Discovery options */ options: z.ZodDefault; /** Maximum file size in bytes (files larger than this are skipped) */ maxFileSize: z.ZodDefault; }, "strip", z.ZodTypeAny, { followSymlinks: boolean; maxFileSize: number; }, { followSymlinks?: boolean | undefined; maxFileSize?: number | undefined; }>>; /** Output formatting options */ output: z.ZodDefault; }, "strip", z.ZodTypeAny, { colors: boolean; }, { colors?: boolean | undefined; }>>; /** Generation settings */ generation: z.ZodDefault; /** * Active eval variant (e.g., "claude.haiku"). * When set, AGENTS.md hub files will reference this variant. * Set automatically by `--eval` flag. */ activeVariant: z.ZodOptional; }, "strip", z.ZodTypeAny, { compressionRatio: number; activeVariant?: string | undefined; }, { compressionRatio?: number | undefined; activeVariant?: string | undefined; }>>; /** AI service configuration */ ai: z.ZodDefault>; /** Model identifier (backend-specific, e.g., "sonnet", "opus") */ model: z.ZodDefault; /** Default subprocess timeout in milliseconds */ timeoutMs: z.ZodDefault; /** Maximum number of retries for transient errors */ maxRetries: z.ZodDefault; /** Default parallelism for concurrent AI calls (1-20). Auto-detected from CPU cores and available memory. */ concurrency: z.ZodDefault; /** Telemetry settings */ telemetry: z.ZodDefault; }, "strip", z.ZodTypeAny, { keepRuns: number; }, { keepRuns?: number | undefined; }>>; }, "strip", z.ZodTypeAny, { maxRetries: number; concurrency: number; model: string; backend: "claude" | "codex" | "gemini" | "opencode" | "auto"; timeoutMs: number; telemetry: { keepRuns: number; }; }, { maxRetries?: number | undefined; concurrency?: number | undefined; model?: string | undefined; backend?: "claude" | "codex" | "gemini" | "opencode" | "auto" | undefined; timeoutMs?: number | undefined; telemetry?: { keepRuns?: number | undefined; } | undefined; }>>; }, "strip", z.ZodTypeAny, { options: { followSymlinks: boolean; maxFileSize: number; }; output: { colors: boolean; }; exclude: { patterns: string[]; vendorDirs: string[]; binaryExtensions: string[]; }; generation: { compressionRatio: number; activeVariant?: string | undefined; }; ai: { maxRetries: number; concurrency: number; model: string; backend: "claude" | "codex" | "gemini" | "opencode" | "auto"; timeoutMs: number; telemetry: { keepRuns: number; }; }; }, { options?: { followSymlinks?: boolean | undefined; maxFileSize?: number | undefined; } | undefined; output?: { colors?: boolean | undefined; } | undefined; exclude?: { patterns?: string[] | undefined; vendorDirs?: string[] | undefined; binaryExtensions?: string[] | undefined; } | undefined; generation?: { compressionRatio?: number | undefined; activeVariant?: string | undefined; } | undefined; ai?: { maxRetries?: number | undefined; concurrency?: number | undefined; model?: string | undefined; backend?: "claude" | "codex" | "gemini" | "opencode" | "auto" | undefined; timeoutMs?: number | undefined; telemetry?: { keepRuns?: number | undefined; } | undefined; } | undefined; }>>; /** * Inferred TypeScript type from the schema. * Use this type for function parameters and return types. */ export type Config = z.infer; /** * Type for the exclude section of config */ export type ExcludeConfig = z.infer; /** * Type for the options section of config */ export type OptionsConfig = z.infer; /** * Type for the output section of config */ export type OutputConfig = z.infer; /** * Type for the generation section of config */ export type GenerationConfig = z.infer; /** * Type for the AI service section of config */ export type AIConfig = z.infer; export {}; //# sourceMappingURL=schema.d.ts.map