UNPKG

ts-sql-query

Version:

Type-safe SQL query builder like QueryDSL or JOOQ in Java or Linq in .Net for TypeScript with MariaDB, MySql, Oracle, PostgreSql, Sqlite and SqlServer support.

307 lines 102 kB
import { BooleanValueSource, NumberValueSource, StringValueSource, DateValueSource, TimeValueSource, DateTimeValueSource, EqualableValueSource, IntValueSource, DoubleValueSource, LocalDateValueSource, LocalTimeValueSource, LocalDateTimeValueSource, TypeSafeStringValueSource, StringNumberValueSource, StringIntValueSource, StringDoubleValueSource, ComparableValueSource, BigintValueSource, TypeSafeBigintValueSource, TypeSafeUuidValueSource, UuidValueSource, IBooleanValueSource, IStringIntValueSource, IStringNumberValueSource, IIntValueSource, INumberValueSource, ITypeSafeBigintValueSource, IBigintValueSource, IStringDoubleValueSource, IDoubleValueSource, ITypeSafeStringValueSource, IStringValueSource, ITypeSafeUuidValueSource, IUuidValueSource, ILocalDateValueSource, IDateValueSource, ILocalTimeValueSource, ITimeValueSource, ILocalDateTimeValueSource, IDateTimeValueSource, IEqualableValueSource, IComparableValueSource, CustomIntValueSource, CustomDoubleValueSource, CustomUuidValueSource, CustomLocalDateTimeValueSource, ICustomIntValueSource, ICustomDoubleValueSource, ICustomUuidValueSource, ICustomLocalDateValueSource, ICustomLocalTimeValueSource, ICustomLocalDateTimeValueSource, CustomLocalDateValueSource, CustomLocalTimeValueSource } from "./expressions/values"; import { ITable, OfDB } from "./utils/ITableOrView"; import type { TypeAdapter } from "./TypeAdapter"; import type { AliasedTableOrView, AutogeneratedPrimaryKeyColumnsTypesOf, OldValues, OuterJoinSourceOf, ValuesForInsert } from "./utils/tableOrViewUtils"; import { Column, ColumnWithDefaultValue, ComputedColumn, OptionalColumn, PrimaryKeyAutogeneratedColumn, PrimaryKeyColumn } from "./utils/Column"; import type { AnyDB, MariaDB, MySql, NoopDB, Oracle, PostgreSql, Sqlite, SqlServer, TypeSafeDB } from "./databases"; import { database, tableName, tableOrViewRef, type, viewName } from "./utils/symbols"; import { IConnection } from "./utils/IConnection"; import type { TABLE } from "./typeMarks/TABLE"; import type { BigintFragmentExpression, BooleanFragmentExpression, ComparableFragmentExpression, CustomDoubleFragmentExpression, CustomIntFragmentExpression, CustomLocalDateFragmentExpression, CustomLocalDateTimeFragmentExpression, CustomLocalTimeFragmentExpression, CustomUuidFragmentExpression, DateFragmentExpression, DateTimeFragmentExpression, DoubleFragmentExpression, EqualableFragmentExpression, IntFragmentExpression, LocalDateFragmentExpression, LocalDateTimeFragmentExpression, LocalTimeFragmentExpression, NumberFragmentExpression, StringDoubleFragmentExpression, StringFragmentExpression, StringIntFragmentExpression, StringNumberFragmentExpression, TimeFragmentExpression, TypeSafeBigintFragmentExpression, TypeSafeStringFragmentExpression, TypeSafeUuidFragmentExpression, UuidFragmentExpression } from "./expressions/fragment"; declare class TableOf<REF extends TABLE<AnyDB, any>> implements ITable<REF> { [database]: REF[typeof database]; [type]: 'table'; [viewName]: REF[typeof tableName]; [tableOrViewRef]: REF; private __name; private __as?; private __forUseInLeftJoin?; private __type; private __template?; private __oldValues?; private __valuesForInsert?; constructor(name: string); as<ALIAS extends string>(as: ALIAS): AliasedTableOrView<this, ALIAS>; forUseInLeftJoin(): OuterJoinSourceOf<this, ''>; forUseInLeftJoinAs<ALIAS extends string>(as: ALIAS): OuterJoinSourceOf<this, ALIAS>; oldValues(this: { [database]: SqlServer; }): OldValues<this>; oldValues(this: { [database]: NoopDB; }): OldValues<this>; oldValues(this: { [database]: PostgreSql; }): [AutogeneratedPrimaryKeyColumnsTypesOf<this>] extends [never] ? never : OldValues<this>; oldValues(this: PostgreSql | SqlServer | NoopDB): never; valuesForInsert(this: { [database]: PostgreSql; }): ValuesForInsert<this>; valuesForInsert(this: { [database]: Sqlite; }): ValuesForInsert<this>; valuesForInsert(this: { [database]: MariaDB; }): ValuesForInsert<this>; valuesForInsert(this: { [database]: MySql; }): ValuesForInsert<this>; valuesForInsert(this: { [database]: NoopDB; }): ValuesForInsert<this>; valuesForInsert(this: PostgreSql | Sqlite | MariaDB | MySql | NoopDB): never; protected column(name: string, type: 'boolean', adapter?: TypeAdapter): BooleanValueSource<REF, 'required'> & Column; /** @deprecated 'stringInt' type is deprecated, define your customInt instead */ protected column(this: OfDB<TypeSafeDB>, name: string, type: 'stringInt', adapter?: TypeAdapter): StringIntValueSource<REF, 'required'> & Column; /** @deprecated 'stringInt' type is deprecated, define your customInt instead */ protected column(name: string, type: 'stringInt', adapter?: TypeAdapter): StringNumberValueSource<REF, 'required'> & Column; protected column(this: OfDB<TypeSafeDB>, name: string, type: 'int', adapter?: TypeAdapter): IntValueSource<REF, 'required'> & Column; protected column(name: string, type: 'int', adapter?: TypeAdapter): NumberValueSource<REF, 'required'> & Column; protected column(this: OfDB<TypeSafeDB>, name: string, type: 'bigint', adapter?: TypeAdapter): TypeSafeBigintValueSource<REF, 'required'> & Column; protected column(name: string, type: 'bigint', adapter?: TypeAdapter): BigintValueSource<REF, 'required'> & Column; /** @deprecated 'stringDouble' type is deprecated, define your customInt instead */ protected column(this: OfDB<TypeSafeDB>, name: string, type: 'stringDouble', adapter?: TypeAdapter): StringDoubleValueSource<REF, 'required'> & Column; /** @deprecated 'stringDouble' type is deprecated, define your customInt instead */ protected column(name: string, type: 'stringDouble', adapter?: TypeAdapter): StringNumberValueSource<REF, 'required'> & Column; protected column(this: OfDB<TypeSafeDB>, name: string, type: 'double', adapter?: TypeAdapter): DoubleValueSource<REF, 'required'> & Column; protected column(name: string, type: 'double', adapter?: TypeAdapter): NumberValueSource<REF, 'required'> & Column; protected column(this: OfDB<TypeSafeDB>, name: string, type: 'string', adapter?: TypeAdapter): TypeSafeStringValueSource<REF, 'required'> & Column; protected column(name: string, type: 'string', adapter?: TypeAdapter): StringValueSource<REF, 'required'> & Column; protected column(this: OfDB<TypeSafeDB>, name: string, type: 'uuid', adapter?: TypeAdapter): TypeSafeUuidValueSource<REF, 'required'> & Column; protected column(name: string, type: 'uuid', adapter?: TypeAdapter): UuidValueSource<REF, 'required'> & Column; protected column(this: OfDB<TypeSafeDB>, name: string, type: 'localDate', adapter?: TypeAdapter): LocalDateValueSource<REF, 'required'> & Column; protected column(name: string, type: 'localDate', adapter?: TypeAdapter): DateValueSource<REF, 'required'> & Column; protected column(this: OfDB<TypeSafeDB>, name: string, type: 'localTime', adapter?: TypeAdapter): LocalTimeValueSource<REF, 'required'> & Column; protected column(name: string, type: 'localTime', adapter?: TypeAdapter): TimeValueSource<REF, 'required'> & Column; protected column(this: OfDB<TypeSafeDB>, name: string, type: 'localDateTime', adapter?: TypeAdapter): LocalDateTimeValueSource<REF, 'required'> & Column; protected column(name: string, type: 'localDateTime', adapter?: TypeAdapter): DateTimeValueSource<REF, 'required'> & Column; protected column<T, TYPE_NAME extends string>(name: string, type: 'customInt', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomIntValueSource<REF, T, TYPE_NAME, 'required'> & Column; protected column<T, TYPE_NAME extends string>(name: string, type: 'customDouble', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomDoubleValueSource<REF, T, TYPE_NAME, 'required'> & Column; protected column<T, TYPE_NAME extends string>(name: string, type: 'customUuid', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomUuidValueSource<REF, T, TYPE_NAME, 'required'> & Column; protected column<T, TYPE_NAME extends string>(name: string, type: 'customLocalDate', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalDateValueSource<REF, T, TYPE_NAME, 'required'> & Column; protected column<T, TYPE_NAME extends string>(name: string, type: 'customLocalTime', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalTimeValueSource<REF, T, TYPE_NAME, 'required'> & Column; protected column<T, TYPE_NAME extends string>(name: string, type: 'customLocalDateTime', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalDateTimeValueSource<REF, T, TYPE_NAME, 'required'> & Column; protected column<T, TYPE_NAME extends string>(name: string, type: 'enum', typeName: TYPE_NAME, adapter?: TypeAdapter): EqualableValueSource<REF, T, TYPE_NAME, 'required'> & Column; protected column<T, TYPE_NAME extends string>(name: string, type: 'custom', typeName: TYPE_NAME, adapter?: TypeAdapter): EqualableValueSource<REF, T, TYPE_NAME, 'required'> & Column; protected column<T, TYPE_NAME extends string>(name: string, type: 'customComparable', typeName: TYPE_NAME, adapter?: TypeAdapter): ComparableValueSource<REF, T, TYPE_NAME, 'required'> & Column; protected column<T>(name: string, type: 'customInt', typeName: string, adapter?: TypeAdapter): CustomIntValueSource<REF, T, T, 'required'> & Column; protected column<T>(name: string, type: 'customDouble', typeName: string, adapter?: TypeAdapter): CustomDoubleValueSource<REF, T, T, 'required'> & Column; protected column<T>(name: string, type: 'customUuid', typeName: string, adapter?: TypeAdapter): CustomUuidValueSource<REF, T, T, 'required'> & Column; protected column<T>(name: string, type: 'customLocalDate', typeName: string, adapter?: TypeAdapter): CustomLocalDateValueSource<REF, T, T, 'required'> & Column; protected column<T>(name: string, type: 'customLocalTime', typeName: string, adapter?: TypeAdapter): CustomLocalTimeValueSource<REF, T, T, 'required'> & Column; protected column<T>(name: string, type: 'customLocalDateTime', typeName: string, adapter?: TypeAdapter): CustomLocalDateTimeValueSource<REF, T, T, 'required'> & Column; protected column<T>(name: string, type: 'enum', typeName: string, adapter?: TypeAdapter): EqualableValueSource<REF, T, T, 'required'> & Column; protected column<T>(name: string, type: 'custom', typeName: string, adapter?: TypeAdapter): EqualableValueSource<REF, T, T, 'required'> & Column; protected column<T>(name: string, type: 'customComparable', typeName: string, adapter?: TypeAdapter): ComparableValueSource<REF, T, T, 'required'> & Column; protected optionalColumn(name: string, type: 'boolean', adapter?: TypeAdapter): BooleanValueSource<REF, 'optional'> & OptionalColumn; /** @deprecated 'stringInt' type is deprecated, define your customInt instead */ protected optionalColumn(this: OfDB<TypeSafeDB>, name: string, type: 'stringInt', adapter?: TypeAdapter): StringIntValueSource<REF, 'optional'> & OptionalColumn; /** @deprecated 'stringInt' type is deprecated, define your customInt instead */ protected optionalColumn(name: string, type: 'stringInt', adapter?: TypeAdapter): StringNumberValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(this: OfDB<TypeSafeDB>, name: string, type: 'int', adapter?: TypeAdapter): IntValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(name: string, type: 'int', adapter?: TypeAdapter): NumberValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(this: OfDB<TypeSafeDB>, name: string, type: 'bigint', adapter?: TypeAdapter): TypeSafeBigintValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(name: string, type: 'bigint', adapter?: TypeAdapter): BigintValueSource<REF, 'optional'> & OptionalColumn; /** @deprecated 'stringDouble' type is deprecated, define your customInt instead */ protected optionalColumn(this: OfDB<TypeSafeDB>, name: string, type: 'stringDouble', adapter?: TypeAdapter): StringDoubleValueSource<REF, 'optional'> & OptionalColumn; /** @deprecated 'stringDouble' type is deprecated, define your customInt instead */ protected optionalColumn(name: string, type: 'stringDouble', adapter?: TypeAdapter): StringNumberValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(this: OfDB<TypeSafeDB>, name: string, type: 'double', adapter?: TypeAdapter): DoubleValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(name: string, type: 'double', adapter?: TypeAdapter): NumberValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(this: OfDB<TypeSafeDB>, name: string, type: 'string', adapter?: TypeAdapter): TypeSafeStringValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(name: string, type: 'string', adapter?: TypeAdapter): StringValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(this: OfDB<TypeSafeDB>, name: string, type: 'uuid', adapter?: TypeAdapter): TypeSafeUuidValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(name: string, type: 'uuid', adapter?: TypeAdapter): UuidValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(this: OfDB<TypeSafeDB>, name: string, type: 'localDate', adapter?: TypeAdapter): LocalDateValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(name: string, type: 'localDate', adapter?: TypeAdapter): DateValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(this: OfDB<TypeSafeDB>, name: string, type: 'localTime', adapter?: TypeAdapter): LocalTimeValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(name: string, type: 'localTime', adapter?: TypeAdapter): TimeValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(this: OfDB<TypeSafeDB>, name: string, type: 'localDateTime', adapter?: TypeAdapter): LocalDateTimeValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn(name: string, type: 'localDateTime', adapter?: TypeAdapter): DateTimeValueSource<REF, 'optional'> & OptionalColumn; protected optionalColumn<T, TYPE_NAME extends string>(name: string, type: 'customInt', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomIntValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn; protected optionalColumn<T, TYPE_NAME extends string>(name: string, type: 'customDouble', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomDoubleValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn; protected optionalColumn<T, TYPE_NAME extends string>(name: string, type: 'customUuid', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomUuidValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn; protected optionalColumn<T, TYPE_NAME extends string>(name: string, type: 'customLocalDate', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalDateValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn; protected optionalColumn<T, TYPE_NAME extends string>(name: string, type: 'customLocalTime', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalTimeValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn; protected optionalColumn<T, TYPE_NAME extends string>(name: string, type: 'customLocalDateTime', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalDateTimeValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn; protected optionalColumn<T, TYPE_NAME extends string>(name: string, type: 'enum', typeName: TYPE_NAME, adapter?: TypeAdapter): EqualableValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn; protected optionalColumn<T, TYPE_NAME extends string>(name: string, type: 'custom', typeName: TYPE_NAME, adapter?: TypeAdapter): EqualableValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn; protected optionalColumn<T, TYPE_NAME extends string>(name: string, type: 'customComparable', typeName: TYPE_NAME, adapter?: TypeAdapter): ComparableValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn; protected optionalColumn<T>(name: string, type: 'customInt', typeName: string, adapter?: TypeAdapter): CustomIntValueSource<REF, T, T, 'optional'> & OptionalColumn; protected optionalColumn<T>(name: string, type: 'customDouble', typeName: string, adapter?: TypeAdapter): CustomDoubleValueSource<REF, T, T, 'optional'> & OptionalColumn; protected optionalColumn<T>(name: string, type: 'customUuid', typeName: string, adapter?: TypeAdapter): CustomUuidValueSource<REF, T, T, 'optional'> & OptionalColumn; protected optionalColumn<T>(name: string, type: 'customLocalDate', typeName: string, adapter?: TypeAdapter): CustomLocalDateValueSource<REF, T, T, 'optional'> & OptionalColumn; protected optionalColumn<T>(name: string, type: 'customLocalTime', typeName: string, adapter?: TypeAdapter): CustomLocalTimeValueSource<REF, T, T, 'optional'> & OptionalColumn; protected optionalColumn<T>(name: string, type: 'customLocalDateTime', typeName: string, adapter?: TypeAdapter): CustomLocalDateTimeValueSource<REF, T, T, 'optional'> & OptionalColumn; protected optionalColumn<T>(name: string, type: 'enum', typeName: string, adapter?: TypeAdapter): EqualableValueSource<REF, T, T, 'optional'> & OptionalColumn; protected optionalColumn<T>(name: string, type: 'custom', typeName: string, adapter?: TypeAdapter): EqualableValueSource<REF, T, T, 'optional'> & OptionalColumn; protected optionalColumn<T>(name: string, type: 'customComparable', typeName: string, adapter?: TypeAdapter): ComparableValueSource<REF, T, T, 'optional'> & OptionalColumn; protected columnWithDefaultValue(name: string, type: 'boolean', adapter?: TypeAdapter): BooleanValueSource<REF, 'required'> & ColumnWithDefaultValue; /** @deprecated 'stringInt' type is deprecated, define your customInt instead */ protected columnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'stringInt', adapter?: TypeAdapter): StringIntValueSource<REF, 'required'> & ColumnWithDefaultValue; /** @deprecated 'stringInt' type is deprecated, define your customInt instead */ protected columnWithDefaultValue(name: string, type: 'stringInt', adapter?: TypeAdapter): StringNumberValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'int', adapter?: TypeAdapter): IntValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(name: string, type: 'int', adapter?: TypeAdapter): NumberValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'bigint', adapter?: TypeAdapter): TypeSafeBigintValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(name: string, type: 'bigint', adapter?: TypeAdapter): BigintValueSource<REF, 'required'> & ColumnWithDefaultValue; /** @deprecated 'stringDouble' type is deprecated, define your customInt instead */ protected columnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'stringDouble', adapter?: TypeAdapter): StringDoubleValueSource<REF, 'required'> & ColumnWithDefaultValue; /** @deprecated 'stringDouble' type is deprecated, define your customInt instead */ protected columnWithDefaultValue(name: string, type: 'stringDouble', adapter?: TypeAdapter): StringNumberValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'double', adapter?: TypeAdapter): DoubleValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(name: string, type: 'double', adapter?: TypeAdapter): NumberValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'string', adapter?: TypeAdapter): TypeSafeStringValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(name: string, type: 'string', adapter?: TypeAdapter): StringValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'uuid', adapter?: TypeAdapter): TypeSafeUuidValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(name: string, type: 'uuid', adapter?: TypeAdapter): UuidValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'localDate', adapter?: TypeAdapter): LocalDateValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(name: string, type: 'localDate', adapter?: TypeAdapter): DateValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'localTime', adapter?: TypeAdapter): LocalTimeValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(name: string, type: 'localTime', adapter?: TypeAdapter): TimeValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'localDateTime', adapter?: TypeAdapter): LocalDateTimeValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue(name: string, type: 'localDateTime', adapter?: TypeAdapter): DateTimeValueSource<REF, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'customInt', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomIntValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'customDouble', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomDoubleValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'customUuid', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomUuidValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'customLocalDate', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalDateValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'customLocalTime', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalTimeValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'customLocalDateTime', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalDateTimeValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'enum', typeName: TYPE_NAME, adapter?: TypeAdapter): EqualableValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'custom', typeName: TYPE_NAME, adapter?: TypeAdapter): EqualableValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'customComparable', typeName: TYPE_NAME, adapter?: TypeAdapter): ComparableValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T>(name: string, type: 'customInt', typeName: string, adapter?: TypeAdapter): CustomIntValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T>(name: string, type: 'customDouble', typeName: string, adapter?: TypeAdapter): CustomDoubleValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T>(name: string, type: 'customUuid', typeName: string, adapter?: TypeAdapter): CustomUuidValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T>(name: string, type: 'customLocalDate', typeName: string, adapter?: TypeAdapter): CustomLocalDateValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T>(name: string, type: 'customLocalTime', typeName: string, adapter?: TypeAdapter): CustomLocalTimeValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T>(name: string, type: 'customLocalDateTime', typeName: string, adapter?: TypeAdapter): CustomLocalDateTimeValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T>(name: string, type: 'enum', typeName: string, adapter?: TypeAdapter): EqualableValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T>(name: string, type: 'custom', typeName: string, adapter?: TypeAdapter): EqualableValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue; protected columnWithDefaultValue<T>(name: string, type: 'customComparable', typeName: string, adapter?: TypeAdapter): ComparableValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(name: string, type: 'boolean', adapter?: TypeAdapter): BooleanValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; /** @deprecated 'stringInt' type is deprecated, define your customInt instead */ protected optionalColumnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'stringInt', adapter?: TypeAdapter): StringIntValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; /** @deprecated 'stringInt' type is deprecated, define your customInt instead */ protected optionalColumnWithDefaultValue(name: string, type: 'stringInt', adapter?: TypeAdapter): StringNumberValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'int', adapter?: TypeAdapter): IntValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(name: string, type: 'int', adapter?: TypeAdapter): NumberValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'bigint', adapter?: TypeAdapter): TypeSafeBigintValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(name: string, type: 'bigint', adapter?: TypeAdapter): BigintValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; /** @deprecated 'stringDouble' type is deprecated, define your customInt instead */ protected optionalColumnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'stringDouble', adapter?: TypeAdapter): StringDoubleValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; /** @deprecated 'stringDouble' type is deprecated, define your customInt instead */ protected optionalColumnWithDefaultValue(name: string, type: 'stringDouble', adapter?: TypeAdapter): StringNumberValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'double', adapter?: TypeAdapter): DoubleValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(name: string, type: 'double', adapter?: TypeAdapter): NumberValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'string', adapter?: TypeAdapter): TypeSafeStringValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(name: string, type: 'string', adapter?: TypeAdapter): StringValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'uuid', adapter?: TypeAdapter): TypeSafeUuidValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(name: string, type: 'uuid', adapter?: TypeAdapter): UuidValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'localDate', adapter?: TypeAdapter): LocalDateValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(name: string, type: 'localDate', adapter?: TypeAdapter): DateValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'localTime', adapter?: TypeAdapter): LocalTimeValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(name: string, type: 'localTime', adapter?: TypeAdapter): TimeValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(this: OfDB<TypeSafeDB>, name: string, type: 'localDateTime', adapter?: TypeAdapter): LocalDateTimeValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue(name: string, type: 'localDateTime', adapter?: TypeAdapter): DateTimeValueSource<REF, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'customInt', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomIntValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'customDouble', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomDoubleValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'customUuid', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomUuidValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'customLocalDate', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalDateValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'customLocalTime', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalTimeValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'customLocalDateTime', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalDateTimeValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'enum', typeName: TYPE_NAME, adapter?: TypeAdapter): EqualableValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'custom', typeName: TYPE_NAME, adapter?: TypeAdapter): EqualableValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T, TYPE_NAME extends string>(name: string, type: 'customComparable', typeName: TYPE_NAME, adapter?: TypeAdapter): ComparableValueSource<REF, T, TYPE_NAME, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T>(name: string, type: 'customInt', typeName: string, adapter?: TypeAdapter): CustomIntValueSource<REF, T, T, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T>(name: string, type: 'customDouble', typeName: string, adapter?: TypeAdapter): CustomDoubleValueSource<REF, T, T, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T>(name: string, type: 'customUuid', typeName: string, adapter?: TypeAdapter): CustomUuidValueSource<REF, T, T, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T>(name: string, type: 'customLocalDate', typeName: string, adapter?: TypeAdapter): CustomLocalDateValueSource<REF, T, T, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T>(name: string, type: 'customLocalTime', typeName: string, adapter?: TypeAdapter): CustomLocalTimeValueSource<REF, T, T, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T>(name: string, type: 'customLocalDateTime', typeName: string, adapter?: TypeAdapter): CustomLocalDateTimeValueSource<REF, T, T, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T>(name: string, type: 'enum', typeName: string, adapter?: TypeAdapter): EqualableValueSource<REF, T, T, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T>(name: string, type: 'custom', typeName: string, adapter?: TypeAdapter): EqualableValueSource<REF, T, T, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected optionalColumnWithDefaultValue<T>(name: string, type: 'customComparable', typeName: string, adapter?: TypeAdapter): ComparableValueSource<REF, T, T, 'optional'> & OptionalColumn & ColumnWithDefaultValue; protected autogeneratedPrimaryKey(name: string, type: 'boolean', adapter?: TypeAdapter): BooleanValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; /** @deprecated 'stringInt' type is deprecated, define your customInt instead */ protected autogeneratedPrimaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'stringInt', adapter?: TypeAdapter): StringIntValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; /** @deprecated 'stringInt' type is deprecated, define your customInt instead */ protected autogeneratedPrimaryKey(name: string, type: 'stringInt', adapter?: TypeAdapter): StringNumberValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'int', adapter?: TypeAdapter): IntValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(name: string, type: 'int', adapter?: TypeAdapter): NumberValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'bigint', adapter?: TypeAdapter): TypeSafeBigintValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(name: string, type: 'bigint', adapter?: TypeAdapter): BigintValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; /** @deprecated 'stringDouble' type is deprecated, define your customInt instead */ protected autogeneratedPrimaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'stringDouble', adapter?: TypeAdapter): StringDoubleValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; /** @deprecated 'stringDouble' type is deprecated, define your customInt instead */ protected autogeneratedPrimaryKey(name: string, type: 'stringDouble', adapter?: TypeAdapter): StringNumberValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'double', adapter?: TypeAdapter): DoubleValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(name: string, type: 'double', adapter?: TypeAdapter): NumberValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'string', adapter?: TypeAdapter): TypeSafeStringValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(name: string, type: 'string', adapter?: TypeAdapter): StringValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'uuid', adapter?: TypeAdapter): TypeSafeUuidValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(name: string, type: 'uuid', adapter?: TypeAdapter): UuidValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'localDate', adapter?: TypeAdapter): LocalDateValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(name: string, type: 'localDate', adapter?: TypeAdapter): DateValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'localTime', adapter?: TypeAdapter): LocalTimeValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(name: string, type: 'localTime', adapter?: TypeAdapter): TimeValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'localDateTime', adapter?: TypeAdapter): LocalDateTimeValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey(name: string, type: 'localDateTime', adapter?: TypeAdapter): DateTimeValueSource<REF, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T, TYPE_NAME extends string>(name: string, type: 'customInt', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomIntValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T, TYPE_NAME extends string>(name: string, type: 'customDouble', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomDoubleValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T, TYPE_NAME extends string>(name: string, type: 'customUuid', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomUuidValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T, TYPE_NAME extends string>(name: string, type: 'customLocalDate', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalDateValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T, TYPE_NAME extends string>(name: string, type: 'customLocalTime', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalTimeValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T, TYPE_NAME extends string>(name: string, type: 'customLocalDateTime', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalDateTimeValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T, TYPE_NAME extends string>(name: string, type: 'enum', typeName: TYPE_NAME, adapter?: TypeAdapter): EqualableValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T, TYPE_NAME extends string>(name: string, type: 'custom', typeName: TYPE_NAME, adapter?: TypeAdapter): EqualableValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T, TYPE_NAME extends string>(name: string, type: 'customComparable', typeName: TYPE_NAME, adapter?: TypeAdapter): ComparableValueSource<REF, T, TYPE_NAME, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T>(name: string, type: 'customInt', typeName: string, adapter?: TypeAdapter): CustomIntValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T>(name: string, type: 'customDouble', typeName: string, adapter?: TypeAdapter): CustomDoubleValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T>(name: string, type: 'customUuid', typeName: string, adapter?: TypeAdapter): CustomUuidValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T>(name: string, type: 'customLocalDate', typeName: string, adapter?: TypeAdapter): CustomLocalDateValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T>(name: string, type: 'customLocalTime', typeName: string, adapter?: TypeAdapter): CustomLocalTimeValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T>(name: string, type: 'customLocalDateTime', typeName: string, adapter?: TypeAdapter): CustomLocalDateTimeValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T>(name: string, type: 'enum', typeName: string, adapter?: TypeAdapter): EqualableValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T>(name: string, type: 'custom', typeName: string, adapter?: TypeAdapter): EqualableValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected autogeneratedPrimaryKey<T>(name: string, type: 'customComparable', typeName: string, adapter?: TypeAdapter): ComparableValueSource<REF, T, T, 'required'> & ColumnWithDefaultValue & PrimaryKeyColumn & PrimaryKeyAutogeneratedColumn; protected primaryKey(name: string, type: 'boolean', adapter?: TypeAdapter): BooleanValueSource<REF, 'required'> & PrimaryKeyColumn; /** @deprecated 'stringInt' type is deprecated, define your customInt instead */ protected primaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'stringInt', adapter?: TypeAdapter): StringIntValueSource<REF, 'required'> & PrimaryKeyColumn; /** @deprecated 'stringInt' type is deprecated, define your customInt instead */ protected primaryKey(name: string, type: 'stringInt', adapter?: TypeAdapter): StringNumberValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'int', adapter?: TypeAdapter): IntValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(name: string, type: 'int', adapter?: TypeAdapter): NumberValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'bigint', adapter?: TypeAdapter): TypeSafeBigintValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(name: string, type: 'bigint', adapter?: TypeAdapter): BigintValueSource<REF, 'required'> & PrimaryKeyColumn; /** @deprecated 'stringDouble' type is deprecated, define your customInt instead */ protected primaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'stringDouble', adapter?: TypeAdapter): StringDoubleValueSource<REF, 'required'> & PrimaryKeyColumn; /** @deprecated 'stringDouble' type is deprecated, define your customInt instead */ protected primaryKey(name: string, type: 'stringDouble', adapter?: TypeAdapter): StringNumberValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'double', adapter?: TypeAdapter): DoubleValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(name: string, type: 'double', adapter?: TypeAdapter): NumberValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'string', adapter?: TypeAdapter): TypeSafeStringValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(name: string, type: 'string', adapter?: TypeAdapter): StringValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'uuid', adapter?: TypeAdapter): TypeSafeUuidValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(name: string, type: 'uuid', adapter?: TypeAdapter): UuidValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'localDate', adapter?: TypeAdapter): LocalDateValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(name: string, type: 'localDate', adapter?: TypeAdapter): DateValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'localTime', adapter?: TypeAdapter): LocalTimeValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(name: string, type: 'localTime', adapter?: TypeAdapter): TimeValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(this: OfDB<TypeSafeDB>, name: string, type: 'localDateTime', adapter?: TypeAdapter): LocalDateTimeValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey(name: string, type: 'localDateTime', adapter?: TypeAdapter): DateTimeValueSource<REF, 'required'> & PrimaryKeyColumn; protected primaryKey<T, TYPE_NAME extends string>(name: string, type: 'customInt', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomIntValueSource<REF, T, TYPE_NAME, 'required'> & PrimaryKeyColumn; protected primaryKey<T, TYPE_NAME extends string>(name: string, type: 'customDouble', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomDoubleValueSource<REF, T, TYPE_NAME, 'required'> & PrimaryKeyColumn; protected primaryKey<T, TYPE_NAME extends string>(name: string, type: 'customUuid', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomUuidValueSource<REF, T, TYPE_NAME, 'required'> & PrimaryKeyColumn; protected primaryKey<T, TYPE_NAME extends string>(name: string, type: 'customLocalDate', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalDateValueSource<REF, T, TYPE_NAME, 'required'> & PrimaryKeyColumn; protected primaryKey<T, TYPE_NAME extends string>(name: string, type: 'customLocalTime', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalTimeValueSource<REF, T, TYPE_NAME, 'required'> & PrimaryKeyColumn; protected primaryKey<T, TYPE_NAME extends string>(name: string, type: 'customLocalDateTime', typeName: TYPE_NAME, adapter?: TypeAdapter): CustomLocalDateTimeValueSource<REF, T, TYPE_NAME, 'required'> & PrimaryKeyColumn; protected primaryKey<T, TYPE_NAME extends string>(name: string, type: 'enum', typeName: TYPE_NAME, adapter?: TypeAdapter): EqualableValueSource<REF, T, TYPE_NAME, 'required'> & PrimaryKeyColumn; protected primaryKey<T, TYPE_NAME extends string>(name: string, type: 'custom', typeName: TYPE_NAME, adapter?: TypeAdapter): EqualableValueSource<REF, T, TYPE_NAME, 'required'> & PrimaryKeyColumn; protected primaryKey<T, TYPE_NAME extends string>(name: string, type: 'customComparable', typeName: TYPE_NAME, adapter?: TypeAdapter): ComparableValueSource<REF, T, TYPE_NAME, 'required'> & PrimaryKeyColumn; protected primaryKey<T>(name: string, type: 'customInt', typeName: string, adapter?: TypeAdapter): CustomIntValueSource<REF, T, T, 'required'> & PrimaryKeyColumn; protected primaryKey<T>(name: string, type: 'customDouble', typeName: string, adapter?: TypeAdapter): CustomDoubleValueSource<REF, T, T, 'required'> & PrimaryKeyColumn; protected primaryKey<T>(name: string, type: 'customUuid', typeName: string, adapter?: TypeAdapter): CustomUuidValueSource<REF, T, T, 'required'> & PrimaryKeyColumn; protected primaryKey<T>(name: string, type: 'customLocalDate', typeName: string, adapter?: TypeAdapter): CustomLocalDateValueSource<REF, T, T, 'required'> & PrimaryKeyColumn; protected primaryKey<T>(name: string, type: 'customLocalTime', typeName: string, adapter?: TypeAdapter): CustomLocalTimeValueSource<REF, T, T, 'required'> & PrimaryKeyColumn; protected primaryKey<T>(name: string, type: 'customLocalDateTime', typeName: string, adapter?: TypeAdapter): CustomLocalDateTimeValue