import type { DatabaseSync } from "node:sqlite"; import type { Column } from "../tables/queries.ts"; export interface DesiredColumn { name: string; originalName: string; type: string; dflt_value: string; notnull: boolean; fkRef: string; } export interface PendingChange { tableName: string; desiredColumns: DesiredColumn[]; } export declare function ensurePendingChangesTable(db: DatabaseSync): void; export declare function savePendingChanges(db: DatabaseSync, tableName: string, columns: DesiredColumn[]): void; export declare function getAllPendingChanges(db: DatabaseSync): PendingChange[]; export declare function getPendingForTable(db: DatabaseSync, tableName: string): DesiredColumn[] | null; export declare function clearPendingChanges(db: DatabaseSync): void; export declare function deletePendingForTable(db: DatabaseSync, tableName: string): void; export declare function renameTable(db: DatabaseSync, oldName: string, newName: string): void; export declare function generateCreateTableSQL(tableName: string, cols: DesiredColumn[]): string; export declare function generateDiffSQL(tableName: string, current: Column[], desired: DesiredColumn[], currentFKs?: ForeignKey[]): string; export interface TableSchema { name: string; columns: Column[]; foreignKeys: ForeignKey[]; } export interface ForeignKey { from: string; table: string; to: string; } export declare function getForeignKeys(db: DatabaseSync, table: string): ForeignKey[]; export declare function getFullSchema(db: DatabaseSync): TableSchema[]; //# sourceMappingURL=queries.d.ts.map