import { ColumnDefinition, DataType, JsonValue } from './types';
export declare class ColumnBuilder {
    private definition;
    constructor(type: DataType, initial?: Partial<ColumnDefinition>);
    required(): this;
    unique(): this;
    default(value: JsonValue): this;
    min(value: number): this;
    max(value: number): this;
    enum(values: (string | number | boolean)[]): this;
    pattern(regex: RegExp): this;
    readonly(): this;
    primary(): this;
    ref(tableDotColumn: string): this;
    index(): this;
    build(): ColumnDefinition;
}
export declare function string(): ColumnBuilder;
export declare function number(): ColumnBuilder;
export declare function boolean(options?: {
    format?: ColumnDefinition['booleanFormat'];
}): ColumnBuilder;
export declare function date(): ColumnBuilder;
export declare function json(): ColumnBuilder;
//# sourceMappingURL=columnBuilder.d.ts.map