/** * DeukPack C++ DDL Generator * Converts Deuk structs → SQL CREATE TABLE statements * Supports: MySQL, PostgreSQL, SQLite */ import { DeukPackAST } from '../../types/DeukPackTypes'; export type SqlDialect = 'mysql' | 'postgresql' | 'sqlite'; export declare class CppDdlGenerator { private dialect; private ast; constructor(ast: DeukPackAST, dialect?: SqlDialect); /** * Generate SQL DDL for all table structs */ generate(): Map; /** * Determine if struct represents a database table (opt-in via annotation) */ private isTableStruct; /** * Generate CREATE TABLE statement for single struct */ private generateTableDdl; /** * Parse struct fields into ColumnDef list */ private parseColumns; /** * Determine which fields to include in schema */ private shouldIncludeField; /** * Map Deuk type to SQL type (dialect-aware) */ private deukTypeToSqlType; /** * Parse constraints from struct metadata */ private parseConstraints; /** * Render single column definition */ private renderColumn; /** * Render constraint definition */ private renderConstraint; /** * Convert camelCase to snake_case */ private toSnakeCase; /** * Escape SQL string literals */ private escapeSql; } //# sourceMappingURL=CppDdlGenerator.d.ts.map