pqb 0.18.18 → 0.18.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as orchid_core from 'orchid-core';
2
- import { QueryResultRow, AdapterBase, QueryInput, Sql, QueryBaseCommon, ColumnsShapeBase, QueryInternal, QueryMetaBase, StringKey, Expression, ColumnTypeBase, MaybeArray, TemplateLiteralArgs, ColumnsParsers, getValueKey, ColumnTypesBase, ColumnShapeOutput, DefaultSelectColumns, EmptyObject, DbBase, QueryThen, QueryCatch, TransactionState, SQLQueryArgs, NullableColumn, SetOptional, EmptyTuple, MergeObjects, RawSQLBase, RawSQLValues, ExpressionTypeMethod, DynamicSQLArg, StaticSQLArgs, Spread, Code, OperatorToSQL, ArrayMethodsData, arrayTypeMethods, JSONType, JSONUnknown, JSONTypes, StringTypeData, PrimaryKeyColumn, stringTypeMethods, ForeignKeyTable, name, ColumnNameOfTable, BaseNumberData, NumberTypeMethods, ColumnWithDefault, DateTypeMethods, DateColumnData, EncodeColumn, ParseColumn, ValidationContext, ErrorMessage, ColumnDataBase } from 'orchid-core';
2
+ import { QueryResultRow, AdapterBase, QueryInput, Sql, QueryBaseCommon, ColumnsShapeBase, QueryInternal, QueryMetaBase, StringKey, Expression, ColumnTypeBase, MaybeArray, TemplateLiteralArgs, ColumnsParsers, getValueKey, ColumnTypesBase, ColumnShapeOutput, DefaultSelectColumns, EmptyObject, DbBase, QueryThen, QueryCatch, TransactionState, SQLQueryArgs, NullableColumn, SetOptional, EmptyTuple, MergeObjects, RawSQLBase, RawSQLValues, ExpressionTypeMethod, DynamicSQLArg, StaticSQLArgs, Spread, Code, OperatorToSQL, BaseNumberData, NumberTypeMethods, ColumnWithDefault, StringTypeData, PrimaryKeyColumn, stringTypeMethods, DateTypeMethods, DateColumnData, EncodeColumn, ParseColumn, JSONType, JSONUnknown, JSONTypes, ArrayMethodsData, arrayTypeMethods, ForeignKeyTable, TimestampHelpers, ColumnNameOfTable, ValidationContext, ErrorMessage, ColumnDataBase } from 'orchid-core';
3
3
  import { PoolConfig, Pool, PoolClient } from 'pg';
4
4
  import { inspect } from 'node:util';
5
5
  import { AsyncLocalStorage } from 'node:async_hooks';
@@ -475,10 +475,10 @@ declare class UnhandledTypeError extends OrchidOrmInternalError {
475
475
  }
476
476
 
477
477
  type NoPrimaryKeyOption = 'error' | 'warning' | 'ignore';
