UNPKG

prisma-zod-generator

Version:

Prisma 2+ generator to emit Zod schemas from your Prisma schema

84 lines (83 loc) 2.74 kB
import { GeneratorConfig, ModelConfig, VariantConfig } from './parser'; 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>): 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; } /** * 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; /** * Merge user config with defaults */ export declare function mergeWithDefaults(userConfig: Partial<GeneratorConfig>): 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; /** * 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<GeneratorConfig>, availableModels?: string[], modelFieldInfo?: { [modelName: string]: string[]; }): GeneratorConfig;