import { CodegenGeneratorContext, CodegenGenerator, CodegenConfig, CodegenDocument } from '@openapi-generator-plus/types'; import { CodegenOptionsTypeScript, NpmOptions, TypeScriptOptions } from './types'; import { TemplateRootContext, TypeScriptCommonTemplates } from './templates'; export { CodegenOptionsTypeScript, NpmOptions, TypeScriptOptions, DateApproach } from './types'; export { TemplateRootContext, TypeScriptCommonTemplates } from './templates'; export interface TypeScriptGeneratorContext extends CodegenGeneratorContext { defaultNpmOptions?: (config: CodegenConfig, defaultValue: NpmOptions) => NpmOptions; defaultTypeScriptOptions?: (config: CodegenConfig, defaultValue: TypeScriptOptions) => TypeScriptOptions; toEnumLiteral?: CodegenGenerator['toLiteral']; /** * Typed templates for the common output files. A child generator must supply * `package` and `tsconfig`; `gitignore` falls back to the built-in default. */ templates?: TypeScriptCommonTemplates; /** * Emit additional generator-specific files, beyond the common output files * emitted from {@link templates}. */ exportFiles?: (outputPath: string, doc: CodegenDocument, rootContext: TemplateRootContext) => Promise; } export declare function chainTypeScriptGeneratorContext(base: TypeScriptGeneratorContext, add: Partial): TypeScriptGeneratorContext; export declare function options(config: CodegenConfig, context: TypeScriptGeneratorContext): CodegenOptionsTypeScript; export default function createGenerator(config: CodegenConfig, context: TypeScriptGeneratorContext): Omit;