import type * as core from '@prismamedia/graphql-platform'; import * as utils from '@prismamedia/graphql-platform-utils'; import type { Constructor } from 'type-fest'; import type { MariaDBConnector } from '../../../index.js'; import { Table } from '../../table.js'; import { AbstractColumn } from '../abstract-column.js'; import { type DataType, type DataTypeConfig } from '../data-type.js'; import { FullTextIndex } from '../index/full-text.js'; export * from './leaf/diagnosis.js'; export declare const forbiddenReferenceDataTypeConstructors: ReadonlyArray>; export interface LeafColumnConfig { /** * Optional, the column's name * * Default: the leaf's name */ name?: utils.Nillable; /** * Optional, fine-tune the column's data-type * * Default: guessed from the leaf's definition */ dataType?: utils.Nillable; /** * Optional, either this column is auto-increment or not * * Default: false */ autoIncrement?: utils.OptionalFlag; /** * Optional, either this column has a full-text index or not * * Default: false */ fullTextIndex?: utils.OptionalFlag; } export declare class LeafColumn extends AbstractColumn { readonly leaf: core.Leaf; readonly config?: LeafColumnConfig; readonly configPath: utils.Path; readonly name: string; readonly comment?: string; readonly dataType: DataType; readonly fullTextIndex?: FullTextIndex; constructor(table: Table, leaf: core.Leaf); isAutoIncrement(): boolean; isNullable(): boolean; } //# sourceMappingURL=leaf.d.ts.map