import type { ColumnBuilderBaseConfig } from "../../column-builder.js"; import type { ColumnBaseConfig } from "../../column.js"; import { entityKind } from "../../entity.js"; import type { AnySingleStoreTable } from "../table.js"; import { type Equal } from "../../utils.js"; import { SingleStoreColumn, SingleStoreColumnBuilder } from "./common.js"; export type SingleStoreDateBuilderInitial = SingleStoreDateBuilder<{ name: TName; dataType: 'date'; columnType: 'SingleStoreDate'; data: Date; driverParam: string | number; enumValues: undefined; generated: undefined; }>; export declare class SingleStoreDateBuilder> extends SingleStoreColumnBuilder { static readonly [entityKind]: string; constructor(name: T['name']); } export declare class SingleStoreDate> extends SingleStoreColumn { static readonly [entityKind]: string; constructor(table: AnySingleStoreTable<{ name: T['tableName']; }>, config: SingleStoreDateBuilder['config']); getSQLType(): string; mapFromDriverValue(value: string): Date; } export type SingleStoreDateStringBuilderInitial = SingleStoreDateStringBuilder<{ name: TName; dataType: 'string'; columnType: 'SingleStoreDateString'; data: string; driverParam: string | number; enumValues: undefined; generated: undefined; }>; export declare class SingleStoreDateStringBuilder> extends SingleStoreColumnBuilder { static readonly [entityKind]: string; constructor(name: T['name']); } export declare class SingleStoreDateString> extends SingleStoreColumn { static readonly [entityKind]: string; constructor(table: AnySingleStoreTable<{ name: T['tableName']; }>, config: SingleStoreDateStringBuilder['config']); getSQLType(): string; } export interface SingleStoreDateConfig { mode?: TMode; } export declare function date(): SingleStoreDateBuilderInitial<''>; export declare function date(config?: SingleStoreDateConfig): Equal extends true ? SingleStoreDateStringBuilderInitial<''> : SingleStoreDateBuilderInitial<''>; export declare function date(name: TName, config?: SingleStoreDateConfig): Equal extends true ? SingleStoreDateStringBuilderInitial : SingleStoreDateBuilderInitial;