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 Equal } from '../../utils.js'; import { PgColumn, PgColumnBuilder } from './common.js'; export type PgLineBuilderInitial = PgLineBuilder<{ name: TName; dataType: 'array'; columnType: 'PgLine'; data: [number, number, number]; driverParam: number | string; enumValues: undefined; }>; export declare class PgLineBuilder> extends PgColumnBuilder { static readonly [entityKind]: string; constructor(name: T['name']); /** @internal */ build(table: AnyPgTable<{ name: TTableName; }>): PgLineTuple>; } export declare class PgLineTuple> extends PgColumn { static readonly [entityKind]: string; getSQLType(): string; mapFromDriverValue(value: string): [number, number, number]; mapToDriverValue(value: [number, number, number]): string; } export type PgLineABCBuilderInitial = PgLineABCBuilder<{ name: TName; dataType: 'json'; columnType: 'PgLineABC'; data: { a: number; b: number; c: number; }; driverParam: string; enumValues: undefined; }>; export declare class PgLineABCBuilder> extends PgColumnBuilder { static readonly [entityKind]: string; constructor(name: T['name']); /** @internal */ build(table: AnyPgTable<{ name: TTableName; }>): PgLineABC>; } export declare class PgLineABC> extends PgColumn { static readonly [entityKind]: string; getSQLType(): string; mapFromDriverValue(value: string): { a: number; b: number; c: number; }; mapToDriverValue(value: { a: number; b: number; c: number; }): string; } export interface PgLineTypeConfig { mode?: T; } export declare function line(): PgLineBuilderInitial<''>; export declare function line(config?: PgLineTypeConfig): Equal extends true ? PgLineABCBuilderInitial<''> : PgLineBuilderInitial<''>; export declare function line(name: TName, config?: PgLineTypeConfig): Equal extends true ? PgLineABCBuilderInitial : PgLineBuilderInitial; //# sourceMappingURL=line.d.ts.map