import * as utils from '@prismamedia/graphql-platform-utils'; import type { MariaDBBroker } from '../broker.js'; import type { MariaDBConnector, PoolConnection } from '../index.js'; import type { DataType, Schema } from '../schema.js'; import * as schema from '../schema.js'; import { StatementKind } from '../statement.js'; export interface ColumnConfig { dataType: DataType; autoIncrement?: boolean; nullable?: boolean; comment?: string; } export declare class Column { readonly table: TTable; readonly name: string; readonly config: ColumnConfig; readonly qualifiedName: string; readonly fullyQualifiedName: string; readonly dataType: DataType; readonly autoIncrement: boolean; readonly nullable: boolean; readonly comment?: string; constructor(table: TTable, name: string, config: ColumnConfig); } export declare abstract class AbstractTable { readonly broker: MariaDBBroker; readonly name: string; readonly primary: ReadonlyArray; readonly indexes?: ReadonlyArray> | undefined; readonly foreignKeys?: ReadonlyArray> | undefined; readonly connector: MariaDBConnector; readonly schema: Schema; readonly qualifiedName: string; readonly columnsByName: ReadonlyMap>; constructor(broker: MariaDBBroker, name: string, columns: Record, primary: ReadonlyArray, indexes?: ReadonlyArray> | undefined, foreignKeys?: ReadonlyArray> | undefined); toString(): string; getColumnByName(name: Column['name']): Column; escapeColumnIdentifier(name: Column['name'], alias?: string): string; serializeColumnValue(name: Column['name'], value: any): string; setup(connection: PoolConnection, options?: { orReplace?: utils.OptionalFlag; ifNotExists?: utils.OptionalFlag; }): Promise; } //# sourceMappingURL=abstract-table.d.ts.map