import { Model } from '@contember/schema'; import * as Typesafe from '@contember/typesafe'; import { Client, Literal } from '@contember/database'; type Cell = boolean | number | string | null; export type TransferMapping = { tables: TransferTableMappingMap; }; export type TransferTableMappingMap = Record; export type TransferTableMapping = { name: string; columns: DbColumnSchemaMap; createSelect?: (db: Client, table: TransferTableMapping) => Literal; createInsertStartFragment?: (schema: string, tableName: string, columnNames: readonly string[]) => string; createRowParser?: (db: Client, columns: string[], baseType: Typesafe.Type) => Promise>; }; export type DbColumnSchemaMap = Record; export type DbColumnSchema = { name: string; nullable?: boolean; type: Exclude; } | { name: string; nullable?: boolean; type: Model.ColumnType.Int; sequence?: boolean; } | { name: string; nullable?: boolean; type: Model.ColumnType.Json; schema?: Typesafe.Type; } | { name: string; nullable?: boolean; type: Model.ColumnType.Enum; values: readonly string[]; }; export {}; //# sourceMappingURL=TransferMapping.d.ts.map