import type { ColumnBuilderBaseConfig, GeneratedColumnConfig, HasGenerated } from "../../column-builder.cjs"; import type { ColumnBaseConfig } from "../../column.cjs"; import { entityKind } from "../../entity.cjs"; import type { SQL } from "../../sql/index.cjs"; import { type Writable } from "../../utils.cjs"; import { SingleStoreColumn, SingleStoreColumnBuilder } from "./common.cjs"; export type SingleStoreEnumColumnBuilderInitial = SingleStoreEnumColumnBuilder<{ name: TName; dataType: 'string'; columnType: 'SingleStoreEnumColumn'; data: TEnum[number]; driverParam: string; enumValues: TEnum; generated: undefined; }>; export declare class SingleStoreEnumColumnBuilder> extends SingleStoreColumnBuilder { generatedAlwaysAs(as: SQL | (() => SQL) | T['data'], config?: Partial>): HasGenerated; static readonly [entityKind]: string; constructor(name: T['name'], values: T['enumValues']); } export declare class SingleStoreEnumColumn> extends SingleStoreColumn { static readonly [entityKind]: string; readonly enumValues: T["enumValues"]; getSQLType(): string; } export declare function singlestoreEnum>(values: T | Writable): SingleStoreEnumColumnBuilderInitial<'', Writable>; export declare function singlestoreEnum>(name: TName, values: T | Writable): SingleStoreEnumColumnBuilderInitial>;