UNPKG

schemantic

Version:

A fully typed, extensible TypeScript type generator for FastAPI OpenAPI schemas

91 lines 2.1 kB
/** * Main Schemantic class * Orchestrates the entire type generation process */ import { SchemanticConfig, GenerationResult, GenerationError, GenerationWarning } from "../types/core"; export { SchemanticConfig, DEFAULT_CONFIG } from "../types/core"; import { PluginManager } from "../plugins"; /** * Main Schemantic class */ export declare class Schemantic { private config; private pluginManager; private schema?; private resolvedSchemas; private typeRegistry; constructor(config: SchemanticConfig); /** * Generate types and API client */ generate(): Promise<GenerationResult>; /** * Validate OpenAPI schema */ validate(): Promise<{ isValid: boolean; errors: GenerationError[]; warnings: GenerationWarning[]; }>; /** * Load schema from various sources */ private loadSchema; /** * Create generation context */ private createGenerationContext; /** * Resolve schema references */ private resolveSchemaReferences; /** * Generate types from schemas */ private generateTypes; /** * Generate API clients */ private generateApiClients; /** * Generate files from generated types and clients */ private generateFiles; /** * Generate types file */ private generateTypesFile; /** * Generate client file */ private generateClientFile; /** * Generate index file */ private generateIndexFile; /** * Generate hooks file when enabled */ private generateHooksFile; /** * Calculate generation statistics */ private calculateStatistics; /** * Create type registry */ private createTypeRegistry; /** * Get plugin manager */ getPluginManager(): PluginManager; /** * Get configuration */ getConfig(): SchemanticConfig; /** * Generate import statements from dependencies */ private generateImportsFromDependencies; } //# sourceMappingURL=schemantic.d.ts.map