import { GeneratorConfig, ModelConfig, VariantConfig } from './parser'; /** * Default configuration factory */ export declare class DefaultConfigurationManager { /** * Get complete default configuration */ static getDefaultConfiguration(): GeneratorConfig; /** * Get default configuration for minimal mode */ static getMinimalConfiguration(): GeneratorConfig; /** * Get default configuration for custom mode */ static getCustomConfiguration(): GeneratorConfig; /** * Get default variant configuration */ static getDefaultVariantConfig(variantType: 'pure' | 'input' | 'result', modelFields?: string[]): VariantConfig; /** * Get default model configuration */ static getDefaultModelConfig(modelName: string, mode?: string, modelFields?: string[]): ModelConfig; /** * Merge user configuration with defaults */ static mergeWithDefaults(userConfig: Partial): GeneratorConfig; /** * Apply mode-specific default adjustments */ private static applyModeSpecificDefaults; /** * Fill in missing model configurations with defaults */ static fillMissingModelConfigs(config: GeneratorConfig, availableModels: string[], modelFieldInfo?: { [modelName: string]: string[]; }): GeneratorConfig; /** * Validate and normalize configuration */ static normalizeConfiguration(config: GeneratorConfig): GeneratorConfig; /** * Create configuration preset for common use cases */ static createPreset(presetName: ConfigurationPreset): GeneratorConfig; /** * Get available configuration presets */ static getAvailablePresets(): ConfigurationPresetInfo[]; } /** * Configuration preset types */ export type ConfigurationPreset = 'minimal' | 'trpc' | 'api-validation' | 'full-featured'; /** * Preset information interface */ export interface ConfigurationPresetInfo { name: ConfigurationPreset; description: string; useCase: string; } /** * Convenience functions */ /** * Get default configuration */ export declare function getDefaultConfiguration(): GeneratorConfig; /** * Get minimal configuration */ export declare function getMinimalConfiguration(): GeneratorConfig; /** * Merge user config with defaults */ export declare function mergeWithDefaults(userConfig: Partial): GeneratorConfig; /** * Fill missing model configurations */ export declare function fillMissingModelConfigs(config: GeneratorConfig, availableModels: string[], modelFieldInfo?: { [modelName: string]: string[]; }): GeneratorConfig; /** * Normalize configuration */ export declare function normalizeConfiguration(config: GeneratorConfig): GeneratorConfig; /** * Create preset configuration */ export declare function createPreset(presetName: ConfigurationPreset): GeneratorConfig; /** * Get available presets */ export declare function getAvailablePresets(): ConfigurationPresetInfo[]; /** * Process and finalize configuration * * This is the main function that should be used to process configuration * from parsing through defaults application and normalization. */ export declare function processConfiguration(userConfig: Partial, availableModels?: string[], modelFieldInfo?: { [modelName: string]: string[]; }): GeneratorConfig;