/** * Migration Code Generator * * Generates TypeScript migration code from SchemaDiff. * This enables auto-generating migrations from entity changes. */ import type { SchemaDiff } from '../../type/index.js'; export interface MigrationCodeOptions { /** Indentation string (default: 2 spaces) */ indent?: string; /** Whether to include comments explaining changes */ includeComments?: boolean; } export interface GeneratedMigration { /** The up migration code */ up: string; /** The down migration code */ down: string; /** Human-readable description of changes */ description: string; } /** * Generates TypeScript migration code from schema diffs. */ export declare class MigrationCodeGenerator { private readonly indent; private readonly includeComments; constructor(options?: MigrationCodeOptions); /** * Generate migration code from a single SchemaDiff. */ generate(diff: SchemaDiff): GeneratedMigration; /** * Generate migration code from multiple diffs. */ generateAll(diffs: SchemaDiff[]): GeneratedMigration; /** * Generate a complete migration file template. */ generateFile(diffs: SchemaDiff[], name?: string): string; private generateCreateTable; private generateDropTable; private generateAlterUp; private generateAlterDown; private generateAddColumn; private generateAlterColumn; private generateCreateIndex; private generateAddForeignKey; private generateColumnCall; private generateIndexCall; private getColumnMethod; private generateColumnOptionsObject; private generateColumnOptions; private formatValue; private generateDescription; private indentBlock; } /** * Factory function to create a MigrationCodeGenerator. */ export declare function createMigrationCodeGenerator(options?: MigrationCodeOptions): MigrationCodeGenerator; //# sourceMappingURL=migrationCodeGenerator.d.ts.map