prisma-zod-generator
Version:
Prisma 2+ generator to emit Zod schemas from your Prisma schema
39 lines (38 loc) • 2.03 kB
TypeScript
import { GeneratorConfig } from '../config/parser';
export interface PureModelNamingResolved {
filePattern: string;
schemaSuffix: string;
typeSuffix: string;
exportNamePattern: string;
legacyAliases: boolean;
preset?: string;
}
export declare function resolvePureModelNaming(config: GeneratorConfig | null | undefined): PureModelNamingResolved;
export declare function applyPattern(pattern: string, modelName: string, schemaSuffix: string, typeSuffix: string): string;
export declare function applyUniversalPattern(pattern: string, tokens: Record<string, string>): string;
export interface EnumNamingResolved {
filePattern: string;
exportNamePattern: string;
}
export declare function resolveEnumNaming(config: GeneratorConfig | null | undefined): EnumNamingResolved;
export interface InputNamingResolved {
filePattern: string;
exportNamePattern: string;
}
export declare function resolveInputNaming(config: GeneratorConfig | null | undefined): InputNamingResolved;
export interface SchemaNamingResolved {
filePattern: string;
exportNamePattern: string;
}
export declare function resolveSchemaNaming(config: GeneratorConfig | null | undefined): SchemaNamingResolved;
export declare function generateFileName(pattern: string, modelName: string, operation?: string, inputType?: string, enumName?: string): string;
export declare function generateExportName(pattern: string, modelName: string, operation?: string, inputType?: string, enumName?: string): string;
/**
* Reverse-derive a PascalCase model name from an export symbol and pattern.
*
* Supports patterns containing one of {Model}, {model}, {camel}, or {kebab} and
* accounts for dynamic suffix tokens {SchemaSuffix}/{TypeSuffix} when computing
* the static prefix/suffix surrounding the model token. Falls back to stripping
* configured suffixes when a direct match is not possible.
*/
export declare function parseExportSymbol(symbol: string, pattern: string, schemaSuffix?: string, typeSuffix?: string): string;