478
- type DbOptions<CT extends ColumnTypesBase> = ({
478
+ type DbOptions<ColumnTypes extends ColumnTypesBase> = ({
479
479
  adapter: Adapter;
480
480
  } | Omit<AdapterOptions, 'log'>) & QueryLogOptions & {
481
- columnTypes?: CT | ((t: DefaultColumnTypes) => CT);
481
+ columnTypes?: ColumnTypes | ((t: DefaultColumnTypes) => ColumnTypes);
482
482
  autoPreparedStatements?: boolean;
483
483
  noPrimaryKey?: NoPrimaryKeyOption;
484
484
  snakeCase?: boolean;
@@ -493,8 +493,8 @@ type DbTableOptions = {
493
493
  } & QueryLogOptions;
494
494
  type QueryDefaultReturnData<Shape extends ColumnsShapeBase> = Pick<ColumnShapeOutput<Shape>, DefaultSelectColumns<Shape>[number]>[];
495
495
  declare const anyShape: Record<string, ColumnType<unknown, BaseOperators, unknown, unknown, unknown>>;
496
- interface Db<Table extends string | undefined = undefined, Shape extends ColumnsShape = Record<string, never>, Relations extends RelationsBase = EmptyObject, CT extends ColumnTypesBase = DefaultColumnTypes, ShapeWithComputed extends ColumnsShape = Shape, Data = QueryDefaultReturnData<Shape>> extends DbBase<Adapter, Table, Shape, CT, ShapeWithComputed>, QueryMethods<CT> {
497
- new (adapter: Adapter, queryBuilder: Db<Table, Shape, Relations, CT>, table?: Table, shape?: Shape, options?: DbTableOptions): this;
496
+ interface Db<Table extends string | undefined = undefined, Shape extends ColumnsShape = Record<string, never>, Relations extends RelationsBase = EmptyObject, ColumnTypes = DefaultColumnTypes, ShapeWithComputed extends ColumnsShape = Shape, Data = QueryDefaultReturnData<Shape>> extends DbBase<Adapter, Table, Shape, ColumnTypes, ShapeWithComputed>, QueryMethods<ColumnTypes> {
497
+ new (adapter: Adapter, queryBuilder: Db<Table, Shape, Relations, ColumnTypes>, table?: Table, shape?: Shape, options?: DbTableOptions): this;
498
498
  internal: Query['internal'];
499
499
  queryBuilder: Db;
500
500
  onQueryBuilder: Query['onQueryBuilder'];
@@ -516,13 +516,13 @@ interface Db<Table extends string | undefined = undefined, Shape extends Columns
516
516
  }[keyof Shape], true>;
517
517
  };
518
518
  }
519
- declare class Db<Table extends string | undefined = undefined, Shape extends ColumnsShape = Record<string, never>, Relations extends RelationsBase = EmptyObject, CT extends ColumnTypesBase = DefaultColumnTypes, ShapeWithComputed extends ColumnsShape = Shape> implements Query {
519
+ declare class Db<Table extends string | undefined = undefined, Shape extends ColumnsShape = Record<string, never>, Relations extends RelationsBase = EmptyObject, ColumnTypes = DefaultColumnTypes, ShapeWithComputed extends ColumnsShape = Shape> implements Query {
520
520
  adapter: Adapter;
521
521
  queryBuilder: Db;
522
522
  table: Table;
523
523
  shape: ShapeWithComputed;
524
- columnTypes: CT;
525
- constructor(adapter: Adapter, queryBuilder: Db, table: Table, shape: ShapeWithComputed, columnTypes: CT, transactionStorage: AsyncLocalStorage<TransactionState>, options: DbTableOptions);
524
+ columnTypes: ColumnTypes;
525
+ constructor(adapter: Adapter, queryBuilder: Db, table: Table, shape: ShapeWithComputed, columnTypes: ColumnTypes, transactionStorage: AsyncLocalStorage<TransactionState>, options: DbTableOptions);
526
526
  [inspect.custom](): string;
527
527
  /**
528
528
  * Use `query` to perform raw SQL queries.
@@ -582,12 +582,12 @@ declare class Db<Table extends string | undefined = undefined, Shape extends Col
582
582
  */
583
583
  queryArrays<R extends any[] = any[]>(...args: SQLQueryArgs): Promise<QueryArraysResult<R>>;
584
584
  }
585
- type DbResult<CT extends ColumnTypesBase> = Db<string, Record<string, never>, EmptyObject, ColumnTypesBase extends CT ? DefaultColumnTypes : CT> & {
586
- <Table extends string, Shape extends ColumnsShape = ColumnsShape>(table: Table, shape?: ((t: ColumnTypesBase extends CT ? DefaultColumnTypes : CT) => Shape) | Shape, options?: DbTableOptions): Db<Table, Shape, EmptyObject>;
585
+ type DbResult<ColumnTypes> = Db<string, Record<string, never>, EmptyObject, ColumnTypes> & {
586
+ <Table extends string, Shape extends ColumnsShape = ColumnsShape>(table: Table, shape?: ((t: ColumnTypes) => Shape) | Shape, options?: DbTableOptions): Db<Table, Shape, EmptyObject>;
587
587
  adapter: Adapter;
588
588
  close: Adapter['close'];
589
589
  };
590
- declare const createDb: <CT extends Record<string, orchid_core.AnyColumnTypeCreator>>({ log, logger, columnTypes: ctOrFn, snakeCase, nowSQL, ...options }: DbOptions<CT>) => DbResult<CT>;
590
+ declare const createDb: <ColumnTypes extends Record<string, orchid_core.AnyColumnTypeCreator> = DefaultColumnTypes>({ log, logger, columnTypes: ctOrFn, snakeCase, nowSQL, ...options }: DbOptions<ColumnTypes>) => DbResult<ColumnTypes>;
591
591
 
592
592
  type ToSQLCtx = {
593
593
  queryBuilder: Db;
@@ -3991,7 +3991,7 @@ type WithArgsOptions = {
3991
3991
  [K in keyof WithOptions]: K extends 'columns' ? boolean | string[] : WithOptions[K];
3992
3992
  };
3993
3993
  type WithArgs = [string, ColumnsShapeBase, Expression] | [string, WithArgsOptions, ColumnsShapeBase, Expression] | [string, Query | ((qb: Db) => Query)] | [string, WithArgsOptions, Query | ((qb: Db) => Query)];
3994
- type WithShape<Args extends WithArgs> = Args[1] extends Query ? Args[1]['result'] : Args[1] extends (qb: Db) => Query ? ReturnType<Args[1]>['result'] : Args[2] extends Query ? Args[2]['result'] : Args[2] extends (qb: Db) => Query ? ReturnType<Args[2]>['result'] : Args[1] extends ColumnsShapeBase ? Args[1] : Args[2] extends ColumnsShapeBase ? Args[2] : Args[2] extends (t: ColumnTypes) => ColumnsShapeBase ? ReturnType<Args[2]> extends ColumnsShapeBase ? ReturnType<Args[2]> : never : never;
3994
+ type WithShape<Args extends WithArgs> = Args[1] extends Query ? Args[1]['result'] : Args[1] extends (qb: Db) => Query ? ReturnType<Args[1]>['result'] : Args[2] extends Query ? Args[2]['result'] : Args[2] extends (qb: Db) => Query ? ReturnType<Args[2]>['result'] : Args[1] extends ColumnsShapeBase ? Args[1] : Args[2] extends ColumnsShapeBase ? Args[2] : Args[2] extends (t: DefaultColumnTypes) => ColumnsShapeBase ? ReturnType<Args[2]> extends ColumnsShapeBase ? ReturnType<Args[2]> : never : never;
3995
3995
  type WithResult<T extends Query, Args extends WithArgs, Shape extends ColumnsShapeBase> = AddQueryWith<T, {
3996
3996
  table: Args[0];
3997
3997
  shape: Shape;
@@ -4371,17 +4371,33 @@ declare class Update {
4371
4371
  updateOrThrow<T extends Query>(this: T, arg: UpdateArg<T>): UpdateResult<T>;
4372
4372
  _updateOrThrow<T extends Query>(this: T, arg: UpdateArg<T>): UpdateResult<T>;
4373
4373
  /**
4374
- * Increments a column value by the specified amount. Optionally takes `returning` argument.
4374
+ * Increments a column by `1`, returns a count of updated records by default.
4375
4375
  *
4376
4376
  * ```ts
4377
- * // increment numericColumn column by 1, return updated records
4378
- * const result = await db.table
4379
- * .selectAll()
4377
+ * const updatedCount = await db.table
4378
+ * .where(...conditions)
4379
+ * .increment('numericColumn');
4380
+ * ```
4381
+ *
4382
+ * When using `find` or `get` it will throw `NotFoundError` when no records found.
4383
+ *
4384
+ * ```ts
4385
+ * // throws when not found
4386
+ * const updatedCount = await db.table.find(1).increment('numericColumn');
4387
+ *
4388
+ * // also throws when not found
4389
+ * const updatedCount2 = await db.table
4380
4390
  * .where(...conditions)
4391
+ * .get('columnName')
4381
4392
  * .increment('numericColumn');
4393
+ * ```
4394
+ *
4395
+ * Provide an object to increment multiple columns with different values.
4396
+ * Use `select` to specify columns to return.
4382
4397
  *
4398
+ * ```ts
4383
4399
  * // increment someColumn by 5 and otherColumn by 10, return updated records
4384
- * const result2 = await db.table
4400
+ * const result = await db.table
4385
4401
  * .selectAll()
4386
4402
  * .where(...conditions)
4387
4403
  * .increment({
@@ -4395,17 +4411,33 @@ declare class Update {
4395
4411
  increment<T extends Query>(this: T, data: ChangeCountArg<T>): UpdateResult<T>;
4396
4412
  _increment<T extends Query>(this: T, data: ChangeCountArg<T>): UpdateResult<T>;
4397
4413
  /**
4398
- * Decrements a column value by the specified amount. Optionally takes `returning` argument.
4414
+ * Decrements a column by `1`, returns a count of updated records by default.
4399
4415
  *
4400
4416
  * ```ts
4401
- * // decrement numericColumn column by 1, return updated records
4402
- * const result = await db.table
4403
- * .selectAll()
4417
+ * const updatedCount = await db.table
4418
+ * .where(...conditions)
4419
+ * .decrement('numericColumn');
4420
+ * ```
4421
+ *
4422
+ * When using `find` or `get` it will throw `NotFoundError` when no records found.
4423
+ *
4424
+ * ```ts
4425
+ * // throws when not found
4426
+ * const updatedCount = await db.table.find(1).decrement('numericColumn');
4427
+ *
4428
+ * // also throws when not found
4429
+ * const updatedCount2 = await db.table
4404
4430
  * .where(...conditions)
4431
+ * .get('columnName')
4405
4432
  * .decrement('numericColumn');
4433
+ * ```
4434
+ *
4435
+ * Provide an object to decrement multiple columns with different values.
4436
+ * Use `select` to specify columns to return.
4406
4437
  *
4438
+ * ```ts
4407
4439
  * // decrement someColumn by 5 and otherColumn by 10, return updated records
4408
- * const result2 = await db.table
4440
+ * const result = await db.table
4409
4441
  * .selectAll()
4410
4442
  * .where(...conditions)
4411
4443
  * .decrement({
@@ -4880,159 +4912,26 @@ declare class QueryUpsertOrCreate {
4880
4912
  }
4881
4913
 
4882
4914
  declare const templateLiteralToSQL: (template: TemplateLiteralArgs, ctx: ToSQLCtx, quotedAs?: string) => string;
4883
- declare class RawSQL<T extends ColumnTypeBase, CT extends ColumnTypesBase = DefaultColumnTypes> extends RawSQLBase<T> {
4884
- columnTypes: CT;
4915
+ declare class RawSQL<T extends ColumnTypeBase, ColumnTypes = DefaultColumnTypes> extends RawSQLBase<T, ColumnTypes> {
4916
+ columnTypes: ColumnTypes;
4885
4917
  constructor(sql: string | TemplateLiteralArgs, values?: RawSQLValues, type?: T);
4886
4918
  makeSQL(ctx: ToSQLCtx, quotedAs?: string): string;
4887
4919
  }
4888
4920
  interface DynamicRawSQL<T extends ColumnTypeBase> extends Expression<T>, ExpressionTypeMethod {
4889
4921
  }
4890
- declare class DynamicRawSQL<T extends ColumnTypeBase, CT extends ColumnTypesBase = DefaultColumnTypes> extends Expression<T> {
4922
+ declare class DynamicRawSQL<T extends ColumnTypeBase, ColumnTypes = DefaultColumnTypes> extends Expression<T> {
4891
4923
  fn: DynamicSQLArg;
4892
4924
  _type: T;
4893
- columnTypes: CT;
4925
+ columnTypes: ColumnTypes;
4894
4926
  constructor(fn: DynamicSQLArg);
4895
4927
  makeSQL(ctx: ToSQLCtx, quotedAs?: string): string;
4896
4928
  }
4897
4929
  declare function raw<T = unknown>(...args: StaticSQLArgs): RawSQL<ColumnTypeBase<T>>;
4898
4930
  declare function raw<T = unknown>(...args: [DynamicSQLArg]): DynamicRawSQL<ColumnTypeBase<T>>;
4899
- declare const countSelect: RawSQL<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {
4900
- timestamps<T extends ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>>(this: {
4901
- name(name: string): {
4902
- timestamp(): T;
4903
- };
4904
- timestamp(): T;
4905
- timestampsSnakeCase(): {
4906
- createdAt: orchid_core.ColumnWithDefault<T, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
4907
- updatedAt: orchid_core.ColumnWithDefault<T, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
4908
- };
4909
- }): {
4910
- createdAt: orchid_core.ColumnWithDefault<T, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
4911
- updatedAt: orchid_core.ColumnWithDefault<T, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
4912
- };
4913
- timestampsSnakeCase<T_1 extends ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>>(this: {
4914
- name(name: string): {
4915
- timestamp(): T_1;
4916
- };
4917
- timestamp(): T_1;
4918
- }): {
4919
- createdAt: orchid_core.ColumnWithDefault<T_1, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
4920
- updatedAt: orchid_core.ColumnWithDefault<T_1, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
4921
- };
4922
- timestampsNoTZ<T_2 extends ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>>(this: {
4923
- name(name: string): {
4924
- timestampNoTZ(): T_2;
4925
- };
4926
- timestampNoTZ(): T_2;
4927
- timestampsNoTZSnakeCase(): {
4928
- createdAt: orchid_core.ColumnWithDefault<T_2, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
4929
- updatedAt: orchid_core.ColumnWithDefault<T_2, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
4930
- };
4931
- }): {
4932
- createdAt: orchid_core.ColumnWithDefault<T_2, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
4933
- updatedAt: orchid_core.ColumnWithDefault<T_2, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
4934
- };
4935
- timestampsNoTZSnakeCase<T_3 extends ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>>(this: {
4936
- name(name: string): {
4937
- timestampNoTZ(): T_3;
4938
- };
4939
- timestampNoTZ(): T_3;
4940
- }): {
4941
- createdAt: orchid_core.ColumnWithDefault<T_3, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
4942
- updatedAt: orchid_core.ColumnWithDefault<T_3, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
4943
- };
4944
- name: typeof orchid_core.name;
4945
- sql: {
4946
- (sql: TemplateStringsArray, ...values: unknown[]): RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>;
4947
- (sql: string): RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>;
4948
- (values: Record<string, unknown>, sql: string): RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>;
4949
- (values: Record<string, unknown>): (strings: TemplateStringsArray, ...values: unknown[]) => RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>;
4950
- };
4951
- smallint(): SmallIntColumn;
4952
- integer(): IntegerColumn;
4953
- bigint(): BigIntColumn;
4954
- numeric<Precision extends number | undefined = undefined, Scale extends number | undefined = undefined>(precision?: Precision | undefined, scale?: Scale | undefined): DecimalColumn<Precision, Scale>;
4955
- decimal<Precision_1 extends number | undefined = undefined, Scale_1 extends number | undefined = undefined>(precision?: Precision_1 | undefined, scale?: Scale_1 | undefined): DecimalColumn<Precision_1, Scale_1>;
4956
- real(): RealColumn;
4957
- doublePrecision(): DoublePrecisionColumn;
4958
- identity(options?: TableData.Identity | undefined): orchid_core.ColumnWithDefault<IntegerColumn, Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>>>;
4959
- smallSerial(): SmallSerialColumn;
4960
- serial(): SerialColumn;
4961
- bigSerial(): BigSerialColumn;
4962
- money(): MoneyColumn;
4963
- varchar<Limit extends number | undefined = undefined>(limit?: Limit | undefined): VarCharColumn<Limit>;
4964
- char<Limit_1 extends number | undefined = undefined>(limit?: Limit_1 | undefined): CharColumn<Limit_1>;
4965
- text(min: number, max: number): TextColumn;
4966
- string<Limit_2 extends number = 255>(limit?: Limit_2): VarCharColumn<Limit_2>;
4967
- citext(min: number, max: number): CitextColumn;
4968
- bytea(): ByteaColumn;
4969
- date(): DateColumn;
4970
- timestampNoTZ<Precision_2 extends number>(precision?: Precision_2 | undefined): TimestampColumn<Precision_2>;
4971
- timestamp<Precision_3 extends number | undefined = undefined>(precision?: Precision_3 | undefined): TimestampTZColumn<number>;
4972
- time<Precision_4 extends number | undefined = undefined>(precision?: Precision_4 | undefined): TimeColumn<Precision_4>;
4973
- interval<Fields extends string | undefined = undefined, Precision_5 extends number | undefined = undefined>(fields?: Fields | undefined, precision?: Precision_5 | undefined): IntervalColumn<Fields, Precision_5>;
4974
- boolean(): BooleanColumn;
4975
- enum<U extends string, T_4 extends [U, ...U[]]>(dataType: string, type: T_4): EnumColumn<U, T_4>;
4976
- point(): PointColumn;
4977
- line(): LineColumn;
4978
- lseg(): LsegColumn;
4979
- box(): BoxColumn;
4980
- path(): PathColumn;
4981
- polygon(): PolygonColumn;
4982
- circle(): CircleColumn;
4983
- cidr(): CidrColumn;
4984
- inet(): InetColumn;
4985
- macaddr(): MacAddrColumn;
4986
- macaddr8(): MacAddr8Column;
4987
- bit<Length extends number>(length: Length): BitColumn<Length>;
4988
- bitVarying<Length_1 extends number | undefined = undefined>(length?: Length_1 | undefined): BitVaryingColumn<Length_1>;
4989
- tsvector(): TsVectorColumn;
4990
- tsquery(): TsQueryColumn;
4991
- uuid(): UUIDColumn;
4992
- xml(): XMLColumn;
4993
- json<Type extends orchid_core.JSONType<unknown, {}> = orchid_core.JSONUnknown>(schemaOrFn?: Type | ((j: {
4994
- unknown: () => orchid_core.JSONUnknown;
4995
- boolean: () => orchid_core.JSONBoolean;
4996
- null: () => orchid_core.JSONNull;
4997
- number: <T_5 extends number = number>() => orchid_core.JSONNumber<T_5>;
4998
- string: <T_6 extends string = string>() => orchid_core.JSONString<T_6>;
4999
- array: <T_7 extends orchid_core.JSONType<unknown, {}>>(item: T_7) => orchid_core.JSONArray<T_7, "many">;
5000
- object: <Shape extends orchid_core.JSONObjectShape>(shape: Shape) => orchid_core.JSONObject<Shape, "strip", orchid_core.JSONType<unknown, {}>>;
5001
- literal: <T_8 extends orchid_core.JSONPrimitive>(value: T_8) => orchid_core.JSONLiteral<T_8>;
5002
- discriminatedUnion: <Discriminator extends string, Types extends orchid_core.JSONDiscriminatedUnionArg<Discriminator>>(discriminator: Discriminator, types: Types) => orchid_core.JSONDiscriminatedUnion<Discriminator, Types>;
5003
- enum: <U_1 extends string, T_9 extends [U_1, ...U_1[]]>(options: T_9) => orchid_core.JSONEnum<string, T_9>;
5004
- intersection: <Left extends orchid_core.JSONType<unknown, {}>, Right extends orchid_core.JSONType<unknown, {}>>(left: Left, right: Right) => orchid_core.JSONIntersection<Left, Right>;
5005
- lazy: <T_10 extends orchid_core.JSONType<unknown, {}>>(fn: () => T_10) => orchid_core.JSONLazy<T_10>;
5006
- nativeEnum: <T_11 extends orchid_core.EnumLike>(type: T_11) => orchid_core.JSONNativeEnum<T_11>;
5007
- record: <Key extends orchid_core.JSONString<string> | orchid_core.JSONNumber<number>, Value extends orchid_core.JSONType<unknown, {}>>(...args: [value: Value] | [key: Key, value: Value]) => orchid_core.JSONRecord<Key, Value>;
5008
- tuple: <T_12 extends orchid_core.JSONTupleItems, Rest extends orchid_core.JSONType<unknown, {}> | undefined = undefined>(items: T_12, rest?: Rest | undefined) => orchid_core.JSONTuple<T_12, Rest>;
5009
- union: <T_13 extends orchid_core.JSONUnionArgs>(...types: T_13) => orchid_core.JSONUnion<T_13>;
5010
- }) => Type) | undefined): JSONColumn<Type>;
5011
- jsonText(): JSONTextColumn;
5012
- array<Item extends ColumnType<unknown, BaseOperators, unknown, unknown, unknown>>(item: Item): ArrayColumn<Item>;
5013
- type(dataType: string): CustomTypeColumn;
5014
- domain(dataType: string): DomainColumn;
5015
- primaryKey(columns: string[], options?: {
5016
- name?: string | undefined;
5017
- } | undefined): {};
5018
- index(columns: orchid_core.MaybeArray<string | IndexColumnOptions>, options?: IndexOptions): {};
5019
- unique(columns: orchid_core.MaybeArray<string | IndexColumnOptions>, options?: IndexOptions | undefined): {};
5020
- searchIndex(columns: orchid_core.MaybeArray<string | IndexColumnOptions>, options?: IndexOptions | undefined): {};
5021
- constraint<Table extends string | (() => orchid_core.ForeignKeyTable), Columns extends Table extends () => orchid_core.ForeignKeyTable ? [orchid_core.ColumnNameOfTable<ReturnType<Table>>, ...orchid_core.ColumnNameOfTable<ReturnType<Table>>[]] : [string, ...string[]]>({ name, references, check, dropMode, }: {
5022
- name?: string | undefined;
5023
- references?: [columns: string[], fnOrTable: Table, foreignColumns: Columns, options?: ForeignKeyOptions | undefined] | undefined;
5024
- check?: RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}> | undefined;
5025
- dropMode?: DropMode | undefined;
5026
- }): {};
5027
- foreignKey<Table_1 extends string | (() => orchid_core.ForeignKeyTable), Columns_1 extends Table_1 extends () => orchid_core.ForeignKeyTable ? [orchid_core.ColumnNameOfTable<ReturnType<Table_1>>, ...orchid_core.ColumnNameOfTable<ReturnType<Table_1>>[]] : [string, ...string[]]>(columns: string[], fnOrTable: Table_1, foreignColumns: Columns_1, options?: (ForeignKeyOptions & {
5028
- name?: string | undefined;
5029
- dropMode?: DropMode | undefined;
5030
- }) | undefined): {};
5031
- check(check: RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>): {};
5032
- }>[];
4931
+ declare const countSelect: RawSQL<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, DefaultColumnTypes>[];
5033
4932
 
5034
- declare class RawSqlMethods<CT extends ColumnTypesBase> {
5035
- columnTypes: CT;
4933
+ declare class RawSqlMethods<ColumnTypes> {
4934
+ columnTypes: ColumnTypes;
5036
4935
  /**
5037
4936
  * When there is a need to use a piece of raw SQL, use the `sql` method from tables, or a `raw` function imported from `orchid-orm`.
5038
4937
  *
@@ -5183,11 +5082,11 @@ declare class RawSqlMethods<CT extends ColumnTypesBase> {
5183
5082
  * @return object that has `type` and `values` methods
5184
5083
  */
5185
5084
  sql<T = unknown>(this: {
5186
- columnTypes: CT;
5187
- }, ...args: StaticSQLArgs): RawSQL<ColumnTypeBase<T>, CT>;
5085
+ columnTypes: ColumnTypes;
5086
+ }, ...args: StaticSQLArgs): RawSQL<ColumnTypeBase<T>, ColumnTypes>;
5188
5087
  sql<T = unknown>(this: {
5189
- columnTypes: CT;
5190
- }, ...args: [DynamicSQLArg]): DynamicRawSQL<ColumnTypeBase<T>, CT>;
5088
+ columnTypes: ColumnTypes;
5089
+ }, ...args: [DynamicSQLArg]): DynamicRawSQL<ColumnTypeBase<T>, ColumnTypes>;
5191
5090
  }
5192
5091
 
5193
5092
  type QueryTransformFn<T extends Query> = (input: T['catch'] extends QueryCatch<infer Data> ? Data : never) => unknown;
@@ -5280,9 +5179,9 @@ declare class ColumnRefExpression<T extends ColumnTypeBase> extends Expression<T
5280
5179
  constructor(_type: T, name: string);
5281
5180
  makeSQL(ctx: ToSQLCtx, quotedAs?: string): string;
5282
5181
  }
5283
- interface QueryMethods<CT extends ColumnTypesBase> extends Omit<AsMethods, 'result'>, AggregateMethods, Select, From, Join, With, Union, Omit<JsonModifiers, 'result'>, JsonMethods, Create, Update, Delete, Transaction, For, ColumnInfoMethods, Omit<Where, 'result'>, SearchMethods, Clear, Having, Then, QueryLog, Omit<QueryHooks, 'result'>, QueryUpsertOrCreate, QueryGet, MergeQueryMethods, RawSqlMethods<CT>, CopyMethods, TransformMethods {
5182
+ interface QueryMethods<ColumnTypes> extends Omit<AsMethods, 'result'>, AggregateMethods, Select, From, Join, With, Union, Omit<JsonModifiers, 'result'>, JsonMethods, Create, Update, Delete, Transaction, For, ColumnInfoMethods, Omit<Where, 'result'>, SearchMethods, Clear, Having, Then, QueryLog, Omit<QueryHooks, 'result'>, QueryUpsertOrCreate, QueryGet, MergeQueryMethods, RawSqlMethods<ColumnTypes>, CopyMethods, TransformMethods {
5284
5183
  }
5285
- declare class QueryMethods<CT extends ColumnTypesBase> {
5184
+ declare class QueryMethods<ColumnTypes> {
5286
5185
  /**
5287
5186
  * `.all` is a default behavior, that returns an array of objects:
5288
5187
  *
@@ -5750,9 +5649,9 @@ type WithDataItem = {
5750
5649
  shape: ColumnsShapeBase;
5751
5650
  };
5752
5651
  type WithDataBase = Record<never, WithDataItem>;
5753
- type Query = QueryBase & QueryMethods<ColumnTypesBase> & {
5652
+ type Query = QueryBase & QueryMethods<unknown> & {
5754
5653
  queryBuilder: Db;
5755
- columnTypes: ColumnTypesBase;
5654
+ columnTypes: unknown;
5756
5655
  onQueryBuilder: typeof OnQueryBuilder;
5757
5656
  table?: string;
5758
5657
  shape: ColumnsShape;
@@ -5937,93 +5836,121 @@ declare const Operators: {
5937
5836
  array: Base<any>;
5938
5837
  };
5939
5838
 
5940
- declare class CustomTypeColumn extends ColumnType<unknown, typeof Operators.any> {
5941
- dataType: string;
5942
- operators: {
5943
- equals: Operator<any, BooleanColumn>;
5944
- not: Operator<any, BooleanColumn>;
5945
- in: Operator<any[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5946
- notIn: Operator<any[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5947
- };
5948
- constructor(dataType: string);
5949
- toCode(t: string): Code;
5950
- }
5951
- declare class DomainColumn extends CustomTypeColumn {
5952
- toCode(t: string): Code;
5953
- }
5954
-
5955
- type ArrayData<Item extends ColumnTypeBase> = ColumnData & ArrayMethodsData & {
5956
- item: Item;
5839
+ type NumberColumn = ColumnType<number, typeof Operators.number>;
5840
+ type NumberColumnData = BaseNumberData & {
5841
+ identity: TableData.Identity;
5957
5842
  };
5958
- type ArrayMethods = typeof arrayTypeMethods;
5959
- interface ArrayColumn<Item extends ColumnTypeBase> extends ColumnType<Item['type'][], typeof Operators.array, Item['inputType'][], Item['outputType'][], Item['queryType'][]>, ArrayMethods {
5843
+ type SerialColumnData = NumberColumnData & {
5844
+ default: Expression;
5845
+ };
5846
+ interface NumberBaseColumn extends ColumnType<number, typeof Operators.number>, NumberTypeMethods {
5960
5847
  }
5961
- declare class ArrayColumn<Item extends ColumnTypeBase> extends ColumnType<Item['type'][], typeof Operators.array, Item['inputType'][], Item['outputType'][], Item['queryType'][]> {
5962
- dataType: "array";
5848
+ declare abstract class NumberBaseColumn extends ColumnType<number, typeof Operators.number> {
5849
+ data: NumberColumnData;
5963
5850
  operators: {
5964
- equals: Operator<any, BooleanColumn>;
5965
- not: Operator<any, BooleanColumn>;
5966
- in: Operator<any[] | orchid_core.Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5967
- notIn: Operator<any[] | orchid_core.Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5968
- };
5969
- data: ArrayData<Item>;
5970
- constructor(item: Item);
5971
- toSQL(): string;
5972
- toCode(this: ArrayColumn<Item>, t: string): Code;
5973
- parseFn: ((input: unknown) => unknown[]) & {
5974
- hideFromCode: boolean;
5851
+ equals: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5852
+ not: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5853
+ in: Operator<Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | number[], BooleanColumn>;
5854
+ notIn: Operator<Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | number[], BooleanColumn>;
5855
+ } & {
5856
+ lt: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5857
+ lte: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5858
+ gt: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5859
+ gte: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5860
+ between: Operator<[number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query], BooleanColumn>;
5975
5861
  };
5976
5862
  }
5977
-
5978
- declare class JSONColumn<Type extends JSONType = JSONUnknown> extends ColumnType<Type['type'], typeof Operators.json> {
5979
- dataType: "jsonb";
5863
+ declare abstract class IntegerBaseColumn extends NumberBaseColumn {
5864
+ data: NumberColumnData;
5865
+ constructor();
5866
+ }
5867
+ declare abstract class NumberAsStringBaseColumn extends ColumnType<string, typeof Operators.number> {
5980
5868
  operators: {
5981
- equals: Operator<unknown, BooleanColumn>;
5982
- not: Operator<unknown, BooleanColumn>;
5983
- in: Operator<unknown[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5984
- notIn: Operator<unknown[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5869
+ equals: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5870
+ not: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5871
+ in: Operator<Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | number[], BooleanColumn>;
5872
+ notIn: Operator<Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | number[], BooleanColumn>;
5985
5873
  } & {
5986
- jsonPath: Operator<[path: string, op: string, value: unknown], BooleanColumn>;
5987
- jsonSupersetOf: Operator<unknown, BooleanColumn>;
5988
- jsonSubsetOf: Operator<unknown, BooleanColumn>;
5874
+ lt: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5875
+ lte: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5876
+ gt: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5877
+ gte: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5878
+ between: Operator<[number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query], BooleanColumn>;
5989
5879
  };
5880
+ data: ColumnData;
5881
+ }
5882
+ declare class DecimalBaseColumn<Precision extends number | undefined = undefined, Scale extends number | undefined = undefined> extends ColumnType<string, typeof Operators.number> {
5990
5883
  data: ColumnData & {
5991
- schema: Type;
5884
+ numericPrecision: Precision;
5885
+ numericScale: Scale;
5992
5886
  };
5993
- constructor(schemaOrFn?: Type | ((j: JSONTypes) => Type));
5994
- toCode(t: string): Code;
5995
- }
5996
- declare class JSONTextColumn extends ColumnType<string, typeof Operators.text> {
5997
- dataType: "json";
5998
5887
  operators: {
5999
- equals: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6000
- not: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6001
- in: Operator<string[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6002
- notIn: Operator<string[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5888
+ equals: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5889
+ not: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5890
+ in: Operator<Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | number[], BooleanColumn>;
5891
+ notIn: Operator<Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | number[], BooleanColumn>;
6003
5892
  } & {
6004
- contains: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6005
- containsSensitive: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6006
- startsWith: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6007
- startsWithSensitive: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6008
- endsWith: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6009
- endsWithSensitive: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5893
+ lt: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5894
+ lte: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5895
+ gt: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5896
+ gte: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
5897
+ between: Operator<[number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query], BooleanColumn>;
6010
5898
  };
5899
+ dataType: "decimal";
5900
+ constructor(numericPrecision?: Precision, numericScale?: Scale);
6011
5901
  toCode(t: string): Code;
5902
+ toSQL(): string;
6012
5903
  }
6013
-
6014
- declare class EnumColumn<U extends string = string, T extends [U, ...U[]] = [U]> extends ColumnType<T[number], typeof Operators.any> {
6015
- enumName: string;
6016
- options: T;
6017
- operators: {
6018
- equals: Operator<any, BooleanColumn>;
6019
- not: Operator<any, BooleanColumn>;
6020
- in: Operator<any[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6021
- notIn: Operator<any[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6022
- };
6023
- dataType: string;
6024
- constructor(enumName: string, options: T);
6025
- toCode(t: string, migration?: boolean): Code;
5904
+ type IdentityColumn<T extends ColumnTypeBase> = ColumnWithDefault<T, Expression>;
5905
+ declare class SmallIntColumn extends IntegerBaseColumn {
5906
+ dataType: "smallint";
5907
+ parseItem: typeof parseInt;
5908
+ toCode(t: string): Code;
5909
+ identity<T extends ColumnType>(this: T, options?: TableData.Identity): IdentityColumn<T>;
5910
+ }
5911
+ declare class IntegerColumn extends IntegerBaseColumn {
5912
+ dataType: "integer";
5913
+ parseItem: typeof parseInt;
5914
+ toCode(t: string): Code;
5915
+ identity<T extends ColumnType>(this: T, options?: TableData.Identity): IdentityColumn<T>;
5916
+ }
5917
+ declare class BigIntColumn extends NumberAsStringBaseColumn {
5918
+ dataType: "bigint";
5919
+ toCode(t: string): Code;
5920
+ identity<T extends ColumnType>(this: T, options?: TableData.Identity): IdentityColumn<T>;
5921
+ }
5922
+ declare class DecimalColumn<Precision extends number | undefined = undefined, Scale extends number | undefined = undefined> extends DecimalBaseColumn<Precision, Scale> {
5923
+ }
5924
+ declare class RealColumn extends NumberBaseColumn {
5925
+ dataType: "real";
5926
+ parseItem: typeof parseFloat;
5927
+ toCode(t: string): Code;
5928
+ }
5929
+ declare class DoublePrecisionColumn extends NumberAsStringBaseColumn {
5930
+ dataType: "double precision";
5931
+ toCode(t: string): Code;
5932
+ }
5933
+ declare class SmallSerialColumn extends IntegerBaseColumn {
5934
+ dataType: "smallint";
5935
+ parseItem: typeof parseInt;
5936
+ data: SerialColumnData;
5937
+ constructor();
5938
+ toSQL(): string;
5939
+ toCode(t: string): Code;
5940
+ }
5941
+ declare class SerialColumn extends IntegerBaseColumn {
5942
+ dataType: "integer";
5943
+ parseItem: typeof parseInt;
5944
+ data: SerialColumnData;
5945
+ constructor();
5946
+ toSQL(): string;
5947
+ toCode(t: string): Code;
5948
+ }
5949
+ declare class BigSerialColumn extends NumberAsStringBaseColumn {
5950
+ dataType: "bigint";
5951
+ data: SerialColumnData;
6026
5952
  toSQL(): string;
5953
+ toCode(t: string): Code;
6027
5954
  }
6028
5955
 
6029
5956
  type StringColumn = ColumnType<string, typeof Operators.text>;
@@ -6439,20 +6366,173 @@ declare class CitextColumn extends TextBaseColumn {
6439
6366
  toCode(t: string): Code;
6440
6367
  }
6441
6368
 
6442
- type ColumnsShape = Record<string, ColumnType>;
6443
- declare abstract class ColumnsObject<Shape extends ColumnsShapeBase> extends ColumnType<{
6444
- [K in keyof Shape]: Shape[K]['type'];
6445
- }, typeof Operators.any, {
6446
- [K in keyof Shape]: Shape[K]['inputType'];
6447
- }, {
6448
- [K in keyof Shape]: Shape[K]['outputType'];
6449
- }, {
6450
- [K in keyof Shape]: Shape[K]['queryType'];
6451
- }> {
6452
- shape: Shape;
6453
- dataType: "object";
6454
- operators: {
6455
- equals: Operator<any, BooleanColumn>;
6369
+ interface DateBaseColumn extends ColumnType<string, typeof Operators.date, string | number | Date, string, string | number | Date>, DateTypeMethods {
6370
+ }
6371
+ declare abstract class DateBaseColumn extends ColumnType<string, typeof Operators.date, string | number | Date, string, string | number | Date> {
6372
+ data: DateColumnData;
6373
+ operators: {
6374
+ equals: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6375
+ not: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6376
+ in: Operator<orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | (string | Date)[], BooleanColumn>;
6377
+ notIn: Operator<orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | (string | Date)[], BooleanColumn>;
6378
+ } & {
6379
+ lt: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6380
+ lte: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6381
+ gt: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6382
+ gte: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6383
+ between: Operator<[string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query], BooleanColumn>;
6384
+ };
6385
+ encodeFn: (input: string | number | Date) => Date;
6386
+ asNumber(): EncodeColumn<IntegerColumn, string | number | Date>;
6387
+ asDate<T extends ColumnType>(this: T): ParseColumn<T, Date>;
6388
+ }
6389
+ declare class DateColumn extends DateBaseColumn {
6390
+ dataType: "date";
6391
+ toCode(t: string): Code;
6392
+ }
6393
+ declare abstract class DateTimeBaseClass<Precision extends number | undefined = undefined> extends DateBaseColumn {
6394
+ data: DateColumnData & {
6395
+ dateTimePrecision: Precision;
6396
+ };
6397
+ constructor(dateTimePrecision?: Precision);
6398
+ toSQL(): string;
6399
+ }
6400
+ declare abstract class DateTimeTzBaseClass<Precision extends number | undefined = undefined> extends DateTimeBaseClass<Precision> {
6401
+ abstract baseDataType: string;
6402
+ toSQL(): string;
6403
+ }
6404
+ declare class TimestampColumn<Precision extends number | undefined> extends DateTimeBaseClass<Precision> {
6405
+ dataType: "timestamp";
6406
+ toCode(t: string): Code;
6407
+ }
6408
+ declare class TimestampTZColumn<Precision extends number | undefined> extends DateTimeTzBaseClass<Precision> {
6409
+ dataType: "timestamptz";
6410
+ baseDataType: "timestamp";
6411
+ toCode(t: string): Code;
6412
+ }
6413
+ declare class TimeColumn<Precision extends number | undefined = undefined> extends DateTimeBaseClass<Precision> {
6414
+ dataType: "time";
6415
+ toCode(t: string): Code;
6416
+ }
6417
+ type TimeInterval = {
6418
+ years?: number;
6419
+ months?: number;
6420
+ days?: number;
6421
+ hours?: number;
6422
+ minutes?: number;
6423
+ seconds?: number;
6424
+ };
6425
+ declare class IntervalColumn<Fields extends string | undefined = undefined, Precision extends number | undefined = undefined> extends ColumnType<TimeInterval, typeof Operators.date> {
6426
+ dataType: "interval";
6427
+ data: ColumnData & {
6428
+ fields: Fields;
6429
+ precision: Precision;
6430
+ };
6431
+ operators: {
6432
+ equals: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6433
+ not: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6434
+ in: Operator<orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | (string | Date)[], BooleanColumn>;
6435
+ notIn: Operator<orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | (string | Date)[], BooleanColumn>;
6436
+ } & {
6437
+ lt: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6438
+ lte: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6439
+ gt: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6440
+ gte: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6441
+ between: Operator<[string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query], BooleanColumn>;
6442
+ };
6443
+ constructor(fields?: Fields, precision?: Precision);
6444
+ toCode(t: string): Code;
6445
+ toSQL(): string;
6446
+ }
6447
+
6448
+ declare class EnumColumn<U extends string = string, T extends [U, ...U[]] = [U]> extends ColumnType<T[number], typeof Operators.any> {
6449
+ enumName: string;
6450
+ options: T;
6451
+ operators: {
6452
+ equals: Operator<any, BooleanColumn>;
6453
+ not: Operator<any, BooleanColumn>;
6454
+ in: Operator<any[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6455
+ notIn: Operator<any[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6456
+ };
6457
+ dataType: string;
6458
+ constructor(enumName: string, options: T);
6459
+ toCode(t: string, migration?: boolean): Code;
6460
+ toSQL(): string;
6461
+ }
6462
+
6463
+ declare class JSONColumn<Type extends JSONType = JSONUnknown> extends ColumnType<Type['type'], typeof Operators.json> {
6464
+ dataType: "jsonb";
6465
+ operators: {
6466
+ equals: Operator<unknown, BooleanColumn>;
6467
+ not: Operator<unknown, BooleanColumn>;
6468
+ in: Operator<unknown[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6469
+ notIn: Operator<unknown[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6470
+ } & {
6471
+ jsonPath: Operator<[path: string, op: string, value: unknown], BooleanColumn>;
6472
+ jsonSupersetOf: Operator<unknown, BooleanColumn>;
6473
+ jsonSubsetOf: Operator<unknown, BooleanColumn>;
6474
+ };
6475
+ data: ColumnData & {
6476
+ schema: Type;
6477
+ };
6478
+ constructor(schemaOrFn?: Type | ((j: JSONTypes) => Type));
6479
+ toCode(t: string): Code;
6480
+ }
6481
+ declare class JSONTextColumn extends ColumnType<string, typeof Operators.text> {
6482
+ dataType: "json";
6483
+ operators: {
6484
+ equals: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6485
+ not: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6486
+ in: Operator<string[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6487
+ notIn: Operator<string[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6488
+ } & {
6489
+ contains: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6490
+ containsSensitive: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6491
+ startsWith: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6492
+ startsWithSensitive: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6493
+ endsWith: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6494
+ endsWithSensitive: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6495
+ };
6496
+ toCode(t: string): Code;
6497
+ }
6498
+
6499
+ type ArrayData<Item extends ColumnTypeBase> = ColumnData & ArrayMethodsData & {
6500
+ item: Item;
6501
+ };
6502
+ type ArrayMethods = typeof arrayTypeMethods;
6503
+ interface ArrayColumn<Item extends ColumnTypeBase> extends ColumnType<Item['type'][], typeof Operators.array, Item['inputType'][], Item['outputType'][], Item['queryType'][]>, ArrayMethods {
6504
+ }
6505
+ declare class ArrayColumn<Item extends ColumnTypeBase> extends ColumnType<Item['type'][], typeof Operators.array, Item['inputType'][], Item['outputType'][], Item['queryType'][]> {
6506
+ dataType: "array";
6507
+ operators: {
6508
+ equals: Operator<any, BooleanColumn>;
6509
+ not: Operator<any, BooleanColumn>;
6510
+ in: Operator<any[] | orchid_core.Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6511
+ notIn: Operator<any[] | orchid_core.Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6512
+ };
6513
+ data: ArrayData<Item>;
6514
+ constructor(item: Item);
6515
+ toSQL(): string;
6516
+ toCode(this: ArrayColumn<Item>, t: string): Code;
6517
+ parseFn: ((input: unknown) => unknown[]) & {
6518
+ hideFromCode: boolean;
6519
+ };
6520
+ }
6521
+
6522
+ type ColumnsShape = Record<string, ColumnType>;
6523
+ declare abstract class ColumnsObject<Shape extends ColumnsShapeBase> extends ColumnType<{
6524
+ [K in keyof Shape]: Shape[K]['type'];
6525
+ }, typeof Operators.any, {
6526
+ [K in keyof Shape]: Shape[K]['inputType'];
6527
+ }, {
6528
+ [K in keyof Shape]: Shape[K]['outputType'];
6529
+ }, {
6530
+ [K in keyof Shape]: Shape[K]['queryType'];
6531
+ }> {
6532
+ shape: Shape;
6533
+ dataType: "object";
6534
+ operators: {
6535
+ equals: Operator<any, BooleanColumn>;
6456
6536
  not: Operator<any, BooleanColumn>;
6457
6537
  in: Operator<any[] | orchid_core.Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6458
6538
  notIn: Operator<any[] | orchid_core.Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
@@ -6481,7 +6561,21 @@ declare abstract class ArrayOfColumnsObjects<Shape extends ColumnsShapeBase> ext
6481
6561
  declare abstract class PluckResultColumnType<C extends ColumnTypeBase> extends ColumnTypeBase<C['type'][], typeof Operators.any, C['inputType'][], C['outputType'][], C['queryType'][]> {
6482
6562
  }
6483
6563
 
6484
- type ColumnTypes = typeof columnTypes;
6564
+ declare class CustomTypeColumn extends ColumnType<unknown, typeof Operators.any> {
6565
+ dataType: string;
6566
+ operators: {
6567
+ equals: Operator<any, BooleanColumn>;
6568
+ not: Operator<any, BooleanColumn>;
6569
+ in: Operator<any[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6570
+ notIn: Operator<any[] | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6571
+ };
6572
+ constructor(dataType: string);
6573
+ toCode(t: string): Code;
6574
+ }
6575
+ declare class DomainColumn extends CustomTypeColumn {
6576
+ toCode(t: string): Code;
6577
+ }
6578
+
6485
6579
  type TableData = {
6486
6580
  primaryKey?: TableData.PrimaryKey;
6487
6581
  indexes?: TableData.Index[];
@@ -6530,84 +6624,39 @@ declare const getConstraintKind: (it: TableData.Constraint) => 'constraint' | 'f
6530
6624
  declare const newTableData: () => TableData;
6531
6625
  declare const getTableData: () => TableData;
6532
6626
  declare const resetTableData: (data?: TableData) => void;
6533
- declare const getColumnTypes: <CT extends Record<string, orchid_core.AnyColumnTypeCreator>, Shape extends ColumnsShape>(types: CT, fn: (t: CT) => Shape, nowSQL: string | undefined, language: string | undefined, data?: TableData) => Shape;
6534
- declare function sql(sql: TemplateStringsArray, ...values: unknown[]): RawSQLBase;
6535
- declare function sql(sql: string): RawSQLBase;
6536
- declare function sql(values: Record<string, unknown>, sql: string): RawSQLBase;
6537
- declare function sql(values: Record<string, unknown>): (...sql: TemplateLiteralArgs) => RawSQLBase;
6538
- type DefaultColumnTypes = typeof columnTypes;
6539
- declare const columnTypes: {
6540
- timestamps<T extends orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>>(this: {
6541
- name(name: string): {
6542
- timestamp(): T;
6543
- };
6544
- timestamp(): T;
6545
- timestampsSnakeCase(): {
6546
- createdAt: orchid_core.ColumnWithDefault<T, RawSQLBase<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
6547
- updatedAt: orchid_core.ColumnWithDefault<T, RawSQLBase<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
6548
- };
6549
- }): {
6550
- createdAt: orchid_core.ColumnWithDefault<T, RawSQLBase<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
6551
- updatedAt: orchid_core.ColumnWithDefault<T, RawSQLBase<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
6552
- };
6553
- timestampsSnakeCase<T_1 extends orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>>(this: {
6554
- name(name: string): {
6555
- timestamp(): T_1;
6556
- };
6557
- timestamp(): T_1;
6558
- }): {
6559
- createdAt: orchid_core.ColumnWithDefault<T_1, RawSQLBase<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
6560
- updatedAt: orchid_core.ColumnWithDefault<T_1, RawSQLBase<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
6561
- };
6562
- timestampsNoTZ<T_2 extends orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>>(this: {
6563
- name(name: string): {
6564
- timestampNoTZ(): T_2;
6565
- };
6566
- timestampNoTZ(): T_2;
6567
- timestampsNoTZSnakeCase(): {
6568
- createdAt: orchid_core.ColumnWithDefault<T_2, RawSQLBase<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
6569
- updatedAt: orchid_core.ColumnWithDefault<T_2, RawSQLBase<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
6570
- };
6571
- }): {
6572
- createdAt: orchid_core.ColumnWithDefault<T_2, RawSQLBase<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
6573
- updatedAt: orchid_core.ColumnWithDefault<T_2, RawSQLBase<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
6574
- };
6575
- timestampsNoTZSnakeCase<T_3 extends orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>>(this: {
6576
- name(name: string): {
6577
- timestampNoTZ(): T_3;
6578
- };
6579
- timestampNoTZ(): T_3;
6580
- }): {
6581
- createdAt: orchid_core.ColumnWithDefault<T_3, RawSQLBase<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
6582
- updatedAt: orchid_core.ColumnWithDefault<T_3, RawSQLBase<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}>>;
6583
- };
6584
- name: typeof name;
6585
- sql: typeof sql;
6627
+ declare const getColumnTypes: <ColumnTypes, Shape extends ColumnsShape>(types: ColumnTypes, fn: (t: ColumnTypes) => Shape, nowSQL: string | undefined, language: string | undefined, data?: TableData) => Shape;
6628
+ type DefaultColumnTypes = TimestampHelpers & {
6629
+ name<T extends ColumnTypesBase>(this: T, name: string): T;
6630
+ sql<T extends ColumnTypesBase>(this: T, sql: TemplateStringsArray, ...values: unknown[]): RawSQLBase<ColumnType, T>;
6631
+ sql<T extends ColumnTypesBase>(this: T, sql: string): RawSQLBase<ColumnType, T>;
6632
+ sql<T extends ColumnTypesBase>(this: T, values: Record<string, unknown>, sql: string): RawSQLBase<ColumnType, T>;
6633
+ sql<T extends ColumnTypesBase>(this: T, values: Record<string, unknown>): (...sql: TemplateLiteralArgs) => RawSQLBase<ColumnType, T>;
6634
+ sql(...args: [sql: TemplateStringsArray, ...values: unknown[]] | [sql: string] | [values: Record<string, unknown>, sql?: string]): ((...sql: TemplateLiteralArgs) => RawSQLBase) | RawSQLBase;
6586
6635
  smallint(): SmallIntColumn;
6587
6636
  integer(): IntegerColumn;
6588
6637
  bigint(): BigIntColumn;
6589
- numeric<Precision extends number | undefined = undefined, Scale extends number | undefined = undefined>(precision?: Precision | undefined, scale?: Scale | undefined): DecimalColumn<Precision, Scale>;
6590
- decimal<Precision_1 extends number | undefined = undefined, Scale_1 extends number | undefined = undefined>(precision?: Precision_1 | undefined, scale?: Scale_1 | undefined): DecimalColumn<Precision_1, Scale_1>;
6638
+ numeric<Precision extends number | undefined = undefined, Scale extends number | undefined = undefined>(precision?: Precision, scale?: Scale): DecimalColumn<Precision, Scale>;
6639
+ decimal<Precision extends number | undefined = undefined, Scale extends number | undefined = undefined>(precision?: Precision, scale?: Scale): DecimalColumn<Precision, Scale>;
6591
6640
  real(): RealColumn;
6592
6641
  doublePrecision(): DoublePrecisionColumn;
6593
- identity(options?: TableData.Identity): orchid_core.ColumnWithDefault<IntegerColumn, orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>>>;
6594
- smallSerial(): SmallSerialColumn;
6642
+ identity(options?: TableData.Identity): IdentityColumn<IntegerColumn>;
6643
+ smallSerial(): IdentityColumn<SmallSerialColumn>;
6595
6644
  serial(): SerialColumn;
6596
6645
  bigSerial(): BigSerialColumn;
6597
6646
  money(): MoneyColumn;
6598
- varchar<Limit extends number | undefined = undefined>(limit?: Limit | undefined): VarCharColumn<Limit>;
6599
- char<Limit_1 extends number | undefined = undefined>(limit?: Limit_1 | undefined): CharColumn<Limit_1>;
6647
+ varchar<Limit extends number | undefined = undefined>(limit?: Limit): VarCharColumn<Limit>;
6648
+ char<Limit extends number | undefined = undefined>(limit?: Limit): CharColumn<Limit>;
6600
6649
  text(min: number, max: number): TextColumn;
6601
- string<Limit_2 extends number = 255>(limit?: Limit_2): VarCharColumn<Limit_2>;
6650
+ string<Limit extends number = 255>(limit?: Limit): VarCharColumn<Limit>;
6602
6651
  citext(min: number, max: number): CitextColumn;
6603
6652
  bytea(): ByteaColumn;
6604
6653
  date(): DateColumn;
6605
- timestampNoTZ<Precision_2 extends number>(precision?: Precision_2 | undefined): TimestampColumn<Precision_2>;
6606
- timestamp<Precision_3 extends number | undefined = undefined>(precision?: Precision_3 | undefined): TimestampTZColumn<number>;
6607
- time<Precision_4 extends number | undefined = undefined>(precision?: Precision_4 | undefined): TimeColumn<Precision_4>;
6608
- interval<Fields extends string | undefined = undefined, Precision_5 extends number | undefined = undefined>(fields?: Fields | undefined, precision?: Precision_5 | undefined): IntervalColumn<Fields, Precision_5>;
6654
+ timestampNoTZ<Precision extends number>(precision?: Precision): TimestampColumn<Precision>;
6655
+ timestamp<Precision extends number | undefined = undefined>(precision?: Precision): TimestampTZColumn<Precision>;
6656
+ time<Precision extends number | undefined = undefined>(precision?: Precision): TimeColumn<Precision>;
6657
+ interval<Fields extends string | undefined = undefined, Precision extends number | undefined = undefined>(fields?: Fields, precision?: Precision): IntervalColumn<Fields, Precision>;
6609
6658
  boolean(): BooleanColumn;
6610
- enum<U extends string, T_4 extends [U, ...U[]]>(dataType: string, type: T_4): EnumColumn<U, T_4>;
6659
+ enum<U extends string, T extends [U, ...U[]]>(dataType: string, type: T): EnumColumn<U, T>;
6611
6660
  point(): PointColumn;
6612
6661
  line(): LineColumn;
6613
6662
  lseg(): LsegColumn;
@@ -6620,233 +6669,49 @@ declare const columnTypes: {
6620
6669
  macaddr(): MacAddrColumn;
6621
6670
  macaddr8(): MacAddr8Column;
6622
6671
  bit<Length extends number>(length: Length): BitColumn<Length>;
6623
- bitVarying<Length_1 extends number | undefined = undefined>(length?: Length_1 | undefined): BitVaryingColumn<Length_1>;
6672
+ bitVarying<Length extends number | undefined = undefined>(length?: Length): BitVaryingColumn<Length>;
6624
6673
  tsvector(): TsVectorColumn;
6625
6674
  tsquery(): TsQueryColumn;
6626
6675
  uuid(): UUIDColumn;
6627
6676
  xml(): XMLColumn;
6628
- json<Type extends JSONType<unknown, {}> = JSONUnknown>(schemaOrFn?: Type | ((j: JSONTypes) => Type) | undefined): JSONColumn<Type>;
6677
+ json<Type extends JSONType = JSONUnknown>(schemaOrFn?: Type | ((j: JSONTypes) => Type)): JSONColumn<Type>;
6629
6678
  jsonText(): JSONTextColumn;
6630
- array<Item extends ColumnType<unknown, BaseOperators, unknown, unknown, unknown>>(item: Item): ArrayColumn<Item>;
6679
+ array<Item extends ColumnType>(item: Item): ArrayColumn<Item>;
6631
6680
  type(dataType: string): CustomTypeColumn;
6632
6681
  domain(dataType: string): DomainColumn;
6633
6682
  primaryKey(columns: string[], options?: {
6634
6683
  name?: string;
6635
- }): {};
6636
- index(columns: MaybeArray<string | IndexColumnOptions>, options?: IndexOptions): {};
6637
- unique(columns: MaybeArray<string | IndexColumnOptions>, options?: IndexOptions): {};
6684
+ }): EmptyObject;
6685
+ index(columns: MaybeArray<string | IndexColumnOptions>, options?: IndexOptions): EmptyObject;
6686
+ unique(columns: MaybeArray<string | IndexColumnOptions>, options?: IndexOptions): EmptyObject;
6638
6687
  /**
6639
6688
  * See {@link ColumnType.searchIndex}
6640
6689
  */
6641
- searchIndex(columns: MaybeArray<string | IndexColumnOptions>, options?: IndexOptions): {};
6642
- constraint<Table extends string | (() => ForeignKeyTable), Columns extends Table extends () => ForeignKeyTable ? [ColumnNameOfTable<ReturnType<Table>>, ...ColumnNameOfTable<ReturnType<Table>>[]] : [string, ...string[]]>({ name, references, check, dropMode, }: {
6643
- name?: string | undefined;
6644
- references?: [columns: string[], fnOrTable: Table, foreignColumns: Columns, options?: ForeignKeyOptions | undefined] | undefined;
6645
- check?: RawSQLBase<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>, {}> | undefined;
6646
- dropMode?: DropMode | undefined;
6690
+ searchIndex(columns: MaybeArray<string | IndexColumnOptions>, options?: IndexOptions): EmptyObject;
6691
+ constraint<Table extends (() => ForeignKeyTable) | string, Columns extends Table extends () => ForeignKeyTable ? [
6692
+ ColumnNameOfTable<ReturnType<Table>>,
6693
+ ...ColumnNameOfTable<ReturnType<Table>>[]
6694
+ ] : [string, ...string[]]>({ name, references, check, dropMode, }: {
6695
+ name?: string;
6696
+ references?: [
6697
+ columns: string[],
6698
+ fnOrTable: Table,
6699
+ foreignColumns: Columns,
6700
+ options?: ForeignKeyOptions
6701
+ ];
6702
+ check?: RawSQLBase;
6703
+ dropMode?: DropMode;
6647
6704
  }): EmptyObject;
6648
- foreignKey<Table_1 extends string | (() => ForeignKeyTable), Columns_1 extends Table_1 extends () => ForeignKeyTable ? [ColumnNameOfTable<ReturnType<Table_1>>, ...ColumnNameOfTable<ReturnType<Table_1>>[]] : [string, ...string[]]>(columns: string[], fnOrTable: Table_1, foreignColumns: Columns_1, options?: ForeignKeyOptions & {
6705
+ foreignKey<Table extends (() => ForeignKeyTable) | string, Columns extends Table extends () => ForeignKeyTable ? [
6706
+ ColumnNameOfTable<ReturnType<Table>>,
6707
+ ...ColumnNameOfTable<ReturnType<Table>>[]
6708
+ ] : [string, ...string[]]>(columns: string[], fnOrTable: Table, foreignColumns: Columns, options?: ForeignKeyOptions & {
6649
6709
  name?: string;
6650
6710
  dropMode?: DropMode;
6651
6711
  }): EmptyObject;
6652
6712
  check(check: RawSQLBase): EmptyObject;
6653
6713
  };
6654
-
6655
- type NumberColumn = ColumnType<number, typeof Operators.number>;
6656
- type NumberColumnData = BaseNumberData & {
6657
- identity: TableData.Identity;
6658
- };
6659
- type SerialColumnData = NumberColumnData & {
6660
- default: Expression;
6661
- };
6662
- interface NumberBaseColumn extends ColumnType<number, typeof Operators.number>, NumberTypeMethods {
6663
- }
6664
- declare abstract class NumberBaseColumn extends ColumnType<number, typeof Operators.number> {
6665
- data: NumberColumnData;
6666
- operators: {
6667
- equals: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6668
- not: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6669
- in: Operator<Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | number[], BooleanColumn>;
6670
- notIn: Operator<Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | number[], BooleanColumn>;
6671
- } & {
6672
- lt: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6673
- lte: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6674
- gt: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6675
- gte: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6676
- between: Operator<[number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query], BooleanColumn>;
6677
- };
6678
- }
6679
- declare abstract class IntegerBaseColumn extends NumberBaseColumn {
6680
- data: NumberColumnData;
6681
- constructor();
6682
- }
6683
- declare abstract class NumberAsStringBaseColumn extends ColumnType<string, typeof Operators.number> {
6684
- operators: {
6685
- equals: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6686
- not: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6687
- in: Operator<Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | number[], BooleanColumn>;
6688
- notIn: Operator<Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | number[], BooleanColumn>;
6689
- } & {
6690
- lt: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6691
- lte: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6692
- gt: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6693
- gte: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6694
- between: Operator<[number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query], BooleanColumn>;
6695
- };
6696
- data: ColumnData;
6697
- }
6698
- declare class DecimalBaseColumn<Precision extends number | undefined = undefined, Scale extends number | undefined = undefined> extends ColumnType<string, typeof Operators.number> {
6699
- data: ColumnData & {
6700
- numericPrecision: Precision;
6701
- numericScale: Scale;
6702
- };
6703
- operators: {
6704
- equals: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6705
- not: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6706
- in: Operator<Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | number[], BooleanColumn>;
6707
- notIn: Operator<Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | number[], BooleanColumn>;
6708
- } & {
6709
- lt: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6710
- lte: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6711
- gt: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6712
- gte: Operator<number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, BooleanColumn>;
6713
- between: Operator<[number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query, number | Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query], BooleanColumn>;
6714
- };
6715
- dataType: "decimal";
6716
- constructor(numericPrecision?: Precision, numericScale?: Scale);
6717
- toCode(t: string): Code;
6718
- toSQL(): string;
6719
- }
6720
- type IdentityColumn<T extends ColumnTypeBase> = ColumnWithDefault<T, Expression>;
6721
- declare class SmallIntColumn extends IntegerBaseColumn {
6722
- dataType: "smallint";
6723
- parseItem: typeof parseInt;
6724
- toCode(t: string): Code;
6725
- identity<T extends ColumnType>(this: T, options?: TableData.Identity): IdentityColumn<T>;
6726
- }
6727
- declare class IntegerColumn extends IntegerBaseColumn {
6728
- dataType: "integer";
6729
- parseItem: typeof parseInt;
6730
- toCode(t: string): Code;
6731
- identity<T extends ColumnType>(this: T, options?: TableData.Identity): IdentityColumn<T>;
6732
- }
6733
- declare class BigIntColumn extends NumberAsStringBaseColumn {
6734
- dataType: "bigint";
6735
- toCode(t: string): Code;
6736
- identity<T extends ColumnType>(this: T, options?: TableData.Identity): IdentityColumn<T>;
6737
- }
6738
- declare class DecimalColumn<Precision extends number | undefined = undefined, Scale extends number | undefined = undefined> extends DecimalBaseColumn<Precision, Scale> {
6739
- }
6740
- declare class RealColumn extends NumberBaseColumn {
6741
- dataType: "real";
6742
- parseItem: typeof parseFloat;
6743
- toCode(t: string): Code;
6744
- }
6745
- declare class DoublePrecisionColumn extends NumberAsStringBaseColumn {
6746
- dataType: "double precision";
6747
- toCode(t: string): Code;
6748
- }
6749
- declare class SmallSerialColumn extends IntegerBaseColumn {
6750
- dataType: "smallint";
6751
- parseItem: typeof parseInt;
6752
- data: SerialColumnData;
6753
- constructor();
6754
- toSQL(): string;
6755
- toCode(t: string): Code;
6756
- }
6757
- declare class SerialColumn extends IntegerBaseColumn {
6758
- dataType: "integer";
6759
- parseItem: typeof parseInt;
6760
- data: SerialColumnData;
6761
- constructor();
6762
- toSQL(): string;
6763
- toCode(t: string): Code;
6764
- }
6765
- declare class BigSerialColumn extends NumberAsStringBaseColumn {
6766
- dataType: "bigint";
6767
- data: SerialColumnData;
6768
- toSQL(): string;
6769
- toCode(t: string): Code;
6770
- }
6771
-
6772
- interface DateBaseColumn extends ColumnType<string, typeof Operators.date, string | number | Date, string, string | number | Date>, DateTypeMethods {
6773
- }
6774
- declare abstract class DateBaseColumn extends ColumnType<string, typeof Operators.date, string | number | Date, string, string | number | Date> {
6775
- data: DateColumnData;
6776
- operators: {
6777
- equals: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6778
- not: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6779
- in: Operator<orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | (string | Date)[], BooleanColumn>;
6780
- notIn: Operator<orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | (string | Date)[], BooleanColumn>;
6781
- } & {
6782
- lt: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6783
- lte: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6784
- gt: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6785
- gte: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6786
- between: Operator<[string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query], BooleanColumn>;
6787
- };
6788
- encodeFn: (input: string | number | Date) => Date;
6789
- asNumber(): EncodeColumn<IntegerColumn, string | number | Date>;
6790
- asDate<T extends ColumnType>(this: T): ParseColumn<T, Date>;
6791
- }
6792
- declare class DateColumn extends DateBaseColumn {
6793
- dataType: "date";
6794
- toCode(t: string): Code;
6795
- }
6796
- declare abstract class DateTimeBaseClass<Precision extends number | undefined = undefined> extends DateBaseColumn {
6797
- data: DateColumnData & {
6798
- dateTimePrecision: Precision;
6799
- };
6800
- constructor(dateTimePrecision?: Precision);
6801
- toSQL(): string;
6802
- }
6803
- declare abstract class DateTimeTzBaseClass<Precision extends number | undefined = undefined> extends DateTimeBaseClass<Precision> {
6804
- abstract baseDataType: string;
6805
- toSQL(): string;
6806
- }
6807
- declare class TimestampColumn<Precision extends number> extends DateTimeBaseClass<Precision> {
6808
- dataType: "timestamp";
6809
- toCode(t: string): Code;
6810
- }
6811
- declare class TimestampTZColumn<Precision extends number> extends DateTimeTzBaseClass<Precision> {
6812
- dataType: "timestamptz";
6813
- baseDataType: "timestamp";
6814
- toCode(t: string): Code;
6815
- }
6816
- declare class TimeColumn<Precision extends number | undefined = undefined> extends DateTimeBaseClass<Precision> {
6817
- dataType: "time";
6818
- toCode(t: string): Code;
6819
- }
6820
- type TimeInterval = {
6821
- years?: number;
6822
- months?: number;
6823
- days?: number;
6824
- hours?: number;
6825
- minutes?: number;
6826
- seconds?: number;
6827
- };
6828
- declare class IntervalColumn<Fields extends string | undefined = undefined, Precision extends number | undefined = undefined> extends ColumnType<TimeInterval, typeof Operators.date> {
6829
- dataType: "interval";
6830
- data: ColumnData & {
6831
- fields: Fields;
6832
- precision: Precision;
6833
- };
6834
- operators: {
6835
- equals: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6836
- not: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6837
- in: Operator<orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | (string | Date)[], BooleanColumn>;
6838
- notIn: Operator<orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Query | (string | Date)[], BooleanColumn>;
6839
- } & {
6840
- lt: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6841
- lte: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6842
- gt: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6843
- gte: Operator<string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, BooleanColumn>;
6844
- between: Operator<[string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query, string | orchid_core.Expression<orchid_core.ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, orchid_core.ColumnDataBase>> | Date | Query], BooleanColumn>;
6845
- };
6846
- constructor(fields?: Fields, precision?: Precision);
6847
- toCode(t: string): Code;
6848
- toSQL(): string;
6849
- }
6714
+ declare const columnTypes: DefaultColumnTypes;
6850
6715
 
6851
6716
  type ColumnData = ColumnDataBase & {
6852
6717
  maxChars?: number;
@@ -6928,220 +6793,7 @@ type ColumnFromDbParams = {
6928
6793
  numericScale?: number;
6929
6794
  dateTimePrecision?: number;
6930
6795
  };
6931
- declare const simplifyColumnDefault: (value?: string) => RawSQL<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {
6932
- timestamps<T extends ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>>(this: {
6933
- name(name: string): {
6934
- timestamp(): T;
6935
- };
6936
- timestamp(): T;
6937
- timestampsSnakeCase(): {
6938
- createdAt: orchid_core.ColumnWithDefault<T, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>>;
6939
- updatedAt: orchid_core.ColumnWithDefault<T, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>>;
6940
- };
6941
- }): {
6942
- createdAt: orchid_core.ColumnWithDefault<T, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>>;
6943
- updatedAt: orchid_core.ColumnWithDefault<T, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>>;
6944
- };
6945
- timestampsSnakeCase<T_1 extends ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>>(this: {
6946
- name(name: string): {
6947
- timestamp(): T_1;
6948
- };
6949
- timestamp(): T_1;
6950
- }): {
6951
- createdAt: orchid_core.ColumnWithDefault<T_1, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>>;
6952
- updatedAt: orchid_core.ColumnWithDefault<T_1, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>>;
6953
- };
6954
- timestampsNoTZ<T_2 extends ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>>(this: {
6955
- name(name: string): {
6956
- timestampNoTZ(): T_2;
6957
- };
6958
- timestampNoTZ(): T_2;
6959
- timestampsNoTZSnakeCase(): {
6960
- createdAt: orchid_core.ColumnWithDefault<T_2, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>>;
6961
- updatedAt: orchid_core.ColumnWithDefault<T_2, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>>;
6962
- };
6963
- }): {
6964
- createdAt: orchid_core.ColumnWithDefault<T_2, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>>;
6965
- updatedAt: orchid_core.ColumnWithDefault<T_2, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>>;
6966
- };
6967
- timestampsNoTZSnakeCase<T_3 extends ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>>(this: {
6968
- name(name: string): {
6969
- timestampNoTZ(): T_3;
6970
- };
6971
- timestampNoTZ(): T_3;
6972
- }): {
6973
- createdAt: orchid_core.ColumnWithDefault<T_3, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>>;
6974
- updatedAt: orchid_core.ColumnWithDefault<T_3, RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>>;
6975
- };
6976
- name: typeof orchid_core.name;
6977
- sql: {
6978
- (sql: TemplateStringsArray, ...values: unknown[]): RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>;
6979
- (sql: string): RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>;
6980
- (values: Record<string, unknown>, sql: string): RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>;
6981
- (values: Record<string, unknown>): (strings: TemplateStringsArray, ...values: unknown[]) => RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>;
6982
- };
6983
- smallint(): SmallIntColumn;
6984
- integer(): IntegerColumn;
6985
- bigint(): BigIntColumn;
6986
- numeric<Precision extends number | undefined = undefined, Scale extends number | undefined = undefined>(precision?: Precision | undefined, scale?: Scale | undefined): DecimalColumn<Precision, Scale>;
6987
- decimal<Precision_1 extends number | undefined = undefined, Scale_1 extends number | undefined = undefined>(precision?: Precision_1 | undefined, scale?: Scale_1 | undefined): DecimalColumn<Precision_1, Scale_1>;
6988
- real(): RealColumn;
6989
- doublePrecision(): DoublePrecisionColumn;
6990
- identity(options?: TableData.Identity | undefined): orchid_core.ColumnWithDefault<IntegerColumn, orchid_core.Expression<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>>>;
6991
- smallSerial(): SmallSerialColumn;
6992
- serial(): SerialColumn;
6993
- bigSerial(): BigSerialColumn;
6994
- money(): MoneyColumn;
6995
- varchar<Limit extends number | undefined = undefined>(limit?: Limit | undefined): VarCharColumn<Limit>;
6996
- char<Limit_1 extends number | undefined = undefined>(limit?: Limit_1 | undefined): CharColumn<Limit_1>;
6997
- text(min: number, max: number): TextColumn;
6998
- string<Limit_2 extends number = 255>(limit?: Limit_2): VarCharColumn<Limit_2>;
6999
- citext(min: number, max: number): CitextColumn;
7000
- bytea(): ByteaColumn;
7001
- date(): DateColumn;
7002
- timestampNoTZ<Precision_2 extends number>(precision?: Precision_2 | undefined): TimestampColumn<Precision_2>;
7003
- timestamp<Precision_3 extends number | undefined = undefined>(precision?: Precision_3 | undefined): TimestampTZColumn<number>; /**
7004
- * Set the foreignKey for the column.
7005
- *
7006
- * In `snakeCase` mode, columns of both tables are translated to a snake_case.
7007
- *
7008
- * ```ts
7009
- * import { change } from '../dbScript';
7010
- *
7011
- * change(async (db) => {
7012
- * await db.createTable('table', (t) => ({
7013
- * otherId: t.integer().foreignKey('otherTableName', 'columnName'),
7014
- * }));
7015
- * });
7016
- * ```
7017
- *
7018
- * In the ORM specify a function returning a table class instead of a name:
7019
- *
7020
- * ```ts
7021
- * export class SomeTable extends BaseTable {
7022
- * readonly table = 'someTable';
7023
- * columns = this.setColumns((t) => ({
7024
- * otherTableId: t.integer().foreignKey(() => OtherTable, 'id'),
7025
- * }));
7026
- * }
7027
- *
7028
- * export class OtherTable extends BaseTable {
7029
- * readonly table = 'otherTable';
7030
- * columns = this.setColumns((t) => ({
7031
- * id: t.identity().primaryKey(),
7032
- * }));
7033
- * }
7034
- * ```
7035
- *
7036
- * Optionally you can pass the third argument to `foreignKey` with options:
7037
- *
7038
- * ```ts
7039
- * type ForeignKeyOptions = {
7040
- * // name of the constraint
7041
- * name?: string;
7042
- * // see database docs for MATCH in FOREIGN KEY
7043
- * match?: 'FULL' | 'PARTIAL' | 'SIMPLE';
7044
- *
7045
- * onUpdate?: 'NO ACTION' | 'RESTRICT' | 'CASCADE' | 'SET NULL' | 'SET DEFAULT';
7046
- * onDelete?: 'NO ACTION' | 'RESTRICT' | 'CASCADE' | 'SET NULL' | 'SET DEFAULT';
7047
- * };
7048
- * ```
7049
- *
7050
- * ## composite foreign key
7051
- *
7052
- * Set foreign key from multiple columns in the current table to corresponding columns in the other table.
7053
- *
7054
- * The first argument is an array of columns in the current table, the second argument is another table name, the third argument is an array of columns in another table, and the fourth argument is for options.
7055
- *
7056
- * Options are the same as in a single-column foreign key.
7057
- *
7058
- * ```ts
7059
- * import { change } from '../dbScript';
7060
- *
7061
- * change(async (db) => {
7062
- * await db.createTable('table', (t) => ({
7063
- * id: t.integer(),
7064
- * name: t.string(),
7065
- * ...t.foreignKey(
7066
- * ['id', 'name'],
7067
- * 'otherTable',
7068
- * ['foreignId', 'foreignName'],
7069
- * {
7070
- * name: 'constraintName',
7071
- * match: 'FULL',
7072
- * onUpdate: 'RESTRICT',
7073
- * onDelete: 'CASCADE',
7074
- * },
7075
- * ),
7076
- * }));
7077
- * });
7078
- * ```
7079
- *
7080
- * @param fn - function returning a table class
7081
- * @param column - column in the foreign table to connect with
7082
- * @param options - {@link ForeignKeyOptions}
7083
- */
7084
- time<Precision_4 extends number | undefined = undefined>(precision?: Precision_4 | undefined): TimeColumn<Precision_4>;
7085
- interval<Fields extends string | undefined = undefined, Precision_5 extends number | undefined = undefined>(fields?: Fields | undefined, precision?: Precision_5 | undefined): IntervalColumn<Fields, Precision_5>;
7086
- boolean(): BooleanColumn;
7087
- enum<U extends string, T_4 extends [U, ...U[]]>(dataType: string, type: T_4): EnumColumn<U, T_4>;
7088
- point(): PointColumn;
7089
- line(): LineColumn;
7090
- lseg(): LsegColumn;
7091
- box(): BoxColumn;
7092
- path(): PathColumn;
7093
- polygon(): PolygonColumn;
7094
- circle(): CircleColumn;
7095
- cidr(): CidrColumn;
7096
- inet(): InetColumn;
7097
- macaddr(): MacAddrColumn;
7098
- macaddr8(): MacAddr8Column;
7099
- bit<Length extends number>(length: Length): BitColumn<Length>;
7100
- bitVarying<Length_1 extends number | undefined = undefined>(length?: Length_1 | undefined): BitVaryingColumn<Length_1>;
7101
- tsvector(): TsVectorColumn;
7102
- tsquery(): TsQueryColumn;
7103
- uuid(): UUIDColumn;
7104
- xml(): XMLColumn;
7105
- json<Type extends orchid_core.JSONType<unknown, {}> = orchid_core.JSONUnknown>(schemaOrFn?: Type | ((j: {
7106
- unknown: () => orchid_core.JSONUnknown;
7107
- boolean: () => orchid_core.JSONBoolean;
7108
- null: () => orchid_core.JSONNull;
7109
- number: <T_5 extends number = number>() => orchid_core.JSONNumber<T_5>;
7110
- string: <T_6 extends string = string>() => orchid_core.JSONString<T_6>;
7111
- array: <T_7 extends orchid_core.JSONType<unknown, {}>>(item: T_7) => orchid_core.JSONArray<T_7, "many">;
7112
- object: <Shape extends orchid_core.JSONObjectShape>(shape: Shape) => orchid_core.JSONObject<Shape, "strip", orchid_core.JSONType<unknown, {}>>;
7113
- literal: <T_8 extends orchid_core.JSONPrimitive>(value: T_8) => orchid_core.JSONLiteral<T_8>;
7114
- discriminatedUnion: <Discriminator extends string, Types extends orchid_core.JSONDiscriminatedUnionArg<Discriminator>>(discriminator: Discriminator, types: Types) => orchid_core.JSONDiscriminatedUnion<Discriminator, Types>;
7115
- enum: <U_1 extends string, T_9 extends [U_1, ...U_1[]]>(options: T_9) => orchid_core.JSONEnum<string, T_9>;
7116
- intersection: <Left extends orchid_core.JSONType<unknown, {}>, Right extends orchid_core.JSONType<unknown, {}>>(left: Left, right: Right) => orchid_core.JSONIntersection<Left, Right>;
7117
- lazy: <T_10 extends orchid_core.JSONType<unknown, {}>>(fn: () => T_10) => orchid_core.JSONLazy<T_10>;
7118
- nativeEnum: <T_11 extends orchid_core.EnumLike>(type: T_11) => orchid_core.JSONNativeEnum<T_11>;
7119
- record: <Key extends orchid_core.JSONString<string> | orchid_core.JSONNumber<number>, Value extends orchid_core.JSONType<unknown, {}>>(...args: [value: Value] | [key: Key, value: Value]) => orchid_core.JSONRecord<Key, Value>;
7120
- tuple: <T_12 extends orchid_core.JSONTupleItems, Rest extends orchid_core.JSONType<unknown, {}> | undefined = undefined>(items: T_12, rest?: Rest | undefined) => orchid_core.JSONTuple<T_12, Rest>;
7121
- union: <T_13 extends orchid_core.JSONUnionArgs>(...types: T_13) => orchid_core.JSONUnion<T_13>;
7122
- }) => Type) | undefined): JSONColumn<Type>;
7123
- jsonText(): JSONTextColumn;
7124
- array<Item extends ColumnType<unknown, BaseOperators, unknown, unknown, unknown>>(item: Item): ArrayColumn<Item>;
7125
- type(dataType: string): CustomTypeColumn;
7126
- domain(dataType: string): DomainColumn;
7127
- primaryKey(columns: string[], options?: {
7128
- name?: string | undefined;
7129
- } | undefined): {};
7130
- index(columns: MaybeArray<string | IndexColumnOptions>, options?: IndexOptions): {};
7131
- unique(columns: MaybeArray<string | IndexColumnOptions>, options?: IndexOptions | undefined): {};
7132
- searchIndex(columns: MaybeArray<string | IndexColumnOptions>, options?: IndexOptions | undefined): {};
7133
- constraint<Table extends string | (() => ForeignKeyTable), Columns extends Table extends () => ForeignKeyTable ? [ColumnNameOfTable<ReturnType<Table>>, ...ColumnNameOfTable<ReturnType<Table>>[]] : [string, ...string[]]>({ name, references, check, dropMode, }: {
7134
- name?: string | undefined;
7135
- references?: [columns: string[], fnOrTable: Table, foreignColumns: Columns, options?: ForeignKeyOptions | undefined] | undefined;
7136
- check?: RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}> | undefined;
7137
- dropMode?: DropMode | undefined;
7138
- }): {};
7139
- foreignKey<Table_1 extends string | (() => ForeignKeyTable), Columns_1 extends Table_1 extends () => ForeignKeyTable ? [ColumnNameOfTable<ReturnType<Table_1>>, ...ColumnNameOfTable<ReturnType<Table_1>>[]] : [string, ...string[]]>(columns: string[], fnOrTable: Table_1, foreignColumns: Columns_1, options?: (ForeignKeyOptions & {
7140
- name?: string | undefined;
7141
- dropMode?: DropMode | undefined;
7142
- }) | undefined): {};
7143
- check(check: RawSQLBase<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, {}>): {};
7144
- }> | undefined;
6796
+ declare const simplifyColumnDefault: (value?: string) => RawSQL<ColumnTypeBase<unknown, orchid_core.BaseOperators, unknown, unknown, unknown, ColumnDataBase>, DefaultColumnTypes> | undefined;
7145
6797
  declare const instantiateColumn: (klass: new (...args: never[]) => ColumnType, params: ColumnFromDbParams) => ColumnType;
7146
6798
  declare abstract class ColumnType<Type = unknown, Ops extends BaseOperators = BaseOperators, InputType = Type, OutputType = Type, QueryType = Type> extends ColumnTypeBase<Type, Ops, InputType, OutputType, QueryType, ColumnData> {
7147
6799
  /**
@@ -7460,4 +7112,4 @@ declare module 'orchid-core' {
7460
7112
  }
7461
7113
  declare function addComputedColumns<T extends Query, Computed extends ComputedColumnsBase<T>>(q: T, computed: Computed): QueryWithComputed<T, Computed>;
7462
7114
 
7463
- export { Adapter, AdapterConfig, AdapterOptions, AddQuerySelect, AddQueryWith, AfterHook, AggregateMethods, AggregateOptions, AliasOrTable, ArrayColumn, ArrayData, ArrayOfColumnsObjects, AsMethods, BaseOperators, BigIntColumn, BigSerialColumn, BitColumn, BitVaryingColumn, BooleanColumn, BooleanNullable, BoxColumn, ByteaColumn, CharColumn, CidrColumn, CircleColumn, CitextColumn, Clear, ClearStatement, ColumnData, ColumnExpression, ColumnFromDbParams, ColumnInfo, ColumnInfoMethods, ColumnInfoQueryData, ColumnOperators, ColumnRefExpression, ColumnType, ColumnTypes, ColumnsObject, ColumnsShape, CommonQueryData, ComputedColumnsBase, CopyMethods, CopyOptions, CopyQueryData, Create, CreateColumn, CreateCtx, CreateData, CreateKind, CreateMethodsNames, CreateRelationDataOmittingFKeys, CreateRelationsData, CreateRelationsDataOmittingFKeys, CustomTypeColumn, DateBaseColumn, DateColumn, DateTimeBaseClass, DateTimeTzBaseClass, Db, DbOptions, DbResult, DbTableOptions, DecimalBaseColumn, DecimalColumn, DefaultColumnTypes, Delete, DeleteMethodsNames, DeleteQueryData, DomainColumn, DoublePrecisionColumn, DropMode, DynamicRawSQL, EnumColumn, ExpressionOutput, FnExpression, FnExpressionArgs, For, ForeignKey, ForeignKeyAction, ForeignKeyMatch, ForeignKeyOptions, From, FromArgs, FromResult, GetArg, GetQueryResult, GetStringArg, Having, HavingItem, HookAction, HookSelect, IdentityColumn, IndexColumnOptions, IndexOptions, InetColumn, InsertQueryData, IntegerBaseColumn, IntegerColumn, IntervalColumn, IsolationLevel, JSONColumn, JSONTextColumn, Join, JoinArgs, JoinCallback, JoinFirstArg, JoinItem, JoinLateralCallback, JoinLateralItem, JoinLateralResult, JoinOverrides, JoinResult, JoinedParsers, JoinedShapes, JsonItem, JsonMethods, JsonModifiers, LimitedTextBaseColumn, LineColumn, LsegColumn, MacAddr8Column, MacAddrColumn, MergeQuery, MergeQueryMethods, MoneyColumn, MoreThanOneRowError, NoPrimaryKeyOption, NotFoundError, NumberAsStringBaseColumn, NumberBaseColumn, NumberColumn, NumberColumnData, OnConflictItem, OnConflictMergeUpdate, OnConflictQueryBuilder, OnQueryBuilder, Operator, Operators, OrCreateArg, OrchidOrmError, OrchidOrmInternalError, OrderArg, OrderArgs, OrderItem, OrderTsQueryConfig, Over, PathColumn, PluckResultColumnType, PointColumn, PolygonColumn, Query, QueryAfterHook, QueryArraysResult, QueryBase, QueryBeforeHook, QueryData, QueryDefaultReturnData, QueryError, QueryErrorName, QueryGet, QueryHookSelect, QueryHooks, QueryLog, QueryLogObject, QueryLogOptions, QueryLogger, QueryMethods, QueryResult, QueryReturnType, QueryReturnsAll, QuerySourceItem, QueryTransform, QueryTransformFn, QueryUpsertOrCreate, QueryWithComputed, QueryWithTable, RawSQL, RawSqlMethods, RealColumn, RelationConfigBase, RelationQuery, RelationQueryBase, RelationsBase, SearchArg, SearchMethods, SearchWeight, Select, SelectArg, SelectAs, SelectItem, SelectQueryData, SelectSubQueryResult, SelectableBase, SelectableFromShape, SelectableOfType, SelectableOrExpression, SelectableOrExpressionOfType, SerialColumn, SerialColumnData, SetQueryKind, SetQueryReturns, SetQueryReturnsAll, SetQueryReturnsColumn, SetQueryReturnsColumnInfo, SetQueryReturnsColumnOptional, SetQueryReturnsOne, SetQueryReturnsOneOptional, SetQueryReturnsPluck, SetQueryReturnsPluckColumn, SetQueryReturnsRowCount, SetQueryReturnsRows, SetQueryReturnsValue, SetQueryReturnsValueOptional, SetQueryReturnsVoid, SetQueryTableAlias, SetQueryWith, SimpleJoinItem, SingleColumnIndexOptions, SmallIntColumn, SmallSerialColumn, SortDir, StringColumn, TableData, TextBaseColumn, TextColumn, TextColumnData, Then, TimeColumn, TimeInterval, TimestampColumn, TimestampTZColumn, ToSQLCtx, ToSQLOptions, Transaction, TransactionAdapter, TransactionOptions, TransformMethods, TruncateQueryData, TsQueryColumn, TsVectorColumn, TypeParsers, UUIDColumn, UnhandledTypeError, Union, UnionArg, UnionItem, UnionKind, UnknownColumn, Update, UpdateCtx, UpdateData, UpdateQueryData, UpdateQueryDataItem, UpdateQueryDataObject, UpdatedAtDataInjector, UpsertArg, UpsertResult, UpsertThis, VarCharColumn, VirtualColumn, Where, WhereArg, WhereArgs, WhereInArg, WhereInColumn, WhereInItem, WhereInValues, WhereItem, WhereJsonPathEqualsItem, WhereOnItem, WhereOnJoinItem, WhereQueryBase, WhereQueryBuilder, WhereResult, WhereSearchItem, WhereSearchResult, WindowArg, WindowArgDeclaration, WindowDeclaration, WindowItem, With, WithDataBase, WithDataItem, WithItem, WithOptions, XMLColumn, addComputedColumns, addOr, addOrNot, addParserForRawExpression, addParserForSelectItem, addQueryOn, addWhere, addWhereIn, addWhereNot, anyShape, checkIfASimpleQuery, cloneQueryArrays, columnCheckToCode, columnCode, columnForeignKeysToCode, columnIndexesToCode, columnTypes, columnsByType, columnsShapeToCode, constraintPropsToCode, constraintToCode, countSelect, createDb, extendQuery, foreignKeyArgumentToCode, getClonedQueryData, getColumnTypes, getConstraintKind, getQueryAs, getShapeFromSelect, getTableData, handleResult, identityToCode, indexToCode, instantiateColumn, isQueryReturnsAll, isSelectingCount, joinSubQuery, logColors, logParamToLogObject, makeExpression, makeFnExpression, makeRegexToFindInSql, makeSQL, newTableData, parseRecord, parseResult, primaryKeyToCode, processSelectArg, pushLimitSQL, pushQueryArray, pushQueryOn, pushQueryOrOn, pushQueryValue, queryMethodByReturnType, queryTypeWithLimitOne, quote, quoteString, raw, referencesArgsToCode, resetTableData, resolveSubQueryCallback, saveSearchAlias, setParserForSelectedString, setQueryObjectValue, setQueryOperators, simplifyColumnDefault, templateLiteralToSQL, testTransaction, throwIfNoWhere, toSQL, toSQLCacheKey };
7115
+ export { Adapter, AdapterConfig, AdapterOptions, AddQuerySelect, AddQueryWith, AfterHook, AggregateMethods, AggregateOptions, AliasOrTable, ArrayColumn, ArrayData, ArrayOfColumnsObjects, AsMethods, BaseOperators, BigIntColumn, BigSerialColumn, BitColumn, BitVaryingColumn, BooleanColumn, BooleanNullable, BoxColumn, ByteaColumn, CharColumn, CidrColumn, CircleColumn, CitextColumn, Clear, ClearStatement, ColumnData, ColumnExpression, ColumnFromDbParams, ColumnInfo, ColumnInfoMethods, ColumnInfoQueryData, ColumnOperators, ColumnRefExpression, ColumnType, ColumnsObject, ColumnsShape, CommonQueryData, ComputedColumnsBase, CopyMethods, CopyOptions, CopyQueryData, Create, CreateColumn, CreateCtx, CreateData, CreateKind, CreateMethodsNames, CreateRelationDataOmittingFKeys, CreateRelationsData, CreateRelationsDataOmittingFKeys, CustomTypeColumn, DateBaseColumn, DateColumn, DateTimeBaseClass, DateTimeTzBaseClass, Db, DbOptions, DbResult, DbTableOptions, DecimalBaseColumn, DecimalColumn, DefaultColumnTypes, Delete, DeleteMethodsNames, DeleteQueryData, DomainColumn, DoublePrecisionColumn, DropMode, DynamicRawSQL, EnumColumn, ExpressionOutput, FnExpression, FnExpressionArgs, For, ForeignKey, ForeignKeyAction, ForeignKeyMatch, ForeignKeyOptions, From, FromArgs, FromResult, GetArg, GetQueryResult, GetStringArg, Having, HavingItem, HookAction, HookSelect, IdentityColumn, IndexColumnOptions, IndexOptions, InetColumn, InsertQueryData, IntegerBaseColumn, IntegerColumn, IntervalColumn, IsolationLevel, JSONColumn, JSONTextColumn, Join, JoinArgs, JoinCallback, JoinFirstArg, JoinItem, JoinLateralCallback, JoinLateralItem, JoinLateralResult, JoinOverrides, JoinResult, JoinedParsers, JoinedShapes, JsonItem, JsonMethods, JsonModifiers, LimitedTextBaseColumn, LineColumn, LsegColumn, MacAddr8Column, MacAddrColumn, MergeQuery, MergeQueryMethods, MoneyColumn, MoreThanOneRowError, NoPrimaryKeyOption, NotFoundError, NumberAsStringBaseColumn, NumberBaseColumn, NumberColumn, NumberColumnData, OnConflictItem, OnConflictMergeUpdate, OnConflictQueryBuilder, OnQueryBuilder, Operator, Operators, OrCreateArg, OrchidOrmError, OrchidOrmInternalError, OrderArg, OrderArgs, OrderItem, OrderTsQueryConfig, Over, PathColumn, PluckResultColumnType, PointColumn, PolygonColumn, Query, QueryAfterHook, QueryArraysResult, QueryBase, QueryBeforeHook, QueryData, QueryDefaultReturnData, QueryError, QueryErrorName, QueryGet, QueryHookSelect, QueryHooks, QueryLog, QueryLogObject, QueryLogOptions, QueryLogger, QueryMethods, QueryResult, QueryReturnType, QueryReturnsAll, QuerySourceItem, QueryTransform, QueryTransformFn, QueryUpsertOrCreate, QueryWithComputed, QueryWithTable, RawSQL, RawSqlMethods, RealColumn, RelationConfigBase, RelationQuery, RelationQueryBase, RelationsBase, SearchArg, SearchMethods, SearchWeight, Select, SelectArg, SelectAs, SelectItem, SelectQueryData, SelectSubQueryResult, SelectableBase, SelectableFromShape, SelectableOfType, SelectableOrExpression, SelectableOrExpressionOfType, SerialColumn, SerialColumnData, SetQueryKind, SetQueryReturns, SetQueryReturnsAll, SetQueryReturnsColumn, SetQueryReturnsColumnInfo, SetQueryReturnsColumnOptional, SetQueryReturnsOne, SetQueryReturnsOneOptional, SetQueryReturnsPluck, SetQueryReturnsPluckColumn, SetQueryReturnsRowCount, SetQueryReturnsRows, SetQueryReturnsValue, SetQueryReturnsValueOptional, SetQueryReturnsVoid, SetQueryTableAlias, SetQueryWith, SimpleJoinItem, SingleColumnIndexOptions, SmallIntColumn, SmallSerialColumn, SortDir, StringColumn, TableData, TextBaseColumn, TextColumn, TextColumnData, Then, TimeColumn, TimeInterval, TimestampColumn, TimestampTZColumn, ToSQLCtx, ToSQLOptions, Transaction, TransactionAdapter, TransactionOptions, TransformMethods, TruncateQueryData, TsQueryColumn, TsVectorColumn, TypeParsers, UUIDColumn, UnhandledTypeError, Union, UnionArg, UnionItem, UnionKind, UnknownColumn, Update, UpdateCtx, UpdateData, UpdateQueryData, UpdateQueryDataItem, UpdateQueryDataObject, UpdatedAtDataInjector, UpsertArg, UpsertResult, UpsertThis, VarCharColumn, VirtualColumn, Where, WhereArg, WhereArgs, WhereInArg, WhereInColumn, WhereInItem, WhereInValues, WhereItem, WhereJsonPathEqualsItem, WhereOnItem, WhereOnJoinItem, WhereQueryBase, WhereQueryBuilder, WhereResult, WhereSearchItem, WhereSearchResult, WindowArg, WindowArgDeclaration, WindowDeclaration, WindowItem, With, WithDataBase, WithDataItem, WithItem, WithOptions, XMLColumn, addComputedColumns, addOr, addOrNot, addParserForRawExpression, addParserForSelectItem, addQueryOn, addWhere, addWhereIn, addWhereNot, anyShape, checkIfASimpleQuery, cloneQueryArrays, columnCheckToCode, columnCode, columnForeignKeysToCode, columnIndexesToCode, columnTypes, columnsByType, columnsShapeToCode, constraintPropsToCode, constraintToCode, countSelect, createDb, extendQuery, foreignKeyArgumentToCode, getClonedQueryData, getColumnTypes, getConstraintKind, getQueryAs, getShapeFromSelect, getTableData, handleResult, identityToCode, indexToCode, instantiateColumn, isQueryReturnsAll, isSelectingCount, joinSubQuery, logColors, logParamToLogObject, makeExpression, makeFnExpression, makeRegexToFindInSql, makeSQL, newTableData, parseRecord, parseResult, primaryKeyToCode, processSelectArg, pushLimitSQL, pushQueryArray, pushQueryOn, pushQueryOrOn, pushQueryValue, queryMethodByReturnType, queryTypeWithLimitOne, quote, quoteString, raw, referencesArgsToCode, resetTableData, resolveSubQueryCallback, saveSearchAlias, setParserForSelectedString, setQueryObjectValue, setQueryOperators, simplifyColumnDefault, templateLiteralToSQL, testTransaction, throwIfNoWhere, toSQL, toSQLCacheKey };