@gati-framework/cli
Version:
CLI tool for Gati framework - create, develop, build and deploy cloud-native applications
43 lines • 1.81 kB
TypeScript
/**
* @module cli/codegen
* @description Unified code generation orchestrator for validators, types, SDK, and bundles
*/
import type { GType } from '@gati-framework/runtime';
import type { HandlerManifest, ModuleManifest } from '../analyzer/manifest-generator.js';
export interface CodegenOptions {
projectRoot: string;
outputDir?: string;
watch?: boolean;
incremental?: boolean;
format?: boolean;
}
export interface CodegenResult {
success: boolean;
filesGenerated: string[];
errors: string[];
}
/**
* Generate validator functions from GType schemas
*/
export declare function generateValidators(schemas: Record<string, GType>, options: CodegenOptions): Promise<CodegenResult>;
/**
* Generate TypeScript type definitions from GType schemas
*/
export declare function generateTypes(schemas: Record<string, GType>, options: CodegenOptions): Promise<CodegenResult>;
/**
* Generate SDK client from handler manifests
*/
export declare function generateSDK(manifests: HandlerManifest[], options: CodegenOptions): Promise<CodegenResult>;
/**
* Generate manifest bundle for deployment
*/
export declare function generateBundle(handlers: HandlerManifest[], modules: ModuleManifest[], schemas: Record<string, GType>, options: CodegenOptions): Promise<CodegenResult>;
/**
* Generate all code artifacts (validators, types, SDK, bundle)
*/
export declare function generateAll(handlers: HandlerManifest[], modules: ModuleManifest[], schemas: Record<string, GType>, options: CodegenOptions): Promise<CodegenResult>;
export { ValidatorGenerator } from './validator-generator.js';
export { TypeDefGenerator } from './typedef-generator.js';
export { SDKGenerator } from './sdk-generator.js';
export { BundleGenerator } from './bundle-generator.js';
//# sourceMappingURL=index.d.ts.map