import type { ColumnBuilderBaseConfig, MakeColumnConfig } from '../../column-builder.js'; import type { ColumnBaseConfig } from '../../column.js'; import { entityKind } from '../../entity.js'; import type { AnyPgTable } from '../table.js'; import { type Writable } from '../../utils.js'; import { PgColumn, PgColumnBuilder } from './common.js'; export type PgVarcharBuilderInitial = PgVarcharBuilder<{ name: TName; dataType: 'string'; columnType: 'PgVarchar'; data: TEnum[number]; driverParam: string; enumValues: TEnum; length: TLength; }>; export declare class PgVarcharBuilder & { length?: number | undefined; }> extends PgColumnBuilder { static readonly [entityKind]: string; constructor(name: T['name'], config: PgVarcharConfig); /** @internal */ build(table: AnyPgTable<{ name: TTableName; }>): PgVarchar & { length: T['length']; }>; } export declare class PgVarchar & { length?: number | undefined; }> extends PgColumn { static readonly [entityKind]: string; readonly length: T["length"]; readonly enumValues: T["enumValues"]; getSQLType(): string; } export interface PgVarcharConfig { enum?: TEnum; length?: TLength; } export declare function varchar(): PgVarcharBuilderInitial<'', [string, ...string[]], undefined>; export declare function varchar, L extends number | undefined>(config?: PgVarcharConfig, L>): PgVarcharBuilderInitial<'', Writable, L>; export declare function varchar, L extends number | undefined>(name: TName, config?: PgVarcharConfig, L>): PgVarcharBuilderInitial, L>; //# sourceMappingURL=varchar.d.ts.map