/** * Configuration System * * Sistema de configuração para o framework RW-UC. * Suporta configuração global (~/.rwuc/config.yaml) e local (.rwuc/config.yaml). */ import { z } from 'zod'; /** * Schema de configuração de execução */ declare const ExecutionConfigSchema: z.ZodObject<{ defaultMaxIterations: z.ZodDefault; globalTimeoutMinutes: z.ZodDefault; failFast: z.ZodDefault; stallDetectionIterations: z.ZodDefault; }, "strip", z.ZodTypeAny, { defaultMaxIterations: number; globalTimeoutMinutes: number; failFast: boolean; stallDetectionIterations: number; }, { defaultMaxIterations?: number | undefined; globalTimeoutMinutes?: number | undefined; failFast?: boolean | undefined; stallDetectionIterations?: number | undefined; }>; /** * Schema de configuração de Git */ declare const GitConfigSchema: z.ZodObject<{ autoCommit: z.ZodDefault; commitPrefix: z.ZodDefault; createBranch: z.ZodDefault; branchPrefix: z.ZodDefault; }, "strip", z.ZodTypeAny, { autoCommit: boolean; commitPrefix: string; createBranch: boolean; branchPrefix: string; }, { autoCommit?: boolean | undefined; commitPrefix?: string | undefined; createBranch?: boolean | undefined; branchPrefix?: string | undefined; }>; /** * Schema de configuração de logging */ declare const LoggingConfigSchema: z.ZodObject<{ level: z.ZodDefault>; enableFile: z.ZodDefault; filePath: z.ZodDefault; json: z.ZodDefault; }, "strip", z.ZodTypeAny, { level: "debug" | "info" | "warn" | "error"; filePath: string; json: boolean; enableFile: boolean; }, { level?: "debug" | "info" | "warn" | "error" | undefined; filePath?: string | undefined; json?: boolean | undefined; enableFile?: boolean | undefined; }>; /** * Schema de configuração de output */ declare const OutputConfigSchema: z.ZodObject<{ colors: z.ZodDefault; verbose: z.ZodDefault; json: z.ZodDefault; }, "strip", z.ZodTypeAny, { json: boolean; verbose: boolean; colors: boolean; }, { json?: boolean | undefined; verbose?: boolean | undefined; colors?: boolean | undefined; }>; /** * Schema de configuração completa */ declare const ConfigSchema: z.ZodObject<{ execution: z.ZodDefault; globalTimeoutMinutes: z.ZodDefault; failFast: z.ZodDefault; stallDetectionIterations: z.ZodDefault; }, "strip", z.ZodTypeAny, { defaultMaxIterations: number; globalTimeoutMinutes: number; failFast: boolean; stallDetectionIterations: number; }, { defaultMaxIterations?: number | undefined; globalTimeoutMinutes?: number | undefined; failFast?: boolean | undefined; stallDetectionIterations?: number | undefined; }>>; git: z.ZodDefault; commitPrefix: z.ZodDefault; createBranch: z.ZodDefault; branchPrefix: z.ZodDefault; }, "strip", z.ZodTypeAny, { autoCommit: boolean; commitPrefix: string; createBranch: boolean; branchPrefix: string; }, { autoCommit?: boolean | undefined; commitPrefix?: string | undefined; createBranch?: boolean | undefined; branchPrefix?: string | undefined; }>>; logging: z.ZodDefault>; enableFile: z.ZodDefault; filePath: z.ZodDefault; json: z.ZodDefault; }, "strip", z.ZodTypeAny, { level: "debug" | "info" | "warn" | "error"; filePath: string; json: boolean; enableFile: boolean; }, { level?: "debug" | "info" | "warn" | "error" | undefined; filePath?: string | undefined; json?: boolean | undefined; enableFile?: boolean | undefined; }>>; output: z.ZodDefault; verbose: z.ZodDefault; json: z.ZodDefault; }, "strip", z.ZodTypeAny, { json: boolean; verbose: boolean; colors: boolean; }, { json?: boolean | undefined; verbose?: boolean | undefined; colors?: boolean | undefined; }>>; }, "strip", z.ZodTypeAny, { execution: { defaultMaxIterations: number; globalTimeoutMinutes: number; failFast: boolean; stallDetectionIterations: number; }; git: { autoCommit: boolean; commitPrefix: string; createBranch: boolean; branchPrefix: string; }; logging: { level: "debug" | "info" | "warn" | "error"; filePath: string; json: boolean; enableFile: boolean; }; output: { json: boolean; verbose: boolean; colors: boolean; }; }, { execution?: { defaultMaxIterations?: number | undefined; globalTimeoutMinutes?: number | undefined; failFast?: boolean | undefined; stallDetectionIterations?: number | undefined; } | undefined; git?: { autoCommit?: boolean | undefined; commitPrefix?: string | undefined; createBranch?: boolean | undefined; branchPrefix?: string | undefined; } | undefined; logging?: { level?: "debug" | "info" | "warn" | "error" | undefined; filePath?: string | undefined; json?: boolean | undefined; enableFile?: boolean | undefined; } | undefined; output?: { json?: boolean | undefined; verbose?: boolean | undefined; colors?: boolean | undefined; } | undefined; }>; export type Config = z.infer; export type ExecutionConfig = z.infer; export type GitConfig = z.infer; export type LoggingConfig = z.infer; export type OutputConfig = z.infer; /** * Carrega e valida a configuração completa */ export declare function loadConfig(options?: { workingDirectory?: string; forceReload?: boolean; }): Config; /** * Obtém uma seção específica da configuração */ export declare function getConfig(section: K): Config[K]; /** * Salva configuração global */ export declare function saveGlobalConfig(config: Partial): void; /** * Salva configuração local */ export declare function saveLocalConfig(config: Partial, workingDirectory?: string): void; /** * Verifica se existe configuração global */ export declare function hasGlobalConfig(): boolean; /** * Verifica se existe configuração local */ export declare function hasLocalConfig(workingDirectory?: string): boolean; /** * Obtém o caminho da configuração global */ export declare function getGlobalConfigPath(): string; /** * Obtém o caminho da configuração local */ export declare function getLocalConfigPath(workingDirectory?: string): string; /** * Reseta o cache de configuração */ export declare function resetConfigCache(): void; /** * Gera configuração padrão como string YAML */ export declare function generateDefaultConfig(): string; /** * Template de configuração com comentários */ export declare function generateConfigTemplate(): string; export {}; //# sourceMappingURL=config.d.ts.map