export type DataTypes = string | number | boolean | Date;
export interface NotColumnedFieldType<T extends DataTypes> {
    dataType: T;
    optional?: boolean;
    default?: T;
}
export interface FieldType<T extends DataTypes> extends NotColumnedFieldType<T> {
    columnOrder: number;
}
declare abstract class BaseFieldBuilder<T extends DataTypes> {
    private _optional;
    private _default;
    optional(): this;
    default(value: any): this;
    build(): NotColumnedFieldType<T>;
    abstract getType(): T;
}
export default BaseFieldBuilder;
//# sourceMappingURL=BaseFieldBuilder.d.ts.map