@mrnafisia/type-query 1.0.53 → 1.1.0

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.
Files changed (96) hide show
  1. package/dist/context.d.ts +56 -583
  2. package/dist/context.d.ts.map +1 -1
  3. package/dist/context.js +41 -18
  4. package/dist/context.js.map +1 -1
  5. package/dist/createModelUtils.d.ts +503 -0
  6. package/dist/createModelUtils.d.ts.map +1 -0
  7. package/dist/{model.js → createModelUtils.js} +16 -13
  8. package/dist/createModelUtils.js.map +1 -0
  9. package/dist/dictionary.d.ts +93 -10
  10. package/dist/dictionary.d.ts.map +1 -1
  11. package/dist/dictionary.js +132 -164
  12. package/dist/dictionary.js.map +1 -1
  13. package/dist/entity.d.ts +687 -2483
  14. package/dist/entity.d.ts.map +1 -1
  15. package/dist/entity.js +164 -189
  16. package/dist/entity.js.map +1 -1
  17. package/dist/hook.d.ts +15 -0
  18. package/dist/hook.d.ts.map +1 -0
  19. package/dist/hook.js +30 -0
  20. package/dist/hook.js.map +1 -0
  21. package/dist/index.d.ts +17 -16
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +54 -15
  24. package/dist/index.js.map +1 -1
  25. package/dist/parser.d.ts +1 -1
  26. package/dist/parser.d.ts.map +1 -1
  27. package/dist/parser.js +1 -1
  28. package/dist/parser.js.map +1 -1
  29. package/dist/pool.d.ts +9 -5
  30. package/dist/pool.d.ts.map +1 -1
  31. package/dist/pool.js +1 -26
  32. package/dist/pool.js.map +1 -1
  33. package/dist/schema.d.ts +21 -9
  34. package/dist/schema.d.ts.map +1 -1
  35. package/dist/schema.js +169 -176
  36. package/dist/schema.js.map +1 -1
  37. package/dist/testUtil.d.ts +25 -1
  38. package/dist/testUtil.d.ts.map +1 -1
  39. package/dist/testUtil.js +8 -2
  40. package/dist/testUtil.js.map +1 -1
  41. package/dist/types/Context.d.ts +53 -0
  42. package/dist/types/Context.d.ts.map +1 -0
  43. package/dist/types/{context.js → Context.js} +1 -1
  44. package/dist/types/Context.js.map +1 -0
  45. package/dist/types/Entity.d.ts +64 -0
  46. package/dist/types/Entity.d.ts.map +1 -0
  47. package/dist/types/{entity.js → Entity.js} +1 -1
  48. package/dist/types/Entity.js.map +1 -0
  49. package/dist/types/{json.d.ts → Json.d.ts} +3 -3
  50. package/dist/types/{json.d.ts.map → Json.d.ts.map} +1 -1
  51. package/dist/types/{pool.js → Json.js} +1 -1
  52. package/dist/types/Json.js.map +1 -0
  53. package/dist/types/Model.d.ts +12 -0
  54. package/dist/types/Model.d.ts.map +1 -0
  55. package/dist/types/{table.js → Model.js} +1 -1
  56. package/dist/types/Model.js.map +1 -0
  57. package/dist/types/{table.d.ts → Table.d.ts} +5 -5
  58. package/dist/types/{table.d.ts.map → Table.d.ts.map} +1 -1
  59. package/dist/types/{json.js → Table.js} +1 -1
  60. package/dist/types/Table.js.map +1 -0
  61. package/dist/types/TypeMapper.d.ts +14 -0
  62. package/dist/types/TypeMapper.d.ts.map +1 -0
  63. package/dist/types/{model.js → TypeMapper.js} +1 -1
  64. package/dist/types/TypeMapper.js.map +1 -0
  65. package/dist/types/postgres.d.ts +3 -6
  66. package/dist/types/postgres.d.ts.map +1 -1
  67. package/dist/utils.d.ts +38 -66
  68. package/dist/utils.d.ts.map +1 -1
  69. package/dist/utils.js +48 -171
  70. package/dist/utils.js.map +1 -1
  71. package/package.json +1 -1
  72. package/dist/U.d.ts +0 -3
  73. package/dist/U.d.ts.map +0 -1
  74. package/dist/U.js +0 -29
  75. package/dist/U.js.map +0 -1
  76. package/dist/model.d.ts +0 -1006
  77. package/dist/model.d.ts.map +0 -1
  78. package/dist/model.js.map +0 -1
  79. package/dist/types/context.d.ts +0 -52
  80. package/dist/types/context.d.ts.map +0 -1
  81. package/dist/types/context.js.map +0 -1
  82. package/dist/types/entity.d.ts +0 -71
  83. package/dist/types/entity.d.ts.map +0 -1
  84. package/dist/types/entity.js.map +0 -1
  85. package/dist/types/json.js.map +0 -1
  86. package/dist/types/model.d.ts +0 -24
  87. package/dist/types/model.d.ts.map +0 -1
  88. package/dist/types/model.js.map +0 -1
  89. package/dist/types/pool.d.ts +0 -19
  90. package/dist/types/pool.d.ts.map +0 -1
  91. package/dist/types/pool.js.map +0 -1
  92. package/dist/types/table.js.map +0 -1
  93. package/dist/types/testUtil.d.ts +0 -27
  94. package/dist/types/testUtil.d.ts.map +0 -1
  95. package/dist/types/testUtil.js +0 -3
  96. package/dist/types/testUtil.js.map +0 -1
package/dist/entity.d.ts CHANGED
@@ -1,326 +1,217 @@
1
1
  import Decimal from 'decimal.js';
2
- import type { Table } from './types/table';
3
- import type { Context } from './types/context';
2
+ import type { Table } from './types/Table';
3
+ import type { Context } from './types/Context';
4
+ import { CustomTypeMap } from './types/TypeMapper';
4
5
  import { type Result } from 'never-catch';
5
6
  import { OrderDirection, PostgresType } from './types/postgres';
6
- import type { Mode, Param, Expression, ExpressionTypes, InsertValue, CustomColumn, NullableAndDefaultColumns, QueryData, Query, QueryResult, PartialQuery, UpdateSets, JoinType, TablesColumnsKeys, TableWithAlias, JoinData, AliasedColumns } from './types/entity';
7
- declare const createEntity: <T extends Table>(table: T) => {
7
+ import type { Mode, Param, Expression, InsertValue, CustomColumn, NullableAndDefaultColumns, QueryData, Query, QueryResult, UpdateSets, JoinType, TablesColumnsKeys, TableWithAlias, JoinData, AliasedColumns } from './types/Entity';
8
+ declare const createEntity: <T extends Table, CTypeMap extends CustomTypeMap<T["columns"]> = {}>(table: T) => {
8
9
  readonly table: T;
9
- readonly context: Context<T["columns"]>;
10
- readonly select: <R extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | (keyof T["columns"] & string))[]>(returning: R | ((context: Context<T["columns"]>) => R), where: Expression<boolean> | ((context: Context<T["columns"]>) => Expression<boolean>), options?: {
10
+ readonly context: Context<T["columns"], CTypeMap>;
11
+ readonly select: <R extends readonly (CustomColumn<Expression, string> | (keyof T["columns"] & string))[]>(returning: R | ((context: Context<T["columns"], CTypeMap>) => R), where: boolean | ((context: Context<T["columns"], CTypeMap>) => boolean), options?: {
11
12
  ignoreInWhere?: boolean;
12
13
  ignoreInReturning?: boolean;
13
14
  ignoreInGroupBy?: boolean;
14
15
  distinct?: boolean;
15
- groupBy?: Expression<ExpressionTypes>[] | ((context: Context<T["columns"]>) => Expression<ExpressionTypes>[]);
16
+ groupBy?: Expression[] | ((context: Context<T["columns"], CTypeMap>) => Expression[]);
16
17
  orders?: {
17
18
  by: keyof T["columns"] & string;
18
19
  direction: OrderDirection;
19
20
  }[];
20
21
  start?: bigint;
21
22
  step?: number;
22
- } | undefined) => Query<T["columns"], R>;
23
- readonly insert: <R_1 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | (keyof T["columns"] & string))[], N extends readonly (keyof NullableAndDefaultColumns<T["columns"]>)[] = []>(rows: InsertValue<T["columns"], N>[] | ((context: Context<T["columns"]>) => InsertValue<T["columns"], N>[]), returning: R_1 | ((context: Context<T["columns"]>) => R_1), options?: {
23
+ } | undefined) => Query<T["columns"], R, CTypeMap>;
24
+ readonly insert: <R_1 extends readonly (CustomColumn<Expression, string> | (keyof T["columns"] & string))[], N extends readonly (keyof NullableAndDefaultColumns<T["columns"]>)[] = []>(rows: InsertValue<T["columns"], N, CTypeMap>[] | ((context: Context<T["columns"], CTypeMap>) => InsertValue<T["columns"], N, CTypeMap>[]), returning: R_1 | ((context: Context<T["columns"], CTypeMap>) => R_1), options?: {
24
25
  nullableDefaultColumns?: N;
25
26
  ignoreInValues?: boolean;
26
27
  ignoreInReturning?: boolean;
27
- } | undefined) => Query<T["columns"], R_1>;
28
- readonly update: <R_2 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | (keyof T["columns"] & string))[]>(sets: UpdateSets<T["columns"]> | ((context: Context<T["columns"]>) => UpdateSets<T["columns"]>), where: Expression<boolean> | ((context: Context<T["columns"]>) => Expression<boolean>), returning: R_2 | ((context: Context<T["columns"]>) => R_2), options?: {
28
+ } | undefined) => Query<T["columns"], R_1, CTypeMap>;
29
+ readonly update: <R_2 extends readonly (CustomColumn<Expression, string> | (keyof T["columns"] & string))[]>(sets: UpdateSets<T["columns"], CTypeMap> | ((context: Context<T["columns"], CTypeMap>) => UpdateSets<T["columns"], CTypeMap>), where: boolean | ((context: Context<T["columns"], CTypeMap>) => boolean), returning: R_2 | ((context: Context<T["columns"], CTypeMap>) => R_2), options?: {
29
30
  ignoreInSets?: boolean;
30
31
  ignoreInWhere?: boolean;
31
32
  ignoreInReturning?: boolean;
32
- } | undefined) => Query<T["columns"], R_2>;
33
- readonly delete: <R_3 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | (keyof T["columns"] & string))[]>(where: Expression<boolean> | ((context: Context<T["columns"]>) => Expression<boolean>), returning: R_3 | ((context: Context<T["columns"]>) => R_3), options?: {
33
+ } | undefined) => Query<T["columns"], R_2, CTypeMap>;
34
+ readonly delete: <R_3 extends readonly (CustomColumn<Expression, string> | (keyof T["columns"] & string))[]>(where: boolean | ((context: Context<T["columns"], CTypeMap>) => boolean), returning: R_3 | ((context: Context<T["columns"], CTypeMap>) => R_3), options?: {
34
35
  ignoreInWhere?: boolean;
35
36
  ignoreInReturning?: boolean;
36
- } | undefined) => Query<T["columns"], R_3>;
37
- readonly join: <MainAlias extends string, JTable extends Table, JAlias extends string>(mainAlias: MainAlias, joinType: JoinType, joinTable: JTable, joinAlias: JAlias, on: Expression<boolean> | ((contexts: Record<MainAlias, Context<T["columns"]>> & Record<JAlias, Context<JTable["columns"]>>) => Expression<boolean>)) => {
38
- readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> extends infer T_1 extends {
39
- [key: string]: Table;
40
- } ? { [t in keyof T_1]: Context<(Record<MainAlias, T> & Record<JAlias, JTable>)[t]["columns"]>; } : never;
41
- readonly select: <R_4 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable>>)[]>(returning: R_4 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> extends infer T_2 extends {
42
- [key: string]: Table;
43
- } ? { [t_1 in keyof T_2]: Context<(Record<MainAlias, T> & Record<JAlias, JTable>)[t_1]["columns"]>; } : never) => R_4), where: Expression<boolean> | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> extends infer T_3 extends {
44
- [key: string]: Table;
45
- } ? { [t_2 in keyof T_3]: Context<(Record<MainAlias, T> & Record<JAlias, JTable>)[t_2]["columns"]>; } : never) => Expression<boolean>), options?: {
37
+ } | undefined) => Query<T["columns"], R_3, CTypeMap>;
38
+ readonly join: <MainAlias extends string, JTable extends Table, JAlias extends string, JCTypeMap extends CustomTypeMap<JTable["columns"]> = {}>(mainAlias: MainAlias, joinType: JoinType, joinTable: JTable, joinAlias: JAlias, on: boolean | ((contexts: Record<MainAlias, Context<T["columns"], CTypeMap>> & Record<JAlias, Context<JTable["columns"], JCTypeMap>>) => boolean)) => {
39
+ readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> extends infer T_1 extends Record<string, Table> ? { [t in keyof T_1]: Context<(Record<MainAlias, T> & Record<JAlias, JTable>)[t]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap>)[t]>; } : never;
40
+ readonly select: <R_4 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable>>)[]>(returning: R_4 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> extends infer T_2 extends Record<string, Table> ? { [t_1 in keyof T_2]: Context<(Record<MainAlias, T> & Record<JAlias, JTable>)[t_1]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap>)[t_1]>; } : never) => R_4), where: boolean | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> extends infer T_3 extends Record<string, Table> ? { [t_2 in keyof T_3]: Context<(Record<MainAlias, T> & Record<JAlias, JTable>)[t_2]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap>)[t_2]>; } : never) => boolean), options?: {
46
41
  ignoreInWhere?: boolean;
47
42
  ignoreInReturning?: boolean;
48
43
  ignoreInJoin?: boolean;
49
44
  ignoreInGroupBy?: boolean;
50
45
  distinct?: boolean;
51
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> extends infer T_4 extends {
52
- [key: string]: Table;
53
- } ? { [t_3 in keyof T_4]: Context<(Record<MainAlias, T> & Record<JAlias, JTable>)[t_3]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
46
+ groupBy?: Expression[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> extends infer T_4 extends Record<string, Table> ? { [t_3 in keyof T_4]: Context<(Record<MainAlias, T> & Record<JAlias, JTable>)[t_3]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap>)[t_3 & (MainAlias | JAlias)]>; } : never) => Expression[]);
54
47
  orders?: {
55
48
  by: TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable>>;
56
49
  direction: OrderDirection;
57
50
  }[];
58
51
  start?: bigint;
59
52
  step?: number;
60
- } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias>, R_4>;
61
- readonly join: <JTable_1 extends Table, JAlias_1 extends string>(joinType: JoinType, joinTable: JTable_1, joinAlias: JAlias_1, on: Expression<boolean> | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> extends infer T_5 extends {
62
- [key: string]: Table;
63
- } ? { [t_4 in keyof T_5]: Context<(Record<MainAlias, T> & Record<JAlias, JTable>)[t_4]["columns"]>; } : never) & Record<JAlias_1, Context<JTable_1["columns"]>>) => Expression<boolean>)) => {
64
- readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_6 extends {
65
- [key: string]: Table;
66
- } ? { [t_5 in keyof T_6]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_5]["columns"]>; } : never;
67
- readonly select: <R_5 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>>)[]>(returning: R_5 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_7 extends {
68
- [key: string]: Table;
69
- } ? { [t_6 in keyof T_7]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_6]["columns"]>; } : never) => R_5), where: Expression<boolean> | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_8 extends {
70
- [key: string]: Table;
71
- } ? { [t_7 in keyof T_8]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_7]["columns"]>; } : never) => Expression<boolean>), options?: {
53
+ } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias>, R_4, CustomTypeMap<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias>>>;
54
+ readonly join: <JTable_1 extends Table, JAlias_1 extends string, JCTypeMap_1 extends CustomTypeMap<JTable_1["columns"]> = {}>(joinType: JoinType, joinTable: JTable_1, joinAlias: JAlias_1, on: boolean | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> extends infer T_5 extends Record<string, Table> ? { [t_4 in keyof T_5]: Context<(Record<MainAlias, T> & Record<JAlias, JTable>)[t_4]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap>)[t_4]>; } : never) & Record<JAlias_1, Context<JTable_1["columns"], JCTypeMap_1>>) => boolean)) => {
55
+ readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_6 extends Record<string, Table> ? { [t_5 in keyof T_6]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_5]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1>)[t_5]>; } : never;
56
+ readonly select: <R_5 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>>)[]>(returning: R_5 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_7 extends Record<string, Table> ? { [t_6 in keyof T_7]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_6]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1>)[t_6]>; } : never) => R_5), where: boolean | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_8 extends Record<string, Table> ? { [t_7 in keyof T_8]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_7]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1>)[t_7]>; } : never) => boolean), options?: {
72
57
  ignoreInWhere?: boolean;
73
58
  ignoreInReturning?: boolean;
74
59
  ignoreInJoin?: boolean;
75
60
  ignoreInGroupBy?: boolean;
76
61
  distinct?: boolean;
77
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_9 extends {
78
- [key: string]: Table;
79
- } ? { [t_8 in keyof T_9]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_8]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
62
+ groupBy?: Expression[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_9 extends Record<string, Table> ? { [t_8 in keyof T_9]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_8]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1>)[t_8 & (MainAlias | JAlias | JAlias_1)]>; } : never) => Expression[]);
80
63
  orders?: {
81
64
  by: TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>>;
82
65
  direction: OrderDirection;
83
66
  }[];
84
67
  start?: bigint;
85
68
  step?: number;
86
- } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1>, R_5>;
87
- readonly join: <JTable_2 extends Table, JAlias_2 extends string>(joinType: JoinType, joinTable: JTable_2, joinAlias: JAlias_2, on: Expression<boolean> | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_10 extends {
88
- [key: string]: Table;
89
- } ? { [t_9 in keyof T_10]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_9]["columns"]>; } : never) & Record<JAlias_2, Context<JTable_2["columns"]>>) => Expression<boolean>)) => {
90
- readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_11 extends {
91
- [key: string]: Table;
92
- } ? { [t_10 in keyof T_11]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_10]["columns"]>; } : never;
93
- readonly select: <R_6 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>>)[]>(returning: R_6 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_12 extends {
94
- [key: string]: Table;
95
- } ? { [t_11 in keyof T_12]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_11]["columns"]>; } : never) => R_6), where: Expression<boolean> | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_13 extends {
96
- [key: string]: Table;
97
- } ? { [t_12 in keyof T_13]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_12]["columns"]>; } : never) => Expression<boolean>), options?: {
69
+ } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1>, R_5, CustomTypeMap<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1>>>;
70
+ readonly join: <JTable_2 extends Table, JAlias_2 extends string, JCTypeMap_2 extends CustomTypeMap<JTable_2["columns"]> = {}>(joinType: JoinType, joinTable: JTable_2, joinAlias: JAlias_2, on: boolean | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_10 extends Record<string, Table> ? { [t_9 in keyof T_10]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_9]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1>)[t_9]>; } : never) & Record<JAlias_2, Context<JTable_2["columns"], JCTypeMap_2>>) => boolean)) => {
71
+ readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_11 extends Record<string, Table> ? { [t_10 in keyof T_11]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_10]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2>)[t_10]>; } : never;
72
+ readonly select: <R_6 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>>)[]>(returning: R_6 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_12 extends Record<string, Table> ? { [t_11 in keyof T_12]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_11]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2>)[t_11]>; } : never) => R_6), where: boolean | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_13 extends Record<string, Table> ? { [t_12 in keyof T_13]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_12]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2>)[t_12]>; } : never) => boolean), options?: {
98
73
  ignoreInWhere?: boolean;
99
74
  ignoreInReturning?: boolean;
100
75
  ignoreInJoin?: boolean;
101
76
  ignoreInGroupBy?: boolean;
102
77
  distinct?: boolean;
103
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_14 extends {
104
- [key: string]: Table;
105
- } ? { [t_13 in keyof T_14]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_13]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
78
+ groupBy?: Expression[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_14 extends Record<string, Table> ? { [t_13 in keyof T_14]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_13]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2>)[t_13 & (MainAlias | JAlias | JAlias_1 | JAlias_2)]>; } : never) => Expression[]);
106
79
  orders?: {
107
80
  by: TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>>;
108
81
  direction: OrderDirection;
109
82
  }[];
110
83
  start?: bigint;
111
84
  step?: number;
112
- } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2>, R_6>;
113
- readonly join: <JTable_3 extends Table, JAlias_3 extends string>(joinType: JoinType, joinTable: JTable_3, joinAlias: JAlias_3, on: Expression<boolean> | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_15 extends {
114
- [key: string]: Table;
115
- } ? { [t_14 in keyof T_15]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_14]["columns"]>; } : never) & Record<JAlias_3, Context<JTable_3["columns"]>>) => Expression<boolean>)) => {
116
- readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_16 extends {
117
- [key: string]: Table;
118
- } ? { [t_15 in keyof T_16]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_15]["columns"]>; } : never;
119
- readonly select: <R_7 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>>)[]>(returning: R_7 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_17 extends {
120
- [key: string]: Table;
121
- } ? { [t_16 in keyof T_17]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_16]["columns"]>; } : never) => R_7), where: Expression<boolean> | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_18 extends {
122
- [key: string]: Table;
123
- } ? { [t_17 in keyof T_18]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_17]["columns"]>; } : never) => Expression<boolean>), options?: {
85
+ } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2>, R_6, CustomTypeMap<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2>>>;
86
+ readonly join: <JTable_3 extends Table, JAlias_3 extends string, JCTypeMap_3 extends CustomTypeMap<JTable_3["columns"]> = {}>(joinType: JoinType, joinTable: JTable_3, joinAlias: JAlias_3, on: boolean | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_15 extends Record<string, Table> ? { [t_14 in keyof T_15]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_14]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2>)[t_14]>; } : never) & Record<JAlias_3, Context<JTable_3["columns"], JCTypeMap_3>>) => boolean)) => {
87
+ readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_16 extends Record<string, Table> ? { [t_15 in keyof T_16]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_15]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3>)[t_15]>; } : never;
88
+ readonly select: <R_7 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>>)[]>(returning: R_7 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_17 extends Record<string, Table> ? { [t_16 in keyof T_17]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_16]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3>)[t_16]>; } : never) => R_7), where: boolean | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_18 extends Record<string, Table> ? { [t_17 in keyof T_18]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_17]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3>)[t_17]>; } : never) => boolean), options?: {
124
89
  ignoreInWhere?: boolean;
125
90
  ignoreInReturning?: boolean;
126
91
  ignoreInJoin?: boolean;
127
92
  ignoreInGroupBy?: boolean;
128
93
  distinct?: boolean;
129
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_19 extends {
130
- [key: string]: Table;
131
- } ? { [t_18 in keyof T_19]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_18]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
94
+ groupBy?: Expression[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_19 extends Record<string, Table> ? { [t_18 in keyof T_19]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_18]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3>)[t_18 & (MainAlias | JAlias | JAlias_1 | JAlias_2 | JAlias_3)]>; } : never) => Expression[]);
132
95
  orders?: {
133
96
  by: TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>>;
134
97
  direction: OrderDirection;
135
98
  }[];
136
99
  start?: bigint;
137
100
  step?: number;
138
- } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3>, R_7>;
139
- readonly join: <JTable_4 extends Table, JAlias_4 extends string>(joinType: JoinType, joinTable: JTable_4, joinAlias: JAlias_4, on: Expression<boolean> | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_20 extends {
140
- [key: string]: Table;
141
- } ? { [t_19 in keyof T_20]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_19]["columns"]>; } : never) & Record<JAlias_4, Context<JTable_4["columns"]>>) => Expression<boolean>)) => {
142
- readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_21 extends {
143
- [key: string]: Table;
144
- } ? { [t_20 in keyof T_21]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_20]["columns"]>; } : never;
145
- readonly select: <R_8 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>>)[]>(returning: R_8 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_22 extends {
146
- [key: string]: Table;
147
- } ? { [t_21 in keyof T_22]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_21]["columns"]>; } : never) => R_8), where: Expression<boolean> | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_23 extends {
148
- [key: string]: Table;
149
- } ? { [t_22 in keyof T_23]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_22]["columns"]>; } : never) => Expression<boolean>), options?: {
101
+ } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3>, R_7, CustomTypeMap<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3>>>;
102
+ readonly join: <JTable_4 extends Table, JAlias_4 extends string, JCTypeMap_4 extends CustomTypeMap<JTable_4["columns"]> = {}>(joinType: JoinType, joinTable: JTable_4, joinAlias: JAlias_4, on: boolean | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_20 extends Record<string, Table> ? { [t_19 in keyof T_20]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_19]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3>)[t_19]>; } : never) & Record<JAlias_4, Context<JTable_4["columns"], JCTypeMap_4>>) => boolean)) => {
103
+ readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_21 extends Record<string, Table> ? { [t_20 in keyof T_21]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_20]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4>)[t_20]>; } : never;
104
+ readonly select: <R_8 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>>)[]>(returning: R_8 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_22 extends Record<string, Table> ? { [t_21 in keyof T_22]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_21]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4>)[t_21]>; } : never) => R_8), where: boolean | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_23 extends Record<string, Table> ? { [t_22 in keyof T_23]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_22]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4>)[t_22]>; } : never) => boolean), options?: {
150
105
  ignoreInWhere?: boolean;
151
106
  ignoreInReturning?: boolean;
152
107
  ignoreInJoin?: boolean;
153
108
  ignoreInGroupBy?: boolean;
154
109
  distinct?: boolean;
155
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_24 extends {
156
- [key: string]: Table;
157
- } ? { [t_23 in keyof T_24]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_23]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
110
+ groupBy?: Expression[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_24 extends Record<string, Table> ? { [t_23 in keyof T_24]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_23]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4>)[t_23 & (MainAlias | JAlias | JAlias_1 | JAlias_2 | JAlias_3 | JAlias_4)]>; } : never) => Expression[]);
158
111
  orders?: {
159
112
  by: TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>>;
160
113
  direction: OrderDirection;
161
114
  }[];
162
115
  start?: bigint;
163
116
  step?: number;
164
- } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4>, R_8>;
165
- readonly join: <JTable_5 extends Table, JAlias_5 extends string>(joinType: JoinType, joinTable: JTable_5, joinAlias: JAlias_5, on: Expression<boolean> | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_25 extends {
166
- [key: string]: Table;
167
- } ? { [t_24 in keyof T_25]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_24]["columns"]>; } : never) & Record<JAlias_5, Context<JTable_5["columns"]>>) => Expression<boolean>)) => {
168
- readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_26 extends {
169
- [key: string]: Table;
170
- } ? { [t_25 in keyof T_26]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_25]["columns"]>; } : never;
171
- readonly select: <R_9 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>>)[]>(returning: R_9 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_27 extends {
172
- [key: string]: Table;
173
- } ? { [t_26 in keyof T_27]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_26]["columns"]>; } : never) => R_9), where: Expression<boolean> | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_28 extends {
174
- [key: string]: Table;
175
- } ? { [t_27 in keyof T_28]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_27]["columns"]>; } : never) => Expression<boolean>), options?: {
117
+ } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4>, R_8, CustomTypeMap<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4>>>;
118
+ readonly join: <JTable_5 extends Table, JAlias_5 extends string, JCTypeMap_5 extends CustomTypeMap<JTable_5["columns"]> = {}>(joinType: JoinType, joinTable: JTable_5, joinAlias: JAlias_5, on: boolean | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_25 extends Record<string, Table> ? { [t_24 in keyof T_25]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_24]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4>)[t_24]>; } : never) & Record<JAlias_5, Context<JTable_5["columns"], JCTypeMap_5>>) => boolean)) => {
119
+ readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_26 extends Record<string, Table> ? { [t_25 in keyof T_26]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_25]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5>)[t_25]>; } : never;
120
+ readonly select: <R_9 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>>)[]>(returning: R_9 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_27 extends Record<string, Table> ? { [t_26 in keyof T_27]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_26]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5>)[t_26]>; } : never) => R_9), where: boolean | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_28 extends Record<string, Table> ? { [t_27 in keyof T_28]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_27]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5>)[t_27]>; } : never) => boolean), options?: {
176
121
  ignoreInWhere?: boolean;
177
122
  ignoreInReturning?: boolean;
178
123
  ignoreInJoin?: boolean;
179
124
  ignoreInGroupBy?: boolean;
180
125
  distinct?: boolean;
181
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_29 extends {
182
- [key: string]: Table;
183
- } ? { [t_28 in keyof T_29]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_28]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
126
+ groupBy?: Expression[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_29 extends Record<string, Table> ? { [t_28 in keyof T_29]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_28]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5>)[t_28 & (MainAlias | JAlias | JAlias_1 | JAlias_2 | JAlias_3 | JAlias_4 | JAlias_5)]>; } : never) => Expression[]);
184
127
  orders?: {
185
128
  by: TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>>;
186
129
  direction: OrderDirection;
187
130
  }[];
188
131
  start?: bigint;
189
132
  step?: number;
190
- } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5>, R_9>;
191
- readonly join: <JTable_6 extends Table, JAlias_6 extends string>(joinType: JoinType, joinTable: JTable_6, joinAlias: JAlias_6, on: Expression<boolean> | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_30 extends {
192
- [key: string]: Table;
193
- } ? { [t_29 in keyof T_30]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_29]["columns"]>; } : never) & Record<JAlias_6, Context<JTable_6["columns"]>>) => Expression<boolean>)) => {
194
- readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_31 extends {
195
- [key: string]: Table;
196
- } ? { [t_30 in keyof T_31]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_30]["columns"]>; } : never;
197
- readonly select: <R_10 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>>)[]>(returning: R_10 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_32 extends {
198
- [key: string]: Table;
199
- } ? { [t_31 in keyof T_32]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_31]["columns"]>; } : never) => R_10), where: Expression<boolean> | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_33 extends {
200
- [key: string]: Table;
201
- } ? { [t_32 in keyof T_33]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_32]["columns"]>; } : never) => Expression<boolean>), options?: {
133
+ } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5>, R_9, CustomTypeMap<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5>>>;
134
+ readonly join: <JTable_6 extends Table, JAlias_6 extends string, JCTypeMap_6 extends CustomTypeMap<JTable_6["columns"]> = {}>(joinType: JoinType, joinTable: JTable_6, joinAlias: JAlias_6, on: boolean | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_30 extends Record<string, Table> ? { [t_29 in keyof T_30]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_29]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5>)[t_29]>; } : never) & Record<JAlias_6, Context<JTable_6["columns"], JCTypeMap_6>>) => boolean)) => {
135
+ readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_31 extends Record<string, Table> ? { [t_30 in keyof T_31]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_30]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6>)[t_30]>; } : never;
136
+ readonly select: <R_10 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>>)[]>(returning: R_10 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_32 extends Record<string, Table> ? { [t_31 in keyof T_32]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_31]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6>)[t_31]>; } : never) => R_10), where: boolean | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_33 extends Record<string, Table> ? { [t_32 in keyof T_33]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_32]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6>)[t_32]>; } : never) => boolean), options?: {
202
137
  ignoreInWhere?: boolean;
203
138
  ignoreInReturning?: boolean;
204
139
  ignoreInJoin?: boolean;
205
140
  ignoreInGroupBy?: boolean;
206
141
  distinct?: boolean;
207
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_34 extends {
208
- [key: string]: Table;
209
- } ? { [t_33 in keyof T_34]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_33]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
142
+ groupBy?: Expression[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_34 extends Record<string, Table> ? { [t_33 in keyof T_34]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_33]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6>)[t_33 & (MainAlias | JAlias | JAlias_1 | JAlias_2 | JAlias_3 | JAlias_4 | JAlias_5 | JAlias_6)]>; } : never) => Expression[]);
210
143
  orders?: {
211
144
  by: TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>>;
212
145
  direction: OrderDirection;
213
146
  }[];
214
147
  start?: bigint;
215
148
  step?: number;
216
- } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6>, R_10>;
217
- readonly join: <JTable_7 extends Table, JAlias_7 extends string>(joinType: JoinType, joinTable: JTable_7, joinAlias: JAlias_7, on: Expression<boolean> | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_35 extends {
218
- [key: string]: Table;
219
- } ? { [t_34 in keyof T_35]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_34]["columns"]>; } : never) & Record<JAlias_7, Context<JTable_7["columns"]>>) => Expression<boolean>)) => {
220
- readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_36 extends {
221
- [key: string]: Table;
222
- } ? { [t_35 in keyof T_36]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_35]["columns"]>; } : never;
223
- readonly select: <R_11 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>>)[]>(returning: R_11 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_37 extends {
224
- [key: string]: Table;
225
- } ? { [t_36 in keyof T_37]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_36]["columns"]>; } : never) => R_11), where: Expression<boolean> | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_38 extends {
226
- [key: string]: Table;
227
- } ? { [t_37 in keyof T_38]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_37]["columns"]>; } : never) => Expression<boolean>), options?: {
149
+ } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6>, R_10, CustomTypeMap<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6>>>;
150
+ readonly join: <JTable_7 extends Table, JAlias_7 extends string, JCTypeMap_7 extends CustomTypeMap<JTable_7["columns"]> = {}>(joinType: JoinType, joinTable: JTable_7, joinAlias: JAlias_7, on: boolean | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_35 extends Record<string, Table> ? { [t_34 in keyof T_35]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_34]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6>)[t_34]>; } : never) & Record<JAlias_7, Context<JTable_7["columns"], JCTypeMap_7>>) => boolean)) => {
151
+ readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_36 extends Record<string, Table> ? { [t_35 in keyof T_36]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_35]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7>)[t_35]>; } : never;
152
+ readonly select: <R_11 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>>)[]>(returning: R_11 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_37 extends Record<string, Table> ? { [t_36 in keyof T_37]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_36]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7>)[t_36]>; } : never) => R_11), where: boolean | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_38 extends Record<string, Table> ? { [t_37 in keyof T_38]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_37]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7>)[t_37]>; } : never) => boolean), options?: {
228
153
  ignoreInWhere?: boolean;
229
154
  ignoreInReturning?: boolean;
230
155
  ignoreInJoin?: boolean;
231
156
  ignoreInGroupBy?: boolean;
232
157
  distinct?: boolean;
233
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_39 extends {
234
- [key: string]: Table;
235
- } ? { [t_38 in keyof T_39]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_38]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
158
+ groupBy?: Expression[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_39 extends Record<string, Table> ? { [t_38 in keyof T_39]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_38]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7>)[t_38 & (MainAlias | JAlias | JAlias_1 | JAlias_2 | JAlias_3 | JAlias_4 | JAlias_5 | JAlias_6 | JAlias_7)]>; } : never) => Expression[]);
236
159
  orders?: {
237
160
  by: TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>>;
238
161
  direction: OrderDirection;
239
162
  }[];
240
163
  start?: bigint;
241
164
  step?: number;
242
- } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7>, R_11>;
243
- readonly join: <JTable_8 extends Table, JAlias_8 extends string>(joinType: JoinType, joinTable: JTable_8, joinAlias: JAlias_8, on: Expression<boolean> | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_40 extends {
244
- [key: string]: Table;
245
- } ? { [t_39 in keyof T_40]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_39]["columns"]>; } : never) & Record<JAlias_8, Context<JTable_8["columns"]>>) => Expression<boolean>)) => {
246
- readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_41 extends {
247
- [key: string]: Table;
248
- } ? { [t_40 in keyof T_41]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_40]["columns"]>; } : never;
249
- readonly select: <R_12 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>>)[]>(returning: R_12 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_42 extends {
250
- [key: string]: Table;
251
- } ? { [t_41 in keyof T_42]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_41]["columns"]>; } : never) => R_12), where: Expression<boolean> | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_43 extends {
252
- [key: string]: Table;
253
- } ? { [t_42 in keyof T_43]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_42]["columns"]>; } : never) => Expression<boolean>), options?: {
165
+ } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7>, R_11, CustomTypeMap<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7>>>;
166
+ readonly join: <JTable_8 extends Table, JAlias_8 extends string, JCTypeMap_8 extends CustomTypeMap<JTable_8["columns"]> = {}>(joinType: JoinType, joinTable: JTable_8, joinAlias: JAlias_8, on: boolean | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_40 extends Record<string, Table> ? { [t_39 in keyof T_40]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_39]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7>)[t_39]>; } : never) & Record<JAlias_8, Context<JTable_8["columns"], JCTypeMap_8>>) => boolean)) => {
167
+ readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_41 extends Record<string, Table> ? { [t_40 in keyof T_41]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_40]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8>)[t_40]>; } : never;
168
+ readonly select: <R_12 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>>)[]>(returning: R_12 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_42 extends Record<string, Table> ? { [t_41 in keyof T_42]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_41]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8>)[t_41]>; } : never) => R_12), where: boolean | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_43 extends Record<string, Table> ? { [t_42 in keyof T_43]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_42]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8>)[t_42]>; } : never) => boolean), options?: {
254
169
  ignoreInWhere?: boolean;
255
170
  ignoreInReturning?: boolean;
256
171
  ignoreInJoin?: boolean;
257
172
  ignoreInGroupBy?: boolean;
258
173
  distinct?: boolean;
259
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_44 extends {
260
- [key: string]: Table;
261
- } ? { [t_43 in keyof T_44]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_43]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
174
+ groupBy?: Expression[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_44 extends Record<string, Table> ? { [t_43 in keyof T_44]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_43]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8>)[t_43 & (MainAlias | JAlias | JAlias_1 | JAlias_2 | JAlias_3 | JAlias_4 | JAlias_5 | JAlias_6 | JAlias_7 | JAlias_8)]>; } : never) => Expression[]);
262
175
  orders?: {
263
176
  by: TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>>;
264
177
  direction: OrderDirection;
265
178
  }[];
266
179
  start?: bigint;
267
180
  step?: number;
268
- } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7> & AliasedColumns<JTable_8["columns"], JAlias_8>, R_12>;
269
- readonly join: <JTable_9 extends Table, JAlias_9 extends string>(joinType: JoinType, joinTable: JTable_9, joinAlias: JAlias_9, on: Expression<boolean> | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_45 extends {
270
- [key: string]: Table;
271
- } ? { [t_44 in keyof T_45]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_44]["columns"]>; } : never) & Record<JAlias_9, Context<JTable_9["columns"]>>) => Expression<boolean>)) => {
272
- readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_46 extends {
273
- [key: string]: Table;
274
- } ? { [t_45 in keyof T_46]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_45]["columns"]>; } : never;
275
- readonly select: <R_13 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>>)[]>(returning: R_13 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_47 extends {
276
- [key: string]: Table;
277
- } ? { [t_46 in keyof T_47]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_46]["columns"]>; } : never) => R_13), where: Expression<boolean> | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_48 extends {
278
- [key: string]: Table;
279
- } ? { [t_47 in keyof T_48]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_47]["columns"]>; } : never) => Expression<boolean>), options?: {
181
+ } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7> & AliasedColumns<JTable_8["columns"], JAlias_8>, R_12, CustomTypeMap<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7> & AliasedColumns<JTable_8["columns"], JAlias_8>>>;
182
+ readonly join: <JTable_9 extends Table, JAlias_9 extends string, JCTypeMap_9 extends CustomTypeMap<JTable_9["columns"]> = {}>(joinType: JoinType, joinTable: JTable_9, joinAlias: JAlias_9, on: boolean | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_45 extends Record<string, Table> ? { [t_44 in keyof T_45]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_44]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8>)[t_44]>; } : never) & Record<JAlias_9, Context<JTable_9["columns"], JCTypeMap_9>>) => boolean)) => {
183
+ readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_46 extends Record<string, Table> ? { [t_45 in keyof T_46]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_45]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8> & Record<JAlias_9, JCTypeMap_9>)[t_45]>; } : never;
184
+ readonly select: <R_13 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>>)[]>(returning: R_13 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_47 extends Record<string, Table> ? { [t_46 in keyof T_47]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_46]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8> & Record<JAlias_9, JCTypeMap_9>)[t_46]>; } : never) => R_13), where: boolean | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_48 extends Record<string, Table> ? { [t_47 in keyof T_48]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_47]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8> & Record<JAlias_9, JCTypeMap_9>)[t_47]>; } : never) => boolean), options?: {
280
185
  ignoreInWhere?: boolean;
281
186
  ignoreInReturning?: boolean;
282
187
  ignoreInJoin?: boolean;
283
188
  ignoreInGroupBy?: boolean;
284
189
  distinct?: boolean;
285
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_49 extends {
286
- [key: string]: Table;
287
- } ? { [t_48 in keyof T_49]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_48]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
190
+ groupBy?: Expression[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_49 extends Record<string, Table> ? { [t_48 in keyof T_49]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_48]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8> & Record<JAlias_9, JCTypeMap_9>)[t_48 & (MainAlias | JAlias | JAlias_1 | JAlias_2 | JAlias_3 | JAlias_4 | JAlias_5 | JAlias_6 | JAlias_7 | JAlias_8 | JAlias_9)]>; } : never) => Expression[]);
288
191
  orders?: {
289
192
  by: TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>>;
290
193
  direction: OrderDirection;
291
194
  }[];
292
195
  start?: bigint;
293
196
  step?: number;
294
- } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7> & AliasedColumns<JTable_8["columns"], JAlias_8> & AliasedColumns<JTable_9["columns"], JAlias_9>, R_13>;
295
- readonly join: <JTable_10 extends Table, JAlias_10 extends string>(joinType: JoinType, joinTable: JTable_10, joinAlias: JAlias_10, on: Expression<boolean> | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_50 extends {
296
- [key: string]: Table;
297
- } ? { [t_49 in keyof T_50]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_49]["columns"]>; } : never) & Record<JAlias_10, Context<JTable_10["columns"]>>) => Expression<boolean>)) => {
298
- readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10> extends infer T_51 extends {
299
- [key: string]: Table;
300
- } ? { [t_50 in keyof T_51]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10>)[t_50]["columns"]>; } : never;
301
- readonly select: <R_14 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10>>)[]>(returning: R_14 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10> extends infer T_52 extends {
302
- [key: string]: Table;
303
- } ? { [t_51 in keyof T_52]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10>)[t_51]["columns"]>; } : never) => R_14), where: Expression<boolean> | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10> extends infer T_53 extends {
304
- [key: string]: Table;
305
- } ? { [t_52 in keyof T_53]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10>)[t_52]["columns"]>; } : never) => Expression<boolean>), options?: {
197
+ } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7> & AliasedColumns<JTable_8["columns"], JAlias_8> & AliasedColumns<JTable_9["columns"], JAlias_9>, R_13, CustomTypeMap<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7> & AliasedColumns<JTable_8["columns"], JAlias_8> & AliasedColumns<JTable_9["columns"], JAlias_9>>>;
198
+ readonly join: <JTable_10 extends Table, JAlias_10 extends string, JCTypeMap_10 extends CustomTypeMap<JTable_10["columns"]> = {}>(joinType: JoinType, joinTable: JTable_10, joinAlias: JAlias_10, on: boolean | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_50 extends Record<string, Table> ? { [t_49 in keyof T_50]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_49]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8> & Record<JAlias_9, JCTypeMap_9>)[t_49]>; } : never) & Record<JAlias_10, Context<JTable_10["columns"], JCTypeMap_10>>) => boolean)) => {
199
+ readonly contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10> extends infer T_51 extends Record<string, Table> ? { [t_50 in keyof T_51]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10>)[t_50]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8> & Record<JAlias_9, JCTypeMap_9> & Record<JAlias_10, JCTypeMap_10>)[t_50]>; } : never;
200
+ readonly select: <R_14 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10>>)[]>(returning: R_14 | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10> extends infer T_52 extends Record<string, Table> ? { [t_51 in keyof T_52]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10>)[t_51]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8> & Record<JAlias_9, JCTypeMap_9> & Record<JAlias_10, JCTypeMap_10>)[t_51]>; } : never) => R_14), where: boolean | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10> extends infer T_53 extends Record<string, Table> ? { [t_52 in keyof T_53]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10>)[t_52]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8> & Record<JAlias_9, JCTypeMap_9> & Record<JAlias_10, JCTypeMap_10>)[t_52]>; } : never) => boolean), options?: {
306
201
  ignoreInWhere?: boolean;
307
202
  ignoreInReturning?: boolean;
308
203
  ignoreInJoin?: boolean;
309
204
  ignoreInGroupBy?: boolean;
310
205
  distinct?: boolean;
311
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10> extends infer T_54 extends {
312
- [key: string]: Table;
313
- } ? { [t_53 in keyof T_54]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10>)[t_53]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
206
+ groupBy?: Expression[] | ((contexts: Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10> extends infer T_54 extends Record<string, Table> ? { [t_53 in keyof T_54]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10>)[t_53]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8> & Record<JAlias_9, JCTypeMap_9> & Record<JAlias_10, JCTypeMap_10>)[t_53 & (MainAlias | JAlias | JAlias_1 | JAlias_2 | JAlias_3 | JAlias_4 | JAlias_5 | JAlias_6 | JAlias_7 | JAlias_8 | JAlias_9 | JAlias_10)]>; } : never) => Expression[]);
314
207
  orders?: {
315
208
  by: TablesColumnsKeys<Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10>>;
316
209
  direction: OrderDirection;
317
210
  }[];
318
211
  start?: bigint;
319
212
  step?: number;
320
- } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7> & AliasedColumns<JTable_8["columns"], JAlias_8> & AliasedColumns<JTable_9["columns"], JAlias_9> & AliasedColumns<JTable_10["columns"], JAlias_10>, R_14>;
321
- readonly join: <JTable_11 extends Table, JAlias_11 extends string>(joinType: JoinType, joinTable: JTable_11, joinAlias: JAlias_11, on: Expression<boolean> | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10> extends infer T_55 extends {
322
- [key: string]: Table;
323
- } ? { [t_54 in keyof T_55]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10>)[t_54]["columns"]>; } : never) & Record<JAlias_11, Context<JTable_11["columns"]>>) => Expression<boolean>)) => any;
213
+ } | undefined) => Query<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7> & AliasedColumns<JTable_8["columns"], JAlias_8> & AliasedColumns<JTable_9["columns"], JAlias_9> & AliasedColumns<JTable_10["columns"], JAlias_10>, R_14, CustomTypeMap<AliasedColumns<T["columns"], MainAlias> & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7> & AliasedColumns<JTable_8["columns"], JAlias_8> & AliasedColumns<JTable_9["columns"], JAlias_9> & AliasedColumns<JTable_10["columns"], JAlias_10>>>;
214
+ readonly join: <JTable_11 extends Table, JAlias_11 extends string, JCTypeMap_11 extends CustomTypeMap<JTable_11["columns"]> = {}>(joinType: JoinType, joinTable: JTable_11, joinAlias: JAlias_11, on: boolean | ((contexts: (Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10> extends infer T_55 extends Record<string, Table> ? { [t_54 in keyof T_55]: Context<(Record<MainAlias, T> & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> & Record<JAlias_10, JTable_10>)[t_54]["columns"], (Record<MainAlias, CTypeMap> & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8> & Record<JAlias_9, JCTypeMap_9> & Record<JAlias_10, JCTypeMap_10>)[t_54]>; } : never) & Record<JAlias_11, Context<JTable_11["columns"], JCTypeMap_11>>) => boolean)) => any;
324
215
  };
325
216
  };
326
217
  };
@@ -333,1267 +224,635 @@ declare const createEntity: <T extends Table>(table: T) => {
333
224
  };
334
225
  };
335
226
  };
336
- declare const createJoinSelectEntity: <TablesData extends {
337
- [key: string]: Table;
338
- }, AllColumns extends {
339
- [key: string]: ({
340
- type: PostgresType;
341
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
342
- nullable: boolean;
343
- title?: string;
344
- reference?: {
345
- table: Table;
346
- onUpdate?: import("./types/table").ReferenceActions;
347
- onDelete?: import("./types/table").ReferenceActions;
348
- column: string;
349
- };
350
- } & {
351
- primary?: true;
352
- nullable: false;
353
- } & {
354
- type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
355
- } & {
356
- default: false;
357
- }) | ({
358
- type: PostgresType;
359
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
360
- nullable: boolean;
361
- title?: string;
362
- reference?: {
363
- table: Table;
364
- onUpdate?: import("./types/table").ReferenceActions;
365
- onDelete?: import("./types/table").ReferenceActions;
366
- column: string;
367
- };
368
- } & {
369
- primary?: true;
370
- nullable: false;
371
- } & {
372
- type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
373
- } & {
374
- default: true;
375
- value: string;
376
- }) | ({
377
- type: PostgresType;
378
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
379
- nullable: boolean;
380
- title?: string;
381
- reference?: {
382
- table: Table;
383
- onUpdate?: import("./types/table").ReferenceActions;
384
- onDelete?: import("./types/table").ReferenceActions;
385
- column: string;
386
- };
387
- } & {
388
- primary?: true;
389
- nullable: false;
390
- } & {
391
- type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
392
- } & {
393
- default: "value";
394
- type: "boolean";
395
- value: boolean;
396
- }) | ({
397
- type: PostgresType;
398
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
399
- nullable: boolean;
400
- title?: string;
401
- reference?: {
402
- table: Table;
403
- onUpdate?: import("./types/table").ReferenceActions;
404
- onDelete?: import("./types/table").ReferenceActions;
405
- column: string;
406
- };
407
- } & {
408
- primary?: true;
409
- nullable: false;
410
- } & {
411
- type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
412
- } & {
413
- default: "value";
414
- type: "character" | "character varying" | "text" | "uuid";
415
- value: string;
416
- }) | ({
417
- type: PostgresType;
418
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
419
- nullable: boolean;
420
- title?: string;
421
- reference?: {
422
- table: Table;
423
- onUpdate?: import("./types/table").ReferenceActions;
424
- onDelete?: import("./types/table").ReferenceActions;
425
- column: string;
426
- };
427
- } & {
428
- primary?: true;
429
- nullable: false;
430
- } & {
431
- type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
432
- } & {
433
- default: "value";
434
- type: "date" | "timestamp without time zone" | "timestamp with time zone";
435
- value: Date;
436
- }) | ({
437
- type: PostgresType;
438
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
439
- nullable: boolean;
440
- title?: string;
441
- reference?: {
442
- table: Table;
443
- onUpdate?: import("./types/table").ReferenceActions;
444
- onDelete?: import("./types/table").ReferenceActions;
445
- column: string;
446
- };
447
- } & {
448
- primary?: true;
449
- nullable: false;
450
- } & {
451
- type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
452
- } & {
453
- default: "value";
454
- type: "json" | "jsonb";
455
- value: import("./types/json").JSON;
456
- }) | ({
457
- type: PostgresType;
458
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
459
- nullable: boolean;
460
- title?: string;
461
- reference?: {
462
- table: Table;
463
- onUpdate?: import("./types/table").ReferenceActions;
464
- onDelete?: import("./types/table").ReferenceActions;
465
- column: string;
466
- };
467
- } & {
468
- primary?: true;
469
- nullable: false;
470
- } & {
471
- type: "smallint" | "integer" | "real" | "double precision";
472
- min?: number;
473
- max?: number;
474
- } & {
475
- default: false;
476
- }) | ({
477
- type: PostgresType;
478
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
479
- nullable: boolean;
480
- title?: string;
481
- reference?: {
482
- table: Table;
483
- onUpdate?: import("./types/table").ReferenceActions;
484
- onDelete?: import("./types/table").ReferenceActions;
485
- column: string;
486
- };
487
- } & {
488
- primary?: true;
489
- nullable: false;
490
- } & {
491
- type: "smallint" | "integer" | "real" | "double precision";
492
- min?: number;
493
- max?: number;
494
- } & {
495
- default: true;
496
- value: string;
497
- }) | ({
498
- type: PostgresType;
499
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
500
- nullable: boolean;
501
- title?: string;
502
- reference?: {
503
- table: Table;
504
- onUpdate?: import("./types/table").ReferenceActions;
505
- onDelete?: import("./types/table").ReferenceActions;
506
- column: string;
507
- };
508
- } & {
509
- primary?: true;
510
- nullable: false;
511
- } & {
512
- type: "smallint" | "integer" | "real" | "double precision";
513
- min?: number;
514
- max?: number;
515
- } & {
516
- default: "auto-increment";
517
- type: "bigint" | "smallint" | "integer";
518
- seqTitle?: string;
519
- }) | ({
520
- type: PostgresType;
521
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
522
- nullable: boolean;
523
- title?: string;
524
- reference?: {
525
- table: Table;
526
- onUpdate?: import("./types/table").ReferenceActions;
527
- onDelete?: import("./types/table").ReferenceActions;
528
- column: string;
529
- };
530
- } & {
531
- primary?: true;
532
- nullable: false;
533
- } & {
534
- type: "smallint" | "integer" | "real" | "double precision";
535
- min?: number;
536
- max?: number;
537
- } & {
538
- default: "value";
539
- type: "smallint" | "integer" | "real" | "double precision";
540
- value: number;
541
- }) | ({
542
- type: PostgresType;
543
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
544
- nullable: boolean;
545
- title?: string;
546
- reference?: {
547
- table: Table;
548
- onUpdate?: import("./types/table").ReferenceActions;
549
- onDelete?: import("./types/table").ReferenceActions;
550
- column: string;
551
- };
552
- } & {
553
- primary?: true;
554
- nullable: false;
555
- } & {
556
- type: "bigint";
557
- min?: bigint;
558
- max?: bigint;
559
- } & {
560
- default: false;
561
- }) | ({
562
- type: PostgresType;
563
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
564
- nullable: boolean;
565
- title?: string;
566
- reference?: {
567
- table: Table;
568
- onUpdate?: import("./types/table").ReferenceActions;
569
- onDelete?: import("./types/table").ReferenceActions;
570
- column: string;
571
- };
572
- } & {
573
- primary?: true;
574
- nullable: false;
575
- } & {
576
- type: "bigint";
577
- min?: bigint;
578
- max?: bigint;
579
- } & {
580
- default: true;
581
- value: string;
582
- }) | ({
583
- type: PostgresType;
584
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
585
- nullable: boolean;
586
- title?: string;
587
- reference?: {
588
- table: Table;
589
- onUpdate?: import("./types/table").ReferenceActions;
590
- onDelete?: import("./types/table").ReferenceActions;
591
- column: string;
592
- };
593
- } & {
594
- primary?: true;
595
- nullable: false;
596
- } & {
597
- type: "bigint";
598
- min?: bigint;
599
- max?: bigint;
600
- } & {
601
- default: "auto-increment";
602
- type: "bigint" | "smallint" | "integer";
603
- seqTitle?: string;
604
- }) | ({
605
- type: PostgresType;
606
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
607
- nullable: boolean;
608
- title?: string;
609
- reference?: {
610
- table: Table;
611
- onUpdate?: import("./types/table").ReferenceActions;
612
- onDelete?: import("./types/table").ReferenceActions;
613
- column: string;
614
- };
615
- } & {
616
- primary?: true;
617
- nullable: false;
618
- } & {
619
- type: "bigint";
620
- min?: bigint;
621
- max?: bigint;
622
- } & {
623
- default: "value";
624
- type: "bigint";
625
- value: bigint;
626
- }) | ({
627
- type: PostgresType;
628
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
629
- nullable: boolean;
630
- title?: string;
631
- reference?: {
632
- table: Table;
633
- onUpdate?: import("./types/table").ReferenceActions;
634
- onDelete?: import("./types/table").ReferenceActions;
635
- column: string;
636
- };
637
- } & {
638
- primary?: true;
639
- nullable: false;
640
- } & {
641
- type: "numeric";
642
- precision: number;
643
- scale: number;
644
- min?: Decimal;
645
- max?: Decimal;
646
- } & {
647
- default: false;
648
- }) | ({
649
- type: PostgresType;
650
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
651
- nullable: boolean;
652
- title?: string;
653
- reference?: {
654
- table: Table;
655
- onUpdate?: import("./types/table").ReferenceActions;
656
- onDelete?: import("./types/table").ReferenceActions;
657
- column: string;
658
- };
659
- } & {
660
- primary?: true;
661
- nullable: false;
662
- } & {
663
- type: "numeric";
664
- precision: number;
665
- scale: number;
666
- min?: Decimal;
667
- max?: Decimal;
668
- } & {
669
- default: true;
670
- value: string;
671
- }) | ({
672
- type: PostgresType;
673
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
674
- nullable: boolean;
675
- title?: string;
676
- reference?: {
677
- table: Table;
678
- onUpdate?: import("./types/table").ReferenceActions;
679
- onDelete?: import("./types/table").ReferenceActions;
680
- column: string;
681
- };
682
- } & {
683
- primary?: true;
684
- nullable: false;
685
- } & {
686
- type: "numeric";
687
- precision: number;
688
- scale: number;
689
- min?: Decimal;
690
- max?: Decimal;
691
- } & {
692
- default: "value";
693
- type: "numeric";
694
- value: Decimal;
695
- }) | ({
696
- type: PostgresType;
697
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
698
- nullable: boolean;
699
- title?: string;
700
- reference?: {
701
- table: Table;
702
- onUpdate?: import("./types/table").ReferenceActions;
703
- onDelete?: import("./types/table").ReferenceActions;
704
- column: string;
705
- };
706
- } & {
707
- primary?: true;
708
- nullable: false;
709
- } & {
710
- type: "character" | "character varying";
711
- minLength?: number;
712
- maxLength?: number;
713
- regex?: RegExp;
714
- } & {
715
- default: false;
716
- }) | ({
717
- type: PostgresType;
718
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
719
- nullable: boolean;
720
- title?: string;
721
- reference?: {
722
- table: Table;
723
- onUpdate?: import("./types/table").ReferenceActions;
724
- onDelete?: import("./types/table").ReferenceActions;
725
- column: string;
726
- };
727
- } & {
728
- primary?: true;
729
- nullable: false;
730
- } & {
731
- type: "character" | "character varying";
732
- minLength?: number;
733
- maxLength?: number;
734
- regex?: RegExp;
735
- } & {
736
- default: true;
737
- value: string;
738
- }) | ({
739
- type: PostgresType;
740
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
741
- nullable: boolean;
742
- title?: string;
743
- reference?: {
744
- table: Table;
745
- onUpdate?: import("./types/table").ReferenceActions;
746
- onDelete?: import("./types/table").ReferenceActions;
747
- column: string;
748
- };
749
- } & {
750
- primary?: true;
751
- nullable: false;
752
- } & {
753
- type: "character" | "character varying";
754
- minLength?: number;
755
- maxLength?: number;
756
- regex?: RegExp;
757
- } & {
758
- default: "value";
759
- type: "character" | "character varying" | "text" | "uuid";
760
- value: string;
761
- }) | ({
762
- type: PostgresType;
763
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
764
- nullable: boolean;
765
- title?: string;
766
- reference?: {
767
- table: Table;
768
- onUpdate?: import("./types/table").ReferenceActions;
769
- onDelete?: import("./types/table").ReferenceActions;
770
- column: string;
771
- };
772
- } & {
773
- primary?: true;
774
- nullable: false;
775
- } & {
776
- type: "timestamp without time zone" | "timestamp with time zone";
777
- length?: number;
778
- } & {
779
- default: false;
780
- }) | ({
781
- type: PostgresType;
782
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
783
- nullable: boolean;
784
- title?: string;
785
- reference?: {
786
- table: Table;
787
- onUpdate?: import("./types/table").ReferenceActions;
788
- onDelete?: import("./types/table").ReferenceActions;
789
- column: string;
790
- };
791
- } & {
792
- primary?: true;
793
- nullable: false;
794
- } & {
795
- type: "timestamp without time zone" | "timestamp with time zone";
796
- length?: number;
797
- } & {
798
- default: true;
799
- value: string;
800
- }) | ({
801
- type: PostgresType;
802
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
803
- nullable: boolean;
804
- title?: string;
805
- reference?: {
806
- table: Table;
807
- onUpdate?: import("./types/table").ReferenceActions;
808
- onDelete?: import("./types/table").ReferenceActions;
809
- column: string;
810
- };
811
- } & {
812
- primary?: true;
813
- nullable: false;
814
- } & {
815
- type: "timestamp without time zone" | "timestamp with time zone";
816
- length?: number;
817
- } & {
818
- default: "created-at" | "updated-at";
819
- type: "timestamp without time zone" | "timestamp with time zone";
820
- }) | ({
821
- type: PostgresType;
822
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
823
- nullable: boolean;
824
- title?: string;
825
- reference?: {
826
- table: Table;
827
- onUpdate?: import("./types/table").ReferenceActions;
828
- onDelete?: import("./types/table").ReferenceActions;
829
- column: string;
830
- };
831
- } & {
832
- primary?: true;
833
- nullable: false;
834
- } & {
835
- type: "timestamp without time zone" | "timestamp with time zone";
836
- length?: number;
837
- } & {
838
- default: "value";
839
- type: "date" | "timestamp without time zone" | "timestamp with time zone";
840
- value: Date;
841
- }) | ({
842
- type: PostgresType;
843
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
844
- nullable: boolean;
845
- title?: string;
846
- reference?: {
847
- table: Table;
848
- onUpdate?: import("./types/table").ReferenceActions;
849
- onDelete?: import("./types/table").ReferenceActions;
850
- column: string;
851
- };
852
- } & {
853
- nullable: true;
854
- } & {
855
- type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
856
- } & {
857
- default: false;
858
- }) | ({
859
- type: PostgresType;
860
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
861
- nullable: boolean;
862
- title?: string;
863
- reference?: {
864
- table: Table;
865
- onUpdate?: import("./types/table").ReferenceActions;
866
- onDelete?: import("./types/table").ReferenceActions;
867
- column: string;
868
- };
869
- } & {
870
- nullable: true;
871
- } & {
872
- type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
873
- } & {
874
- default: true;
875
- value: string;
876
- }) | ({
877
- type: PostgresType;
878
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
879
- nullable: boolean;
880
- title?: string;
881
- reference?: {
882
- table: Table;
883
- onUpdate?: import("./types/table").ReferenceActions;
884
- onDelete?: import("./types/table").ReferenceActions;
885
- column: string;
886
- };
887
- } & {
888
- nullable: true;
889
- } & {
890
- type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
891
- } & {
892
- default: "value";
893
- type: "boolean";
894
- value: boolean;
895
- }) | ({
896
- type: PostgresType;
897
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
898
- nullable: boolean;
899
- title?: string;
900
- reference?: {
901
- table: Table;
902
- onUpdate?: import("./types/table").ReferenceActions;
903
- onDelete?: import("./types/table").ReferenceActions;
904
- column: string;
905
- };
906
- } & {
907
- nullable: true;
908
- } & {
909
- type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
910
- } & {
911
- default: "value";
912
- type: "character" | "character varying" | "text" | "uuid";
913
- value: string;
914
- }) | ({
915
- type: PostgresType;
916
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
917
- nullable: boolean;
918
- title?: string;
919
- reference?: {
920
- table: Table;
921
- onUpdate?: import("./types/table").ReferenceActions;
922
- onDelete?: import("./types/table").ReferenceActions;
923
- column: string;
924
- };
925
- } & {
926
- nullable: true;
927
- } & {
928
- type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
929
- } & {
930
- default: "value";
931
- type: "date" | "timestamp without time zone" | "timestamp with time zone";
932
- value: Date;
933
- }) | ({
934
- type: PostgresType;
935
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
936
- nullable: boolean;
937
- title?: string;
938
- reference?: {
939
- table: Table;
940
- onUpdate?: import("./types/table").ReferenceActions;
941
- onDelete?: import("./types/table").ReferenceActions;
942
- column: string;
943
- };
944
- } & {
945
- nullable: true;
946
- } & {
947
- type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
948
- } & {
949
- default: "value";
950
- type: "json" | "jsonb";
951
- value: import("./types/json").JSON;
952
- }) | ({
953
- type: PostgresType;
954
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
955
- nullable: boolean;
956
- title?: string;
957
- reference?: {
958
- table: Table;
959
- onUpdate?: import("./types/table").ReferenceActions;
960
- onDelete?: import("./types/table").ReferenceActions;
961
- column: string;
962
- };
963
- } & {
964
- nullable: true;
965
- } & {
966
- type: "smallint" | "integer" | "real" | "double precision";
967
- min?: number;
968
- max?: number;
969
- } & {
970
- default: false;
971
- }) | ({
972
- type: PostgresType;
973
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
974
- nullable: boolean;
975
- title?: string;
976
- reference?: {
977
- table: Table;
978
- onUpdate?: import("./types/table").ReferenceActions;
979
- onDelete?: import("./types/table").ReferenceActions;
980
- column: string;
981
- };
982
- } & {
983
- nullable: true;
984
- } & {
985
- type: "smallint" | "integer" | "real" | "double precision";
986
- min?: number;
987
- max?: number;
988
- } & {
989
- default: true;
990
- value: string;
991
- }) | ({
992
- type: PostgresType;
993
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
994
- nullable: boolean;
995
- title?: string;
996
- reference?: {
997
- table: Table;
998
- onUpdate?: import("./types/table").ReferenceActions;
999
- onDelete?: import("./types/table").ReferenceActions;
1000
- column: string;
1001
- };
1002
- } & {
1003
- nullable: true;
1004
- } & {
1005
- type: "smallint" | "integer" | "real" | "double precision";
1006
- min?: number;
1007
- max?: number;
1008
- } & {
1009
- default: "auto-increment";
1010
- type: "bigint" | "smallint" | "integer";
1011
- seqTitle?: string;
1012
- }) | ({
1013
- type: PostgresType;
1014
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1015
- nullable: boolean;
1016
- title?: string;
1017
- reference?: {
1018
- table: Table;
1019
- onUpdate?: import("./types/table").ReferenceActions;
1020
- onDelete?: import("./types/table").ReferenceActions;
1021
- column: string;
1022
- };
1023
- } & {
1024
- nullable: true;
1025
- } & {
1026
- type: "smallint" | "integer" | "real" | "double precision";
1027
- min?: number;
1028
- max?: number;
1029
- } & {
1030
- default: "value";
1031
- type: "smallint" | "integer" | "real" | "double precision";
1032
- value: number;
1033
- }) | ({
1034
- type: PostgresType;
1035
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1036
- nullable: boolean;
1037
- title?: string;
1038
- reference?: {
1039
- table: Table;
1040
- onUpdate?: import("./types/table").ReferenceActions;
1041
- onDelete?: import("./types/table").ReferenceActions;
1042
- column: string;
1043
- };
1044
- } & {
1045
- nullable: true;
1046
- } & {
1047
- type: "bigint";
1048
- min?: bigint;
1049
- max?: bigint;
1050
- } & {
1051
- default: false;
1052
- }) | ({
1053
- type: PostgresType;
1054
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1055
- nullable: boolean;
1056
- title?: string;
1057
- reference?: {
1058
- table: Table;
1059
- onUpdate?: import("./types/table").ReferenceActions;
1060
- onDelete?: import("./types/table").ReferenceActions;
1061
- column: string;
1062
- };
1063
- } & {
1064
- nullable: true;
1065
- } & {
1066
- type: "bigint";
1067
- min?: bigint;
1068
- max?: bigint;
1069
- } & {
1070
- default: true;
1071
- value: string;
1072
- }) | ({
1073
- type: PostgresType;
1074
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1075
- nullable: boolean;
1076
- title?: string;
1077
- reference?: {
1078
- table: Table;
1079
- onUpdate?: import("./types/table").ReferenceActions;
1080
- onDelete?: import("./types/table").ReferenceActions;
1081
- column: string;
1082
- };
1083
- } & {
1084
- nullable: true;
1085
- } & {
1086
- type: "bigint";
1087
- min?: bigint;
1088
- max?: bigint;
1089
- } & {
1090
- default: "auto-increment";
1091
- type: "bigint" | "smallint" | "integer";
1092
- seqTitle?: string;
1093
- }) | ({
1094
- type: PostgresType;
1095
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1096
- nullable: boolean;
1097
- title?: string;
1098
- reference?: {
1099
- table: Table;
1100
- onUpdate?: import("./types/table").ReferenceActions;
1101
- onDelete?: import("./types/table").ReferenceActions;
1102
- column: string;
1103
- };
1104
- } & {
1105
- nullable: true;
1106
- } & {
1107
- type: "bigint";
1108
- min?: bigint;
1109
- max?: bigint;
1110
- } & {
1111
- default: "value";
1112
- type: "bigint";
1113
- value: bigint;
1114
- }) | ({
1115
- type: PostgresType;
1116
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1117
- nullable: boolean;
1118
- title?: string;
1119
- reference?: {
1120
- table: Table;
1121
- onUpdate?: import("./types/table").ReferenceActions;
1122
- onDelete?: import("./types/table").ReferenceActions;
1123
- column: string;
1124
- };
1125
- } & {
1126
- nullable: true;
1127
- } & {
1128
- type: "numeric";
1129
- precision: number;
1130
- scale: number;
1131
- min?: Decimal;
1132
- max?: Decimal;
1133
- } & {
1134
- default: false;
1135
- }) | ({
1136
- type: PostgresType;
1137
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1138
- nullable: boolean;
1139
- title?: string;
1140
- reference?: {
1141
- table: Table;
1142
- onUpdate?: import("./types/table").ReferenceActions;
1143
- onDelete?: import("./types/table").ReferenceActions;
1144
- column: string;
1145
- };
1146
- } & {
1147
- nullable: true;
1148
- } & {
1149
- type: "numeric";
1150
- precision: number;
1151
- scale: number;
1152
- min?: Decimal;
1153
- max?: Decimal;
1154
- } & {
1155
- default: true;
1156
- value: string;
1157
- }) | ({
1158
- type: PostgresType;
1159
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1160
- nullable: boolean;
1161
- title?: string;
1162
- reference?: {
1163
- table: Table;
1164
- onUpdate?: import("./types/table").ReferenceActions;
1165
- onDelete?: import("./types/table").ReferenceActions;
1166
- column: string;
1167
- };
1168
- } & {
1169
- nullable: true;
1170
- } & {
1171
- type: "numeric";
1172
- precision: number;
1173
- scale: number;
1174
- min?: Decimal;
1175
- max?: Decimal;
1176
- } & {
1177
- default: "value";
1178
- type: "numeric";
1179
- value: Decimal;
1180
- }) | ({
1181
- type: PostgresType;
1182
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1183
- nullable: boolean;
1184
- title?: string;
1185
- reference?: {
1186
- table: Table;
1187
- onUpdate?: import("./types/table").ReferenceActions;
1188
- onDelete?: import("./types/table").ReferenceActions;
1189
- column: string;
1190
- };
1191
- } & {
1192
- nullable: true;
1193
- } & {
1194
- type: "character" | "character varying";
1195
- minLength?: number;
1196
- maxLength?: number;
1197
- regex?: RegExp;
1198
- } & {
1199
- default: false;
1200
- }) | ({
1201
- type: PostgresType;
1202
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1203
- nullable: boolean;
1204
- title?: string;
1205
- reference?: {
1206
- table: Table;
1207
- onUpdate?: import("./types/table").ReferenceActions;
1208
- onDelete?: import("./types/table").ReferenceActions;
1209
- column: string;
1210
- };
1211
- } & {
1212
- nullable: true;
1213
- } & {
1214
- type: "character" | "character varying";
1215
- minLength?: number;
1216
- maxLength?: number;
1217
- regex?: RegExp;
1218
- } & {
1219
- default: true;
1220
- value: string;
1221
- }) | ({
1222
- type: PostgresType;
1223
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1224
- nullable: boolean;
1225
- title?: string;
1226
- reference?: {
1227
- table: Table;
1228
- onUpdate?: import("./types/table").ReferenceActions;
1229
- onDelete?: import("./types/table").ReferenceActions;
1230
- column: string;
1231
- };
1232
- } & {
1233
- nullable: true;
1234
- } & {
1235
- type: "character" | "character varying";
1236
- minLength?: number;
1237
- maxLength?: number;
1238
- regex?: RegExp;
1239
- } & {
1240
- default: "value";
1241
- type: "character" | "character varying" | "text" | "uuid";
1242
- value: string;
1243
- }) | ({
1244
- type: PostgresType;
1245
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1246
- nullable: boolean;
1247
- title?: string;
1248
- reference?: {
1249
- table: Table;
1250
- onUpdate?: import("./types/table").ReferenceActions;
1251
- onDelete?: import("./types/table").ReferenceActions;
1252
- column: string;
1253
- };
1254
- } & {
1255
- nullable: true;
1256
- } & {
1257
- type: "timestamp without time zone" | "timestamp with time zone";
1258
- length?: number;
1259
- } & {
1260
- default: false;
1261
- }) | ({
1262
- type: PostgresType;
1263
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1264
- nullable: boolean;
1265
- title?: string;
1266
- reference?: {
1267
- table: Table;
1268
- onUpdate?: import("./types/table").ReferenceActions;
1269
- onDelete?: import("./types/table").ReferenceActions;
1270
- column: string;
1271
- };
1272
- } & {
1273
- nullable: true;
1274
- } & {
1275
- type: "timestamp without time zone" | "timestamp with time zone";
1276
- length?: number;
1277
- } & {
1278
- default: true;
1279
- value: string;
1280
- }) | ({
1281
- type: PostgresType;
1282
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1283
- nullable: boolean;
1284
- title?: string;
1285
- reference?: {
1286
- table: Table;
1287
- onUpdate?: import("./types/table").ReferenceActions;
1288
- onDelete?: import("./types/table").ReferenceActions;
1289
- column: string;
1290
- };
1291
- } & {
1292
- nullable: true;
1293
- } & {
1294
- type: "timestamp without time zone" | "timestamp with time zone";
1295
- length?: number;
1296
- } & {
1297
- default: "created-at" | "updated-at";
1298
- type: "timestamp without time zone" | "timestamp with time zone";
1299
- }) | ({
1300
- type: PostgresType;
1301
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1302
- nullable: boolean;
1303
- title?: string;
1304
- reference?: {
1305
- table: Table;
1306
- onUpdate?: import("./types/table").ReferenceActions;
1307
- onDelete?: import("./types/table").ReferenceActions;
1308
- column: string;
1309
- };
1310
- } & {
1311
- nullable: true;
1312
- } & {
1313
- type: "timestamp without time zone" | "timestamp with time zone";
1314
- length?: number;
1315
- } & {
1316
- default: "value";
1317
- type: "date" | "timestamp without time zone" | "timestamp with time zone";
1318
- value: Date;
1319
- });
1320
- }>(main: TableWithAlias, joinTables: (TableWithAlias & JoinData)[], contexts: { [t in keyof TablesData]: Context<TablesData[t]["columns"]>; }) => {
1321
- readonly contexts: { [t in keyof TablesData]: Context<TablesData[t]["columns"]>; };
1322
- readonly select: <R extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<TablesData>)[]>(returning: R | ((contexts: { [t_1 in keyof TablesData]: Context<TablesData[t_1]["columns"]>; }) => R), where: Expression<boolean> | ((contexts: { [t_2 in keyof TablesData]: Context<TablesData[t_2]["columns"]>; }) => Expression<boolean>), options?: {
227
+ declare const createJoinSelectEntity: <TablesData extends Record<string, Table>, CTypeMapData extends Record<keyof TablesData, CustomTypeMap<any>>, AllColumns extends Record<string, (import("./types/Table").Base & {
228
+ primary?: true;
229
+ nullable: false;
230
+ } & {
231
+ type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
232
+ } & {
233
+ default: false;
234
+ }) | (import("./types/Table").Base & {
235
+ primary?: true;
236
+ nullable: false;
237
+ } & {
238
+ type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
239
+ } & {
240
+ default: true;
241
+ value: string;
242
+ }) | (import("./types/Table").Base & {
243
+ primary?: true;
244
+ nullable: false;
245
+ } & {
246
+ type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
247
+ } & {
248
+ default: "value";
249
+ type: "boolean";
250
+ value: boolean;
251
+ }) | (import("./types/Table").Base & {
252
+ primary?: true;
253
+ nullable: false;
254
+ } & {
255
+ type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
256
+ } & {
257
+ default: "value";
258
+ type: "character" | "character varying" | "text" | "uuid";
259
+ value: string;
260
+ }) | (import("./types/Table").Base & {
261
+ primary?: true;
262
+ nullable: false;
263
+ } & {
264
+ type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
265
+ } & {
266
+ default: "value";
267
+ type: "date" | "timestamp without time zone" | "timestamp with time zone";
268
+ value: Date;
269
+ }) | (import("./types/Table").Base & {
270
+ primary?: true;
271
+ nullable: false;
272
+ } & {
273
+ type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
274
+ } & {
275
+ default: "value";
276
+ type: "json" | "jsonb";
277
+ value: import("./types/Json").Json;
278
+ }) | (import("./types/Table").Base & {
279
+ primary?: true;
280
+ nullable: false;
281
+ } & {
282
+ type: "smallint" | "integer" | "real" | "double precision";
283
+ min?: number;
284
+ max?: number;
285
+ } & {
286
+ default: false;
287
+ }) | (import("./types/Table").Base & {
288
+ primary?: true;
289
+ nullable: false;
290
+ } & {
291
+ type: "smallint" | "integer" | "real" | "double precision";
292
+ min?: number;
293
+ max?: number;
294
+ } & {
295
+ default: true;
296
+ value: string;
297
+ }) | (import("./types/Table").Base & {
298
+ primary?: true;
299
+ nullable: false;
300
+ } & {
301
+ type: "smallint" | "integer" | "real" | "double precision";
302
+ min?: number;
303
+ max?: number;
304
+ } & {
305
+ default: "auto-increment";
306
+ type: "bigint" | "smallint" | "integer";
307
+ seqTitle?: string;
308
+ }) | (import("./types/Table").Base & {
309
+ primary?: true;
310
+ nullable: false;
311
+ } & {
312
+ type: "smallint" | "integer" | "real" | "double precision";
313
+ min?: number;
314
+ max?: number;
315
+ } & {
316
+ default: "value";
317
+ type: "smallint" | "integer" | "real" | "double precision";
318
+ value: number;
319
+ }) | (import("./types/Table").Base & {
320
+ primary?: true;
321
+ nullable: false;
322
+ } & {
323
+ type: "bigint";
324
+ min?: bigint;
325
+ max?: bigint;
326
+ } & {
327
+ default: false;
328
+ }) | (import("./types/Table").Base & {
329
+ primary?: true;
330
+ nullable: false;
331
+ } & {
332
+ type: "bigint";
333
+ min?: bigint;
334
+ max?: bigint;
335
+ } & {
336
+ default: true;
337
+ value: string;
338
+ }) | (import("./types/Table").Base & {
339
+ primary?: true;
340
+ nullable: false;
341
+ } & {
342
+ type: "bigint";
343
+ min?: bigint;
344
+ max?: bigint;
345
+ } & {
346
+ default: "auto-increment";
347
+ type: "bigint" | "smallint" | "integer";
348
+ seqTitle?: string;
349
+ }) | (import("./types/Table").Base & {
350
+ primary?: true;
351
+ nullable: false;
352
+ } & {
353
+ type: "bigint";
354
+ min?: bigint;
355
+ max?: bigint;
356
+ } & {
357
+ default: "value";
358
+ type: "bigint";
359
+ value: bigint;
360
+ }) | (import("./types/Table").Base & {
361
+ primary?: true;
362
+ nullable: false;
363
+ } & {
364
+ type: "numeric";
365
+ precision: number;
366
+ scale: number;
367
+ min?: Decimal;
368
+ max?: Decimal;
369
+ } & {
370
+ default: false;
371
+ }) | (import("./types/Table").Base & {
372
+ primary?: true;
373
+ nullable: false;
374
+ } & {
375
+ type: "numeric";
376
+ precision: number;
377
+ scale: number;
378
+ min?: Decimal;
379
+ max?: Decimal;
380
+ } & {
381
+ default: true;
382
+ value: string;
383
+ }) | (import("./types/Table").Base & {
384
+ primary?: true;
385
+ nullable: false;
386
+ } & {
387
+ type: "numeric";
388
+ precision: number;
389
+ scale: number;
390
+ min?: Decimal;
391
+ max?: Decimal;
392
+ } & {
393
+ default: "value";
394
+ type: "numeric";
395
+ value: Decimal;
396
+ }) | (import("./types/Table").Base & {
397
+ primary?: true;
398
+ nullable: false;
399
+ } & {
400
+ type: "character" | "character varying";
401
+ minLength?: number;
402
+ maxLength?: number;
403
+ regex?: RegExp;
404
+ } & {
405
+ default: false;
406
+ }) | (import("./types/Table").Base & {
407
+ primary?: true;
408
+ nullable: false;
409
+ } & {
410
+ type: "character" | "character varying";
411
+ minLength?: number;
412
+ maxLength?: number;
413
+ regex?: RegExp;
414
+ } & {
415
+ default: true;
416
+ value: string;
417
+ }) | (import("./types/Table").Base & {
418
+ primary?: true;
419
+ nullable: false;
420
+ } & {
421
+ type: "character" | "character varying";
422
+ minLength?: number;
423
+ maxLength?: number;
424
+ regex?: RegExp;
425
+ } & {
426
+ default: "value";
427
+ type: "character" | "character varying" | "text" | "uuid";
428
+ value: string;
429
+ }) | (import("./types/Table").Base & {
430
+ primary?: true;
431
+ nullable: false;
432
+ } & {
433
+ type: "timestamp without time zone" | "timestamp with time zone";
434
+ length?: number;
435
+ } & {
436
+ default: false;
437
+ }) | (import("./types/Table").Base & {
438
+ primary?: true;
439
+ nullable: false;
440
+ } & {
441
+ type: "timestamp without time zone" | "timestamp with time zone";
442
+ length?: number;
443
+ } & {
444
+ default: true;
445
+ value: string;
446
+ }) | (import("./types/Table").Base & {
447
+ primary?: true;
448
+ nullable: false;
449
+ } & {
450
+ type: "timestamp without time zone" | "timestamp with time zone";
451
+ length?: number;
452
+ } & {
453
+ default: "created-at" | "updated-at";
454
+ type: "timestamp without time zone" | "timestamp with time zone";
455
+ }) | (import("./types/Table").Base & {
456
+ primary?: true;
457
+ nullable: false;
458
+ } & {
459
+ type: "timestamp without time zone" | "timestamp with time zone";
460
+ length?: number;
461
+ } & {
462
+ default: "value";
463
+ type: "date" | "timestamp without time zone" | "timestamp with time zone";
464
+ value: Date;
465
+ }) | (import("./types/Table").Base & {
466
+ nullable: true;
467
+ } & {
468
+ type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
469
+ } & {
470
+ default: false;
471
+ }) | (import("./types/Table").Base & {
472
+ nullable: true;
473
+ } & {
474
+ type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
475
+ } & {
476
+ default: true;
477
+ value: string;
478
+ }) | (import("./types/Table").Base & {
479
+ nullable: true;
480
+ } & {
481
+ type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
482
+ } & {
483
+ default: "value";
484
+ type: "boolean";
485
+ value: boolean;
486
+ }) | (import("./types/Table").Base & {
487
+ nullable: true;
488
+ } & {
489
+ type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
490
+ } & {
491
+ default: "value";
492
+ type: "character" | "character varying" | "text" | "uuid";
493
+ value: string;
494
+ }) | (import("./types/Table").Base & {
495
+ nullable: true;
496
+ } & {
497
+ type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
498
+ } & {
499
+ default: "value";
500
+ type: "date" | "timestamp without time zone" | "timestamp with time zone";
501
+ value: Date;
502
+ }) | (import("./types/Table").Base & {
503
+ nullable: true;
504
+ } & {
505
+ type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
506
+ } & {
507
+ default: "value";
508
+ type: "json" | "jsonb";
509
+ value: import("./types/Json").Json;
510
+ }) | (import("./types/Table").Base & {
511
+ nullable: true;
512
+ } & {
513
+ type: "smallint" | "integer" | "real" | "double precision";
514
+ min?: number;
515
+ max?: number;
516
+ } & {
517
+ default: false;
518
+ }) | (import("./types/Table").Base & {
519
+ nullable: true;
520
+ } & {
521
+ type: "smallint" | "integer" | "real" | "double precision";
522
+ min?: number;
523
+ max?: number;
524
+ } & {
525
+ default: true;
526
+ value: string;
527
+ }) | (import("./types/Table").Base & {
528
+ nullable: true;
529
+ } & {
530
+ type: "smallint" | "integer" | "real" | "double precision";
531
+ min?: number;
532
+ max?: number;
533
+ } & {
534
+ default: "auto-increment";
535
+ type: "bigint" | "smallint" | "integer";
536
+ seqTitle?: string;
537
+ }) | (import("./types/Table").Base & {
538
+ nullable: true;
539
+ } & {
540
+ type: "smallint" | "integer" | "real" | "double precision";
541
+ min?: number;
542
+ max?: number;
543
+ } & {
544
+ default: "value";
545
+ type: "smallint" | "integer" | "real" | "double precision";
546
+ value: number;
547
+ }) | (import("./types/Table").Base & {
548
+ nullable: true;
549
+ } & {
550
+ type: "bigint";
551
+ min?: bigint;
552
+ max?: bigint;
553
+ } & {
554
+ default: false;
555
+ }) | (import("./types/Table").Base & {
556
+ nullable: true;
557
+ } & {
558
+ type: "bigint";
559
+ min?: bigint;
560
+ max?: bigint;
561
+ } & {
562
+ default: true;
563
+ value: string;
564
+ }) | (import("./types/Table").Base & {
565
+ nullable: true;
566
+ } & {
567
+ type: "bigint";
568
+ min?: bigint;
569
+ max?: bigint;
570
+ } & {
571
+ default: "auto-increment";
572
+ type: "bigint" | "smallint" | "integer";
573
+ seqTitle?: string;
574
+ }) | (import("./types/Table").Base & {
575
+ nullable: true;
576
+ } & {
577
+ type: "bigint";
578
+ min?: bigint;
579
+ max?: bigint;
580
+ } & {
581
+ default: "value";
582
+ type: "bigint";
583
+ value: bigint;
584
+ }) | (import("./types/Table").Base & {
585
+ nullable: true;
586
+ } & {
587
+ type: "numeric";
588
+ precision: number;
589
+ scale: number;
590
+ min?: Decimal;
591
+ max?: Decimal;
592
+ } & {
593
+ default: false;
594
+ }) | (import("./types/Table").Base & {
595
+ nullable: true;
596
+ } & {
597
+ type: "numeric";
598
+ precision: number;
599
+ scale: number;
600
+ min?: Decimal;
601
+ max?: Decimal;
602
+ } & {
603
+ default: true;
604
+ value: string;
605
+ }) | (import("./types/Table").Base & {
606
+ nullable: true;
607
+ } & {
608
+ type: "numeric";
609
+ precision: number;
610
+ scale: number;
611
+ min?: Decimal;
612
+ max?: Decimal;
613
+ } & {
614
+ default: "value";
615
+ type: "numeric";
616
+ value: Decimal;
617
+ }) | (import("./types/Table").Base & {
618
+ nullable: true;
619
+ } & {
620
+ type: "character" | "character varying";
621
+ minLength?: number;
622
+ maxLength?: number;
623
+ regex?: RegExp;
624
+ } & {
625
+ default: false;
626
+ }) | (import("./types/Table").Base & {
627
+ nullable: true;
628
+ } & {
629
+ type: "character" | "character varying";
630
+ minLength?: number;
631
+ maxLength?: number;
632
+ regex?: RegExp;
633
+ } & {
634
+ default: true;
635
+ value: string;
636
+ }) | (import("./types/Table").Base & {
637
+ nullable: true;
638
+ } & {
639
+ type: "character" | "character varying";
640
+ minLength?: number;
641
+ maxLength?: number;
642
+ regex?: RegExp;
643
+ } & {
644
+ default: "value";
645
+ type: "character" | "character varying" | "text" | "uuid";
646
+ value: string;
647
+ }) | (import("./types/Table").Base & {
648
+ nullable: true;
649
+ } & {
650
+ type: "timestamp without time zone" | "timestamp with time zone";
651
+ length?: number;
652
+ } & {
653
+ default: false;
654
+ }) | (import("./types/Table").Base & {
655
+ nullable: true;
656
+ } & {
657
+ type: "timestamp without time zone" | "timestamp with time zone";
658
+ length?: number;
659
+ } & {
660
+ default: true;
661
+ value: string;
662
+ }) | (import("./types/Table").Base & {
663
+ nullable: true;
664
+ } & {
665
+ type: "timestamp without time zone" | "timestamp with time zone";
666
+ length?: number;
667
+ } & {
668
+ default: "created-at" | "updated-at";
669
+ type: "timestamp without time zone" | "timestamp with time zone";
670
+ }) | (import("./types/Table").Base & {
671
+ nullable: true;
672
+ } & {
673
+ type: "timestamp without time zone" | "timestamp with time zone";
674
+ length?: number;
675
+ } & {
676
+ default: "value";
677
+ type: "date" | "timestamp without time zone" | "timestamp with time zone";
678
+ value: Date;
679
+ })>, AllCTypeMapData extends CustomTypeMap<AllColumns>>(main: TableWithAlias, joinTables: (TableWithAlias & JoinData)[], contexts: { [t in keyof TablesData]: Context<TablesData[t]["columns"], CTypeMapData[t]>; }) => {
680
+ readonly contexts: { [t in keyof TablesData]: Context<TablesData[t]["columns"], CTypeMapData[t]>; };
681
+ readonly select: <R extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<TablesData>)[]>(returning: R | ((contexts: { [t_1 in keyof TablesData]: Context<TablesData[t_1]["columns"], CTypeMapData[t_1]>; }) => R), where: boolean | ((contexts: { [t_2 in keyof TablesData]: Context<TablesData[t_2]["columns"], CTypeMapData[t_2]>; }) => boolean), options?: {
1323
682
  ignoreInWhere?: boolean;
1324
683
  ignoreInReturning?: boolean;
1325
684
  ignoreInJoin?: boolean;
1326
685
  ignoreInGroupBy?: boolean;
1327
686
  distinct?: boolean;
1328
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: { [t_3 in keyof TablesData]: Context<TablesData[t_3]["columns"]>; }) => Expression<ExpressionTypes>[]);
687
+ groupBy?: Expression[] | ((contexts: { [t_3 in keyof TablesData]: Context<TablesData[t_3]["columns"], CTypeMapData[t_3 & keyof CTypeMapData]>; }) => Expression[]);
1329
688
  orders?: {
1330
689
  by: TablesColumnsKeys<TablesData>;
1331
690
  direction: OrderDirection;
1332
691
  }[];
1333
692
  start?: bigint;
1334
693
  step?: number;
1335
- } | undefined) => Query<AllColumns, R>;
1336
- readonly join: <JTable extends Table, JAlias extends string>(joinType: JoinType, joinTable: JTable, joinAlias: JAlias, on: Expression<boolean> | ((contexts: { [t_4 in keyof TablesData]: Context<TablesData[t_4]["columns"]>; } & Record<JAlias, Context<JTable["columns"]>>) => Expression<boolean>)) => {
1337
- readonly contexts: TablesData & Record<JAlias, JTable> extends infer T extends {
1338
- [key: string]: Table;
1339
- } ? { [t_5 in keyof T]: Context<(TablesData & Record<JAlias, JTable>)[t_5]["columns"]>; } : never;
1340
- readonly select: <R_1 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable>>)[]>(returning: R_1 | ((contexts: TablesData & Record<JAlias, JTable> extends infer T_1 extends {
1341
- [key: string]: Table;
1342
- } ? { [t_6 in keyof T_1]: Context<(TablesData & Record<JAlias, JTable>)[t_6]["columns"]>; } : never) => R_1), where: Expression<boolean> | ((contexts: TablesData & Record<JAlias, JTable> extends infer T_2 extends {
1343
- [key: string]: Table;
1344
- } ? { [t_7 in keyof T_2]: Context<(TablesData & Record<JAlias, JTable>)[t_7]["columns"]>; } : never) => Expression<boolean>), options?: {
694
+ } | undefined) => Query<AllColumns, R, AllCTypeMapData>;
695
+ readonly join: <JTable extends Table, JAlias extends string, JCTypeMap extends CustomTypeMap<JTable["columns"]> = {}>(joinType: JoinType, joinTable: JTable, joinAlias: JAlias, on: boolean | ((contexts: { [t_4 in keyof TablesData]: Context<TablesData[t_4]["columns"], CTypeMapData[t_4]>; } & Record<JAlias, Context<JTable["columns"], JCTypeMap>>) => boolean)) => {
696
+ readonly contexts: TablesData & Record<JAlias, JTable> extends infer T extends Record<string, Table> ? { [t_5 in keyof T]: Context<(TablesData & Record<JAlias, JTable>)[t_5]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap>)[t_5]>; } : never;
697
+ readonly select: <R_1 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable>>)[]>(returning: R_1 | ((contexts: TablesData & Record<JAlias, JTable> extends infer T_1 extends Record<string, Table> ? { [t_6 in keyof T_1]: Context<(TablesData & Record<JAlias, JTable>)[t_6]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap>)[t_6]>; } : never) => R_1), where: boolean | ((contexts: TablesData & Record<JAlias, JTable> extends infer T_2 extends Record<string, Table> ? { [t_7 in keyof T_2]: Context<(TablesData & Record<JAlias, JTable>)[t_7]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap>)[t_7]>; } : never) => boolean), options?: {
1345
698
  ignoreInWhere?: boolean;
1346
699
  ignoreInReturning?: boolean;
1347
700
  ignoreInJoin?: boolean;
1348
701
  ignoreInGroupBy?: boolean;
1349
702
  distinct?: boolean;
1350
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: TablesData & Record<JAlias, JTable> extends infer T_3 extends {
1351
- [key: string]: Table;
1352
- } ? { [t_8 in keyof T_3]: Context<(TablesData & Record<JAlias, JTable>)[t_8]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
703
+ groupBy?: Expression[] | ((contexts: TablesData & Record<JAlias, JTable> extends infer T_3 extends Record<string, Table> ? { [t_8 in keyof T_3]: Context<(TablesData & Record<JAlias, JTable>)[t_8]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap>)[t_8 & (keyof CTypeMapData | JAlias)]>; } : never) => Expression[]);
1353
704
  orders?: {
1354
705
  by: TablesColumnsKeys<TablesData & Record<JAlias, JTable>>;
1355
706
  direction: OrderDirection;
1356
707
  }[];
1357
708
  start?: bigint;
1358
709
  step?: number;
1359
- } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias>, R_1>;
1360
- readonly join: <JTable_1 extends Table, JAlias_1 extends string>(joinType: JoinType, joinTable: JTable_1, joinAlias: JAlias_1, on: Expression<boolean> | ((contexts: (TablesData & Record<JAlias, JTable> extends infer T_4 extends {
1361
- [key: string]: Table;
1362
- } ? { [t_9 in keyof T_4]: Context<(TablesData & Record<JAlias, JTable>)[t_9]["columns"]>; } : never) & Record<JAlias_1, Context<JTable_1["columns"]>>) => Expression<boolean>)) => {
1363
- readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_5 extends {
1364
- [key: string]: Table;
1365
- } ? { [t_10 in keyof T_5]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_10]["columns"]>; } : never;
1366
- readonly select: <R_2 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>>)[]>(returning: R_2 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_6 extends {
1367
- [key: string]: Table;
1368
- } ? { [t_11 in keyof T_6]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_11]["columns"]>; } : never) => R_2), where: Expression<boolean> | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_7 extends {
1369
- [key: string]: Table;
1370
- } ? { [t_12 in keyof T_7]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_12]["columns"]>; } : never) => Expression<boolean>), options?: {
710
+ } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias>, R_1, CustomTypeMap<AllColumns & AliasedColumns<JTable["columns"], JAlias>>>;
711
+ readonly join: <JTable_1 extends Table, JAlias_1 extends string, JCTypeMap_1 extends CustomTypeMap<JTable_1["columns"]> = {}>(joinType: JoinType, joinTable: JTable_1, joinAlias: JAlias_1, on: boolean | ((contexts: (TablesData & Record<JAlias, JTable> extends infer T_4 extends Record<string, Table> ? { [t_9 in keyof T_4]: Context<(TablesData & Record<JAlias, JTable>)[t_9]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap>)[t_9]>; } : never) & Record<JAlias_1, Context<JTable_1["columns"], JCTypeMap_1>>) => boolean)) => {
712
+ readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_5 extends Record<string, Table> ? { [t_10 in keyof T_5]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_10]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1>)[t_10]>; } : never;
713
+ readonly select: <R_2 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>>)[]>(returning: R_2 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_6 extends Record<string, Table> ? { [t_11 in keyof T_6]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_11]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1>)[t_11]>; } : never) => R_2), where: boolean | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_7 extends Record<string, Table> ? { [t_12 in keyof T_7]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_12]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1>)[t_12]>; } : never) => boolean), options?: {
1371
714
  ignoreInWhere?: boolean;
1372
715
  ignoreInReturning?: boolean;
1373
716
  ignoreInJoin?: boolean;
1374
717
  ignoreInGroupBy?: boolean;
1375
718
  distinct?: boolean;
1376
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_8 extends {
1377
- [key: string]: Table;
1378
- } ? { [t_13 in keyof T_8]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_13]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
719
+ groupBy?: Expression[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_8 extends Record<string, Table> ? { [t_13 in keyof T_8]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_13]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1>)[t_13 & (keyof CTypeMapData | JAlias | JAlias_1)]>; } : never) => Expression[]);
1379
720
  orders?: {
1380
721
  by: TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>>;
1381
722
  direction: OrderDirection;
1382
723
  }[];
1383
724
  start?: bigint;
1384
725
  step?: number;
1385
- } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1>, R_2>;
1386
- readonly join: <JTable_2 extends Table, JAlias_2 extends string>(joinType: JoinType, joinTable: JTable_2, joinAlias: JAlias_2, on: Expression<boolean> | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_9 extends {
1387
- [key: string]: Table;
1388
- } ? { [t_14 in keyof T_9]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_14]["columns"]>; } : never) & Record<JAlias_2, Context<JTable_2["columns"]>>) => Expression<boolean>)) => {
1389
- readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_10 extends {
1390
- [key: string]: Table;
1391
- } ? { [t_15 in keyof T_10]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_15]["columns"]>; } : never;
1392
- readonly select: <R_3 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>>)[]>(returning: R_3 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_11 extends {
1393
- [key: string]: Table;
1394
- } ? { [t_16 in keyof T_11]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_16]["columns"]>; } : never) => R_3), where: Expression<boolean> | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_12 extends {
1395
- [key: string]: Table;
1396
- } ? { [t_17 in keyof T_12]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_17]["columns"]>; } : never) => Expression<boolean>), options?: {
726
+ } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1>, R_2, CustomTypeMap<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1>>>;
727
+ readonly join: <JTable_2 extends Table, JAlias_2 extends string, JCTypeMap_2 extends CustomTypeMap<JTable_2["columns"]> = {}>(joinType: JoinType, joinTable: JTable_2, joinAlias: JAlias_2, on: boolean | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> extends infer T_9 extends Record<string, Table> ? { [t_14 in keyof T_9]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1>)[t_14]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1>)[t_14]>; } : never) & Record<JAlias_2, Context<JTable_2["columns"], JCTypeMap_2>>) => boolean)) => {
728
+ readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_10 extends Record<string, Table> ? { [t_15 in keyof T_10]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_15]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2>)[t_15]>; } : never;
729
+ readonly select: <R_3 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>>)[]>(returning: R_3 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_11 extends Record<string, Table> ? { [t_16 in keyof T_11]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_16]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2>)[t_16]>; } : never) => R_3), where: boolean | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_12 extends Record<string, Table> ? { [t_17 in keyof T_12]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_17]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2>)[t_17]>; } : never) => boolean), options?: {
1397
730
  ignoreInWhere?: boolean;
1398
731
  ignoreInReturning?: boolean;
1399
732
  ignoreInJoin?: boolean;
1400
733
  ignoreInGroupBy?: boolean;
1401
734
  distinct?: boolean;
1402
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_13 extends {
1403
- [key: string]: Table;
1404
- } ? { [t_18 in keyof T_13]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_18]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
735
+ groupBy?: Expression[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_13 extends Record<string, Table> ? { [t_18 in keyof T_13]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_18]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2>)[t_18 & (keyof CTypeMapData | JAlias | JAlias_1 | JAlias_2)]>; } : never) => Expression[]);
1405
736
  orders?: {
1406
737
  by: TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>>;
1407
738
  direction: OrderDirection;
1408
739
  }[];
1409
740
  start?: bigint;
1410
741
  step?: number;
1411
- } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2>, R_3>;
1412
- readonly join: <JTable_3 extends Table, JAlias_3 extends string>(joinType: JoinType, joinTable: JTable_3, joinAlias: JAlias_3, on: Expression<boolean> | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_14 extends {
1413
- [key: string]: Table;
1414
- } ? { [t_19 in keyof T_14]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_19]["columns"]>; } : never) & Record<JAlias_3, Context<JTable_3["columns"]>>) => Expression<boolean>)) => {
1415
- readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_15 extends {
1416
- [key: string]: Table;
1417
- } ? { [t_20 in keyof T_15]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_20]["columns"]>; } : never;
1418
- readonly select: <R_4 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>>)[]>(returning: R_4 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_16 extends {
1419
- [key: string]: Table;
1420
- } ? { [t_21 in keyof T_16]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_21]["columns"]>; } : never) => R_4), where: Expression<boolean> | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_17 extends {
1421
- [key: string]: Table;
1422
- } ? { [t_22 in keyof T_17]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_22]["columns"]>; } : never) => Expression<boolean>), options?: {
742
+ } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2>, R_3, CustomTypeMap<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2>>>;
743
+ readonly join: <JTable_3 extends Table, JAlias_3 extends string, JCTypeMap_3 extends CustomTypeMap<JTable_3["columns"]> = {}>(joinType: JoinType, joinTable: JTable_3, joinAlias: JAlias_3, on: boolean | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> extends infer T_14 extends Record<string, Table> ? { [t_19 in keyof T_14]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2>)[t_19]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2>)[t_19]>; } : never) & Record<JAlias_3, Context<JTable_3["columns"], JCTypeMap_3>>) => boolean)) => {
744
+ readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_15 extends Record<string, Table> ? { [t_20 in keyof T_15]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_20]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3>)[t_20]>; } : never;
745
+ readonly select: <R_4 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>>)[]>(returning: R_4 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_16 extends Record<string, Table> ? { [t_21 in keyof T_16]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_21]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3>)[t_21]>; } : never) => R_4), where: boolean | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_17 extends Record<string, Table> ? { [t_22 in keyof T_17]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_22]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3>)[t_22]>; } : never) => boolean), options?: {
1423
746
  ignoreInWhere?: boolean;
1424
747
  ignoreInReturning?: boolean;
1425
748
  ignoreInJoin?: boolean;
1426
749
  ignoreInGroupBy?: boolean;
1427
750
  distinct?: boolean;
1428
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_18 extends {
1429
- [key: string]: Table;
1430
- } ? { [t_23 in keyof T_18]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_23]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
751
+ groupBy?: Expression[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_18 extends Record<string, Table> ? { [t_23 in keyof T_18]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_23]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3>)[t_23 & (keyof CTypeMapData | JAlias | JAlias_1 | JAlias_2 | JAlias_3)]>; } : never) => Expression[]);
1431
752
  orders?: {
1432
753
  by: TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>>;
1433
754
  direction: OrderDirection;
1434
755
  }[];
1435
756
  start?: bigint;
1436
757
  step?: number;
1437
- } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3>, R_4>;
1438
- readonly join: <JTable_4 extends Table, JAlias_4 extends string>(joinType: JoinType, joinTable: JTable_4, joinAlias: JAlias_4, on: Expression<boolean> | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_19 extends {
1439
- [key: string]: Table;
1440
- } ? { [t_24 in keyof T_19]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_24]["columns"]>; } : never) & Record<JAlias_4, Context<JTable_4["columns"]>>) => Expression<boolean>)) => {
1441
- readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_20 extends {
1442
- [key: string]: Table;
1443
- } ? { [t_25 in keyof T_20]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_25]["columns"]>; } : never;
1444
- readonly select: <R_5 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>>)[]>(returning: R_5 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_21 extends {
1445
- [key: string]: Table;
1446
- } ? { [t_26 in keyof T_21]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_26]["columns"]>; } : never) => R_5), where: Expression<boolean> | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_22 extends {
1447
- [key: string]: Table;
1448
- } ? { [t_27 in keyof T_22]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_27]["columns"]>; } : never) => Expression<boolean>), options?: {
758
+ } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3>, R_4, CustomTypeMap<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3>>>;
759
+ readonly join: <JTable_4 extends Table, JAlias_4 extends string, JCTypeMap_4 extends CustomTypeMap<JTable_4["columns"]> = {}>(joinType: JoinType, joinTable: JTable_4, joinAlias: JAlias_4, on: boolean | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> extends infer T_19 extends Record<string, Table> ? { [t_24 in keyof T_19]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3>)[t_24]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3>)[t_24]>; } : never) & Record<JAlias_4, Context<JTable_4["columns"], JCTypeMap_4>>) => boolean)) => {
760
+ readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_20 extends Record<string, Table> ? { [t_25 in keyof T_20]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_25]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4>)[t_25]>; } : never;
761
+ readonly select: <R_5 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>>)[]>(returning: R_5 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_21 extends Record<string, Table> ? { [t_26 in keyof T_21]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_26]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4>)[t_26]>; } : never) => R_5), where: boolean | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_22 extends Record<string, Table> ? { [t_27 in keyof T_22]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_27]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4>)[t_27]>; } : never) => boolean), options?: {
1449
762
  ignoreInWhere?: boolean;
1450
763
  ignoreInReturning?: boolean;
1451
764
  ignoreInJoin?: boolean;
1452
765
  ignoreInGroupBy?: boolean;
1453
766
  distinct?: boolean;
1454
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_23 extends {
1455
- [key: string]: Table;
1456
- } ? { [t_28 in keyof T_23]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_28]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
767
+ groupBy?: Expression[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_23 extends Record<string, Table> ? { [t_28 in keyof T_23]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_28]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4>)[t_28 & (keyof CTypeMapData | JAlias | JAlias_1 | JAlias_2 | JAlias_3 | JAlias_4)]>; } : never) => Expression[]);
1457
768
  orders?: {
1458
769
  by: TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>>;
1459
770
  direction: OrderDirection;
1460
771
  }[];
1461
772
  start?: bigint;
1462
773
  step?: number;
1463
- } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4>, R_5>;
1464
- readonly join: <JTable_5 extends Table, JAlias_5 extends string>(joinType: JoinType, joinTable: JTable_5, joinAlias: JAlias_5, on: Expression<boolean> | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_24 extends {
1465
- [key: string]: Table;
1466
- } ? { [t_29 in keyof T_24]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_29]["columns"]>; } : never) & Record<JAlias_5, Context<JTable_5["columns"]>>) => Expression<boolean>)) => {
1467
- readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_25 extends {
1468
- [key: string]: Table;
1469
- } ? { [t_30 in keyof T_25]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_30]["columns"]>; } : never;
1470
- readonly select: <R_6 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>>)[]>(returning: R_6 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_26 extends {
1471
- [key: string]: Table;
1472
- } ? { [t_31 in keyof T_26]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_31]["columns"]>; } : never) => R_6), where: Expression<boolean> | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_27 extends {
1473
- [key: string]: Table;
1474
- } ? { [t_32 in keyof T_27]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_32]["columns"]>; } : never) => Expression<boolean>), options?: {
774
+ } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4>, R_5, CustomTypeMap<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4>>>;
775
+ readonly join: <JTable_5 extends Table, JAlias_5 extends string, JCTypeMap_5 extends CustomTypeMap<JTable_5["columns"]> = {}>(joinType: JoinType, joinTable: JTable_5, joinAlias: JAlias_5, on: boolean | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> extends infer T_24 extends Record<string, Table> ? { [t_29 in keyof T_24]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4>)[t_29]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4>)[t_29]>; } : never) & Record<JAlias_5, Context<JTable_5["columns"], JCTypeMap_5>>) => boolean)) => {
776
+ readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_25 extends Record<string, Table> ? { [t_30 in keyof T_25]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_30]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5>)[t_30]>; } : never;
777
+ readonly select: <R_6 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>>)[]>(returning: R_6 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_26 extends Record<string, Table> ? { [t_31 in keyof T_26]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_31]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5>)[t_31]>; } : never) => R_6), where: boolean | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_27 extends Record<string, Table> ? { [t_32 in keyof T_27]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_32]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5>)[t_32]>; } : never) => boolean), options?: {
1475
778
  ignoreInWhere?: boolean;
1476
779
  ignoreInReturning?: boolean;
1477
780
  ignoreInJoin?: boolean;
1478
781
  ignoreInGroupBy?: boolean;
1479
782
  distinct?: boolean;
1480
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_28 extends {
1481
- [key: string]: Table;
1482
- } ? { [t_33 in keyof T_28]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_33]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
783
+ groupBy?: Expression[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_28 extends Record<string, Table> ? { [t_33 in keyof T_28]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_33]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5>)[t_33 & (keyof CTypeMapData | JAlias | JAlias_1 | JAlias_2 | JAlias_3 | JAlias_4 | JAlias_5)]>; } : never) => Expression[]);
1483
784
  orders?: {
1484
785
  by: TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>>;
1485
786
  direction: OrderDirection;
1486
787
  }[];
1487
788
  start?: bigint;
1488
789
  step?: number;
1489
- } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5>, R_6>;
1490
- readonly join: <JTable_6 extends Table, JAlias_6 extends string>(joinType: JoinType, joinTable: JTable_6, joinAlias: JAlias_6, on: Expression<boolean> | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_29 extends {
1491
- [key: string]: Table;
1492
- } ? { [t_34 in keyof T_29]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_34]["columns"]>; } : never) & Record<JAlias_6, Context<JTable_6["columns"]>>) => Expression<boolean>)) => {
1493
- readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_30 extends {
1494
- [key: string]: Table;
1495
- } ? { [t_35 in keyof T_30]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_35]["columns"]>; } : never;
1496
- readonly select: <R_7 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>>)[]>(returning: R_7 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_31 extends {
1497
- [key: string]: Table;
1498
- } ? { [t_36 in keyof T_31]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_36]["columns"]>; } : never) => R_7), where: Expression<boolean> | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_32 extends {
1499
- [key: string]: Table;
1500
- } ? { [t_37 in keyof T_32]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_37]["columns"]>; } : never) => Expression<boolean>), options?: {
790
+ } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5>, R_6, CustomTypeMap<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5>>>;
791
+ readonly join: <JTable_6 extends Table, JAlias_6 extends string, JCTypeMap_6 extends CustomTypeMap<JTable_6["columns"]> = {}>(joinType: JoinType, joinTable: JTable_6, joinAlias: JAlias_6, on: boolean | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> extends infer T_29 extends Record<string, Table> ? { [t_34 in keyof T_29]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5>)[t_34]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5>)[t_34]>; } : never) & Record<JAlias_6, Context<JTable_6["columns"], JCTypeMap_6>>) => boolean)) => {
792
+ readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_30 extends Record<string, Table> ? { [t_35 in keyof T_30]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_35]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6>)[t_35]>; } : never;
793
+ readonly select: <R_7 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>>)[]>(returning: R_7 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_31 extends Record<string, Table> ? { [t_36 in keyof T_31]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_36]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6>)[t_36]>; } : never) => R_7), where: boolean | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_32 extends Record<string, Table> ? { [t_37 in keyof T_32]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_37]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6>)[t_37]>; } : never) => boolean), options?: {
1501
794
  ignoreInWhere?: boolean;
1502
795
  ignoreInReturning?: boolean;
1503
796
  ignoreInJoin?: boolean;
1504
797
  ignoreInGroupBy?: boolean;
1505
798
  distinct?: boolean;
1506
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_33 extends {
1507
- [key: string]: Table;
1508
- } ? { [t_38 in keyof T_33]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_38]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
799
+ groupBy?: Expression[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_33 extends Record<string, Table> ? { [t_38 in keyof T_33]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_38]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6>)[t_38 & (keyof CTypeMapData | JAlias | JAlias_1 | JAlias_2 | JAlias_3 | JAlias_4 | JAlias_5 | JAlias_6)]>; } : never) => Expression[]);
1509
800
  orders?: {
1510
801
  by: TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>>;
1511
802
  direction: OrderDirection;
1512
803
  }[];
1513
804
  start?: bigint;
1514
805
  step?: number;
1515
- } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6>, R_7>;
1516
- readonly join: <JTable_7 extends Table, JAlias_7 extends string>(joinType: JoinType, joinTable: JTable_7, joinAlias: JAlias_7, on: Expression<boolean> | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_34 extends {
1517
- [key: string]: Table;
1518
- } ? { [t_39 in keyof T_34]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_39]["columns"]>; } : never) & Record<JAlias_7, Context<JTable_7["columns"]>>) => Expression<boolean>)) => {
1519
- readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_35 extends {
1520
- [key: string]: Table;
1521
- } ? { [t_40 in keyof T_35]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_40]["columns"]>; } : never;
1522
- readonly select: <R_8 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>>)[]>(returning: R_8 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_36 extends {
1523
- [key: string]: Table;
1524
- } ? { [t_41 in keyof T_36]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_41]["columns"]>; } : never) => R_8), where: Expression<boolean> | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_37 extends {
1525
- [key: string]: Table;
1526
- } ? { [t_42 in keyof T_37]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_42]["columns"]>; } : never) => Expression<boolean>), options?: {
806
+ } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6>, R_7, CustomTypeMap<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6>>>;
807
+ readonly join: <JTable_7 extends Table, JAlias_7 extends string, JCTypeMap_7 extends CustomTypeMap<JTable_7["columns"]> = {}>(joinType: JoinType, joinTable: JTable_7, joinAlias: JAlias_7, on: boolean | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> extends infer T_34 extends Record<string, Table> ? { [t_39 in keyof T_34]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6>)[t_39]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6>)[t_39]>; } : never) & Record<JAlias_7, Context<JTable_7["columns"], JCTypeMap_7>>) => boolean)) => {
808
+ readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_35 extends Record<string, Table> ? { [t_40 in keyof T_35]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_40]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7>)[t_40]>; } : never;
809
+ readonly select: <R_8 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>>)[]>(returning: R_8 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_36 extends Record<string, Table> ? { [t_41 in keyof T_36]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_41]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7>)[t_41]>; } : never) => R_8), where: boolean | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_37 extends Record<string, Table> ? { [t_42 in keyof T_37]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_42]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7>)[t_42]>; } : never) => boolean), options?: {
1527
810
  ignoreInWhere?: boolean;
1528
811
  ignoreInReturning?: boolean;
1529
812
  ignoreInJoin?: boolean;
1530
813
  ignoreInGroupBy?: boolean;
1531
814
  distinct?: boolean;
1532
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_38 extends {
1533
- [key: string]: Table;
1534
- } ? { [t_43 in keyof T_38]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_43]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
815
+ groupBy?: Expression[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_38 extends Record<string, Table> ? { [t_43 in keyof T_38]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_43]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7>)[t_43 & (keyof CTypeMapData | JAlias | JAlias_1 | JAlias_2 | JAlias_3 | JAlias_4 | JAlias_5 | JAlias_6 | JAlias_7)]>; } : never) => Expression[]);
1535
816
  orders?: {
1536
817
  by: TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>>;
1537
818
  direction: OrderDirection;
1538
819
  }[];
1539
820
  start?: bigint;
1540
821
  step?: number;
1541
- } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7>, R_8>;
1542
- readonly join: <JTable_8 extends Table, JAlias_8 extends string>(joinType: JoinType, joinTable: JTable_8, joinAlias: JAlias_8, on: Expression<boolean> | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_39 extends {
1543
- [key: string]: Table;
1544
- } ? { [t_44 in keyof T_39]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_44]["columns"]>; } : never) & Record<JAlias_8, Context<JTable_8["columns"]>>) => Expression<boolean>)) => {
1545
- readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_40 extends {
1546
- [key: string]: Table;
1547
- } ? { [t_45 in keyof T_40]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_45]["columns"]>; } : never;
1548
- readonly select: <R_9 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>>)[]>(returning: R_9 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_41 extends {
1549
- [key: string]: Table;
1550
- } ? { [t_46 in keyof T_41]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_46]["columns"]>; } : never) => R_9), where: Expression<boolean> | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_42 extends {
1551
- [key: string]: Table;
1552
- } ? { [t_47 in keyof T_42]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_47]["columns"]>; } : never) => Expression<boolean>), options?: {
822
+ } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7>, R_8, CustomTypeMap<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7>>>;
823
+ readonly join: <JTable_8 extends Table, JAlias_8 extends string, JCTypeMap_8 extends CustomTypeMap<JTable_8["columns"]> = {}>(joinType: JoinType, joinTable: JTable_8, joinAlias: JAlias_8, on: boolean | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> extends infer T_39 extends Record<string, Table> ? { [t_44 in keyof T_39]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7>)[t_44]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7>)[t_44]>; } : never) & Record<JAlias_8, Context<JTable_8["columns"], JCTypeMap_8>>) => boolean)) => {
824
+ readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_40 extends Record<string, Table> ? { [t_45 in keyof T_40]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_45]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8>)[t_45]>; } : never;
825
+ readonly select: <R_9 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>>)[]>(returning: R_9 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_41 extends Record<string, Table> ? { [t_46 in keyof T_41]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_46]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8>)[t_46]>; } : never) => R_9), where: boolean | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_42 extends Record<string, Table> ? { [t_47 in keyof T_42]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_47]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8>)[t_47]>; } : never) => boolean), options?: {
1553
826
  ignoreInWhere?: boolean;
1554
827
  ignoreInReturning?: boolean;
1555
828
  ignoreInJoin?: boolean;
1556
829
  ignoreInGroupBy?: boolean;
1557
830
  distinct?: boolean;
1558
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_43 extends {
1559
- [key: string]: Table;
1560
- } ? { [t_48 in keyof T_43]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_48]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
831
+ groupBy?: Expression[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_43 extends Record<string, Table> ? { [t_48 in keyof T_43]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_48]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8>)[t_48 & (keyof CTypeMapData | JAlias | JAlias_1 | JAlias_2 | JAlias_3 | JAlias_4 | JAlias_5 | JAlias_6 | JAlias_7 | JAlias_8)]>; } : never) => Expression[]);
1561
832
  orders?: {
1562
833
  by: TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>>;
1563
834
  direction: OrderDirection;
1564
835
  }[];
1565
836
  start?: bigint;
1566
837
  step?: number;
1567
- } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7> & AliasedColumns<JTable_8["columns"], JAlias_8>, R_9>;
1568
- readonly join: <JTable_9 extends Table, JAlias_9 extends string>(joinType: JoinType, joinTable: JTable_9, joinAlias: JAlias_9, on: Expression<boolean> | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_44 extends {
1569
- [key: string]: Table;
1570
- } ? { [t_49 in keyof T_44]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_49]["columns"]>; } : never) & Record<JAlias_9, Context<JTable_9["columns"]>>) => Expression<boolean>)) => {
1571
- readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_45 extends {
1572
- [key: string]: Table;
1573
- } ? { [t_50 in keyof T_45]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_50]["columns"]>; } : never;
1574
- readonly select: <R_10 extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>>)[]>(returning: R_10 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_46 extends {
1575
- [key: string]: Table;
1576
- } ? { [t_51 in keyof T_46]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_51]["columns"]>; } : never) => R_10), where: Expression<boolean> | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_47 extends {
1577
- [key: string]: Table;
1578
- } ? { [t_52 in keyof T_47]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_52]["columns"]>; } : never) => Expression<boolean>), options?: {
838
+ } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7> & AliasedColumns<JTable_8["columns"], JAlias_8>, R_9, CustomTypeMap<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7> & AliasedColumns<JTable_8["columns"], JAlias_8>>>;
839
+ readonly join: <JTable_9 extends Table, JAlias_9 extends string, JCTypeMap_9 extends CustomTypeMap<JTable_9["columns"]> = {}>(joinType: JoinType, joinTable: JTable_9, joinAlias: JAlias_9, on: boolean | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> extends infer T_44 extends Record<string, Table> ? { [t_49 in keyof T_44]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8>)[t_49]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8>)[t_49]>; } : never) & Record<JAlias_9, Context<JTable_9["columns"], JCTypeMap_9>>) => boolean)) => {
840
+ readonly contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_45 extends Record<string, Table> ? { [t_50 in keyof T_45]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_50]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8> & Record<JAlias_9, JCTypeMap_9>)[t_50]>; } : never;
841
+ readonly select: <R_10 extends readonly (CustomColumn<Expression, string> | TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>>)[]>(returning: R_10 | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_46 extends Record<string, Table> ? { [t_51 in keyof T_46]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_51]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8> & Record<JAlias_9, JCTypeMap_9>)[t_51]>; } : never) => R_10), where: boolean | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_47 extends Record<string, Table> ? { [t_52 in keyof T_47]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_52]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8> & Record<JAlias_9, JCTypeMap_9>)[t_52]>; } : never) => boolean), options?: {
1579
842
  ignoreInWhere?: boolean;
1580
843
  ignoreInReturning?: boolean;
1581
844
  ignoreInJoin?: boolean;
1582
845
  ignoreInGroupBy?: boolean;
1583
846
  distinct?: boolean;
1584
- groupBy?: Expression<ExpressionTypes>[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_48 extends {
1585
- [key: string]: Table;
1586
- } ? { [t_53 in keyof T_48]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_53]["columns"]>; } : never) => Expression<ExpressionTypes>[]);
847
+ groupBy?: Expression[] | ((contexts: TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_48 extends Record<string, Table> ? { [t_53 in keyof T_48]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_53]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8> & Record<JAlias_9, JCTypeMap_9>)[t_53 & (keyof CTypeMapData | JAlias | JAlias_1 | JAlias_2 | JAlias_3 | JAlias_4 | JAlias_5 | JAlias_6 | JAlias_7 | JAlias_8 | JAlias_9)]>; } : never) => Expression[]);
1587
848
  orders?: {
1588
849
  by: TablesColumnsKeys<TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>>;
1589
850
  direction: OrderDirection;
1590
851
  }[];
1591
852
  start?: bigint;
1592
853
  step?: number;
1593
- } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7> & AliasedColumns<JTable_8["columns"], JAlias_8> & AliasedColumns<JTable_9["columns"], JAlias_9>, R_10>;
1594
- readonly join: <JTable_10 extends Table, JAlias_10 extends string>(joinType: JoinType, joinTable: JTable_10, joinAlias: JAlias_10, on: Expression<boolean> | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_49 extends {
1595
- [key: string]: Table;
1596
- } ? { [t_54 in keyof T_49]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_54]["columns"]>; } : never) & Record<JAlias_10, Context<JTable_10["columns"]>>) => Expression<boolean>)) => any;
854
+ } | undefined) => Query<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7> & AliasedColumns<JTable_8["columns"], JAlias_8> & AliasedColumns<JTable_9["columns"], JAlias_9>, R_10, CustomTypeMap<AllColumns & AliasedColumns<JTable["columns"], JAlias> & AliasedColumns<JTable_1["columns"], JAlias_1> & AliasedColumns<JTable_2["columns"], JAlias_2> & AliasedColumns<JTable_3["columns"], JAlias_3> & AliasedColumns<JTable_4["columns"], JAlias_4> & AliasedColumns<JTable_5["columns"], JAlias_5> & AliasedColumns<JTable_6["columns"], JAlias_6> & AliasedColumns<JTable_7["columns"], JAlias_7> & AliasedColumns<JTable_8["columns"], JAlias_8> & AliasedColumns<JTable_9["columns"], JAlias_9>>>;
855
+ readonly join: <JTable_10 extends Table, JAlias_10 extends string, JCTypeMap_10 extends CustomTypeMap<JTable_10["columns"]> = {}>(joinType: JoinType, joinTable: JTable_10, joinAlias: JAlias_10, on: boolean | ((contexts: (TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9> extends infer T_49 extends Record<string, Table> ? { [t_54 in keyof T_49]: Context<(TablesData & Record<JAlias, JTable> & Record<JAlias_1, JTable_1> & Record<JAlias_2, JTable_2> & Record<JAlias_3, JTable_3> & Record<JAlias_4, JTable_4> & Record<JAlias_5, JTable_5> & Record<JAlias_6, JTable_6> & Record<JAlias_7, JTable_7> & Record<JAlias_8, JTable_8> & Record<JAlias_9, JTable_9>)[t_54]["columns"], (CTypeMapData & Record<JAlias, JCTypeMap> & Record<JAlias_1, JCTypeMap_1> & Record<JAlias_2, JCTypeMap_2> & Record<JAlias_3, JCTypeMap_3> & Record<JAlias_4, JCTypeMap_4> & Record<JAlias_5, JCTypeMap_5> & Record<JAlias_6, JCTypeMap_6> & Record<JAlias_7, JCTypeMap_7> & Record<JAlias_8, JCTypeMap_8> & Record<JAlias_9, JCTypeMap_9>)[t_54]>; } : never) & Record<JAlias_10, Context<JTable_10["columns"], JCTypeMap_10>>) => boolean)) => any;
1597
856
  };
1598
857
  };
1599
858
  };
@@ -1605,38 +864,15 @@ declare const createJoinSelectEntity: <TablesData extends {
1605
864
  };
1606
865
  };
1607
866
  };
1608
- declare const ReservedExpressionKeys: readonly ["val", "=n", "!=n", "=t", "=f", "not", "+", "-", "*", "/", "||", "and", "or", "**", "fun", "swt", "col", "raw", "=", "!=", ">", ">=", "<", "<=", "lk", "@>", "<@", "?", "j-", "in", "nin", "lka", "lks", "?|", "?&", "j-a", "bt", "qry", "exists"];
1609
867
  declare const createQueryResult: <Columns extends {
1610
- [key: string]: ({
1611
- type: PostgresType;
1612
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1613
- nullable: boolean;
1614
- title?: string;
1615
- reference?: {
1616
- table: Table;
1617
- onUpdate?: import("./types/table").ReferenceActions;
1618
- onDelete?: import("./types/table").ReferenceActions;
1619
- column: string;
1620
- };
1621
- } & {
868
+ [key: string]: (import("./types/Table").Base & {
1622
869
  primary?: true;
1623
870
  nullable: false;
1624
871
  } & {
1625
872
  type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
1626
873
  } & {
1627
874
  default: false;
1628
- }) | ({
1629
- type: PostgresType;
1630
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1631
- nullable: boolean;
1632
- title?: string;
1633
- reference?: {
1634
- table: Table;
1635
- onUpdate?: import("./types/table").ReferenceActions;
1636
- onDelete?: import("./types/table").ReferenceActions;
1637
- column: string;
1638
- };
1639
- } & {
875
+ }) | (import("./types/Table").Base & {
1640
876
  primary?: true;
1641
877
  nullable: false;
1642
878
  } & {
@@ -1644,18 +880,7 @@ declare const createQueryResult: <Columns extends {
1644
880
  } & {
1645
881
  default: true;
1646
882
  value: string;
1647
- }) | ({
1648
- type: PostgresType;
1649
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1650
- nullable: boolean;
1651
- title?: string;
1652
- reference?: {
1653
- table: Table;
1654
- onUpdate?: import("./types/table").ReferenceActions;
1655
- onDelete?: import("./types/table").ReferenceActions;
1656
- column: string;
1657
- };
1658
- } & {
883
+ }) | (import("./types/Table").Base & {
1659
884
  primary?: true;
1660
885
  nullable: false;
1661
886
  } & {
@@ -1664,18 +889,7 @@ declare const createQueryResult: <Columns extends {
1664
889
  default: "value";
1665
890
  type: "boolean";
1666
891
  value: boolean;
1667
- }) | ({
1668
- type: PostgresType;
1669
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1670
- nullable: boolean;
1671
- title?: string;
1672
- reference?: {
1673
- table: Table;
1674
- onUpdate?: import("./types/table").ReferenceActions;
1675
- onDelete?: import("./types/table").ReferenceActions;
1676
- column: string;
1677
- };
1678
- } & {
892
+ }) | (import("./types/Table").Base & {
1679
893
  primary?: true;
1680
894
  nullable: false;
1681
895
  } & {
@@ -1684,18 +898,7 @@ declare const createQueryResult: <Columns extends {
1684
898
  default: "value";
1685
899
  type: "character" | "character varying" | "text" | "uuid";
1686
900
  value: string;
1687
- }) | ({
1688
- type: PostgresType;
1689
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1690
- nullable: boolean;
1691
- title?: string;
1692
- reference?: {
1693
- table: Table;
1694
- onUpdate?: import("./types/table").ReferenceActions;
1695
- onDelete?: import("./types/table").ReferenceActions;
1696
- column: string;
1697
- };
1698
- } & {
901
+ }) | (import("./types/Table").Base & {
1699
902
  primary?: true;
1700
903
  nullable: false;
1701
904
  } & {
@@ -1704,18 +907,7 @@ declare const createQueryResult: <Columns extends {
1704
907
  default: "value";
1705
908
  type: "date" | "timestamp without time zone" | "timestamp with time zone";
1706
909
  value: Date;
1707
- }) | ({
1708
- type: PostgresType;
1709
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1710
- nullable: boolean;
1711
- title?: string;
1712
- reference?: {
1713
- table: Table;
1714
- onUpdate?: import("./types/table").ReferenceActions;
1715
- onDelete?: import("./types/table").ReferenceActions;
1716
- column: string;
1717
- };
1718
- } & {
910
+ }) | (import("./types/Table").Base & {
1719
911
  primary?: true;
1720
912
  nullable: false;
1721
913
  } & {
@@ -1723,19 +915,8 @@ declare const createQueryResult: <Columns extends {
1723
915
  } & {
1724
916
  default: "value";
1725
917
  type: "json" | "jsonb";
1726
- value: import("./types/json").JSON;
1727
- }) | ({
1728
- type: PostgresType;
1729
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1730
- nullable: boolean;
1731
- title?: string;
1732
- reference?: {
1733
- table: Table;
1734
- onUpdate?: import("./types/table").ReferenceActions;
1735
- onDelete?: import("./types/table").ReferenceActions;
1736
- column: string;
1737
- };
1738
- } & {
918
+ value: import("./types/Json").Json;
919
+ }) | (import("./types/Table").Base & {
1739
920
  primary?: true;
1740
921
  nullable: false;
1741
922
  } & {
@@ -1744,18 +925,7 @@ declare const createQueryResult: <Columns extends {
1744
925
  max?: number;
1745
926
  } & {
1746
927
  default: false;
1747
- }) | ({
1748
- type: PostgresType;
1749
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1750
- nullable: boolean;
1751
- title?: string;
1752
- reference?: {
1753
- table: Table;
1754
- onUpdate?: import("./types/table").ReferenceActions;
1755
- onDelete?: import("./types/table").ReferenceActions;
1756
- column: string;
1757
- };
1758
- } & {
928
+ }) | (import("./types/Table").Base & {
1759
929
  primary?: true;
1760
930
  nullable: false;
1761
931
  } & {
@@ -1765,18 +935,7 @@ declare const createQueryResult: <Columns extends {
1765
935
  } & {
1766
936
  default: true;
1767
937
  value: string;
1768
- }) | ({
1769
- type: PostgresType;
1770
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1771
- nullable: boolean;
1772
- title?: string;
1773
- reference?: {
1774
- table: Table;
1775
- onUpdate?: import("./types/table").ReferenceActions;
1776
- onDelete?: import("./types/table").ReferenceActions;
1777
- column: string;
1778
- };
1779
- } & {
938
+ }) | (import("./types/Table").Base & {
1780
939
  primary?: true;
1781
940
  nullable: false;
1782
941
  } & {
@@ -1787,18 +946,7 @@ declare const createQueryResult: <Columns extends {
1787
946
  default: "auto-increment";
1788
947
  type: "bigint" | "smallint" | "integer";
1789
948
  seqTitle?: string;
1790
- }) | ({
1791
- type: PostgresType;
1792
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1793
- nullable: boolean;
1794
- title?: string;
1795
- reference?: {
1796
- table: Table;
1797
- onUpdate?: import("./types/table").ReferenceActions;
1798
- onDelete?: import("./types/table").ReferenceActions;
1799
- column: string;
1800
- };
1801
- } & {
949
+ }) | (import("./types/Table").Base & {
1802
950
  primary?: true;
1803
951
  nullable: false;
1804
952
  } & {
@@ -1809,18 +957,7 @@ declare const createQueryResult: <Columns extends {
1809
957
  default: "value";
1810
958
  type: "smallint" | "integer" | "real" | "double precision";
1811
959
  value: number;
1812
- }) | ({
1813
- type: PostgresType;
1814
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1815
- nullable: boolean;
1816
- title?: string;
1817
- reference?: {
1818
- table: Table;
1819
- onUpdate?: import("./types/table").ReferenceActions;
1820
- onDelete?: import("./types/table").ReferenceActions;
1821
- column: string;
1822
- };
1823
- } & {
960
+ }) | (import("./types/Table").Base & {
1824
961
  primary?: true;
1825
962
  nullable: false;
1826
963
  } & {
@@ -1829,18 +966,7 @@ declare const createQueryResult: <Columns extends {
1829
966
  max?: bigint;
1830
967
  } & {
1831
968
  default: false;
1832
- }) | ({
1833
- type: PostgresType;
1834
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1835
- nullable: boolean;
1836
- title?: string;
1837
- reference?: {
1838
- table: Table;
1839
- onUpdate?: import("./types/table").ReferenceActions;
1840
- onDelete?: import("./types/table").ReferenceActions;
1841
- column: string;
1842
- };
1843
- } & {
969
+ }) | (import("./types/Table").Base & {
1844
970
  primary?: true;
1845
971
  nullable: false;
1846
972
  } & {
@@ -1850,18 +976,7 @@ declare const createQueryResult: <Columns extends {
1850
976
  } & {
1851
977
  default: true;
1852
978
  value: string;
1853
- }) | ({
1854
- type: PostgresType;
1855
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1856
- nullable: boolean;
1857
- title?: string;
1858
- reference?: {
1859
- table: Table;
1860
- onUpdate?: import("./types/table").ReferenceActions;
1861
- onDelete?: import("./types/table").ReferenceActions;
1862
- column: string;
1863
- };
1864
- } & {
979
+ }) | (import("./types/Table").Base & {
1865
980
  primary?: true;
1866
981
  nullable: false;
1867
982
  } & {
@@ -1872,18 +987,7 @@ declare const createQueryResult: <Columns extends {
1872
987
  default: "auto-increment";
1873
988
  type: "bigint" | "smallint" | "integer";
1874
989
  seqTitle?: string;
1875
- }) | ({
1876
- type: PostgresType;
1877
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1878
- nullable: boolean;
1879
- title?: string;
1880
- reference?: {
1881
- table: Table;
1882
- onUpdate?: import("./types/table").ReferenceActions;
1883
- onDelete?: import("./types/table").ReferenceActions;
1884
- column: string;
1885
- };
1886
- } & {
990
+ }) | (import("./types/Table").Base & {
1887
991
  primary?: true;
1888
992
  nullable: false;
1889
993
  } & {
@@ -1894,18 +998,7 @@ declare const createQueryResult: <Columns extends {
1894
998
  default: "value";
1895
999
  type: "bigint";
1896
1000
  value: bigint;
1897
- }) | ({
1898
- type: PostgresType;
1899
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1900
- nullable: boolean;
1901
- title?: string;
1902
- reference?: {
1903
- table: Table;
1904
- onUpdate?: import("./types/table").ReferenceActions;
1905
- onDelete?: import("./types/table").ReferenceActions;
1906
- column: string;
1907
- };
1908
- } & {
1001
+ }) | (import("./types/Table").Base & {
1909
1002
  primary?: true;
1910
1003
  nullable: false;
1911
1004
  } & {
@@ -1916,18 +1009,7 @@ declare const createQueryResult: <Columns extends {
1916
1009
  max?: Decimal;
1917
1010
  } & {
1918
1011
  default: false;
1919
- }) | ({
1920
- type: PostgresType;
1921
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1922
- nullable: boolean;
1923
- title?: string;
1924
- reference?: {
1925
- table: Table;
1926
- onUpdate?: import("./types/table").ReferenceActions;
1927
- onDelete?: import("./types/table").ReferenceActions;
1928
- column: string;
1929
- };
1930
- } & {
1012
+ }) | (import("./types/Table").Base & {
1931
1013
  primary?: true;
1932
1014
  nullable: false;
1933
1015
  } & {
@@ -1939,18 +1021,7 @@ declare const createQueryResult: <Columns extends {
1939
1021
  } & {
1940
1022
  default: true;
1941
1023
  value: string;
1942
- }) | ({
1943
- type: PostgresType;
1944
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1945
- nullable: boolean;
1946
- title?: string;
1947
- reference?: {
1948
- table: Table;
1949
- onUpdate?: import("./types/table").ReferenceActions;
1950
- onDelete?: import("./types/table").ReferenceActions;
1951
- column: string;
1952
- };
1953
- } & {
1024
+ }) | (import("./types/Table").Base & {
1954
1025
  primary?: true;
1955
1026
  nullable: false;
1956
1027
  } & {
@@ -1963,18 +1034,7 @@ declare const createQueryResult: <Columns extends {
1963
1034
  default: "value";
1964
1035
  type: "numeric";
1965
1036
  value: Decimal;
1966
- }) | ({
1967
- type: PostgresType;
1968
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1969
- nullable: boolean;
1970
- title?: string;
1971
- reference?: {
1972
- table: Table;
1973
- onUpdate?: import("./types/table").ReferenceActions;
1974
- onDelete?: import("./types/table").ReferenceActions;
1975
- column: string;
1976
- };
1977
- } & {
1037
+ }) | (import("./types/Table").Base & {
1978
1038
  primary?: true;
1979
1039
  nullable: false;
1980
1040
  } & {
@@ -1984,18 +1044,7 @@ declare const createQueryResult: <Columns extends {
1984
1044
  regex?: RegExp;
1985
1045
  } & {
1986
1046
  default: false;
1987
- }) | ({
1988
- type: PostgresType;
1989
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
1990
- nullable: boolean;
1991
- title?: string;
1992
- reference?: {
1993
- table: Table;
1994
- onUpdate?: import("./types/table").ReferenceActions;
1995
- onDelete?: import("./types/table").ReferenceActions;
1996
- column: string;
1997
- };
1998
- } & {
1047
+ }) | (import("./types/Table").Base & {
1999
1048
  primary?: true;
2000
1049
  nullable: false;
2001
1050
  } & {
@@ -2006,18 +1055,7 @@ declare const createQueryResult: <Columns extends {
2006
1055
  } & {
2007
1056
  default: true;
2008
1057
  value: string;
2009
- }) | ({
2010
- type: PostgresType;
2011
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2012
- nullable: boolean;
2013
- title?: string;
2014
- reference?: {
2015
- table: Table;
2016
- onUpdate?: import("./types/table").ReferenceActions;
2017
- onDelete?: import("./types/table").ReferenceActions;
2018
- column: string;
2019
- };
2020
- } & {
1058
+ }) | (import("./types/Table").Base & {
2021
1059
  primary?: true;
2022
1060
  nullable: false;
2023
1061
  } & {
@@ -2029,18 +1067,7 @@ declare const createQueryResult: <Columns extends {
2029
1067
  default: "value";
2030
1068
  type: "character" | "character varying" | "text" | "uuid";
2031
1069
  value: string;
2032
- }) | ({
2033
- type: PostgresType;
2034
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2035
- nullable: boolean;
2036
- title?: string;
2037
- reference?: {
2038
- table: Table;
2039
- onUpdate?: import("./types/table").ReferenceActions;
2040
- onDelete?: import("./types/table").ReferenceActions;
2041
- column: string;
2042
- };
2043
- } & {
1070
+ }) | (import("./types/Table").Base & {
2044
1071
  primary?: true;
2045
1072
  nullable: false;
2046
1073
  } & {
@@ -2048,18 +1075,7 @@ declare const createQueryResult: <Columns extends {
2048
1075
  length?: number;
2049
1076
  } & {
2050
1077
  default: false;
2051
- }) | ({
2052
- type: PostgresType;
2053
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2054
- nullable: boolean;
2055
- title?: string;
2056
- reference?: {
2057
- table: Table;
2058
- onUpdate?: import("./types/table").ReferenceActions;
2059
- onDelete?: import("./types/table").ReferenceActions;
2060
- column: string;
2061
- };
2062
- } & {
1078
+ }) | (import("./types/Table").Base & {
2063
1079
  primary?: true;
2064
1080
  nullable: false;
2065
1081
  } & {
@@ -2068,18 +1084,7 @@ declare const createQueryResult: <Columns extends {
2068
1084
  } & {
2069
1085
  default: true;
2070
1086
  value: string;
2071
- }) | ({
2072
- type: PostgresType;
2073
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2074
- nullable: boolean;
2075
- title?: string;
2076
- reference?: {
2077
- table: Table;
2078
- onUpdate?: import("./types/table").ReferenceActions;
2079
- onDelete?: import("./types/table").ReferenceActions;
2080
- column: string;
2081
- };
2082
- } & {
1087
+ }) | (import("./types/Table").Base & {
2083
1088
  primary?: true;
2084
1089
  nullable: false;
2085
1090
  } & {
@@ -2088,18 +1093,7 @@ declare const createQueryResult: <Columns extends {
2088
1093
  } & {
2089
1094
  default: "created-at" | "updated-at";
2090
1095
  type: "timestamp without time zone" | "timestamp with time zone";
2091
- }) | ({
2092
- type: PostgresType;
2093
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2094
- nullable: boolean;
2095
- title?: string;
2096
- reference?: {
2097
- table: Table;
2098
- onUpdate?: import("./types/table").ReferenceActions;
2099
- onDelete?: import("./types/table").ReferenceActions;
2100
- column: string;
2101
- };
2102
- } & {
1096
+ }) | (import("./types/Table").Base & {
2103
1097
  primary?: true;
2104
1098
  nullable: false;
2105
1099
  } & {
@@ -2109,53 +1103,20 @@ declare const createQueryResult: <Columns extends {
2109
1103
  default: "value";
2110
1104
  type: "date" | "timestamp without time zone" | "timestamp with time zone";
2111
1105
  value: Date;
2112
- }) | ({
2113
- type: PostgresType;
2114
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2115
- nullable: boolean;
2116
- title?: string;
2117
- reference?: {
2118
- table: Table;
2119
- onUpdate?: import("./types/table").ReferenceActions;
2120
- onDelete?: import("./types/table").ReferenceActions;
2121
- column: string;
2122
- };
2123
- } & {
1106
+ }) | (import("./types/Table").Base & {
2124
1107
  nullable: true;
2125
1108
  } & {
2126
1109
  type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
2127
1110
  } & {
2128
1111
  default: false;
2129
- }) | ({
2130
- type: PostgresType;
2131
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2132
- nullable: boolean;
2133
- title?: string;
2134
- reference?: {
2135
- table: Table;
2136
- onUpdate?: import("./types/table").ReferenceActions;
2137
- onDelete?: import("./types/table").ReferenceActions;
2138
- column: string;
2139
- };
2140
- } & {
1112
+ }) | (import("./types/Table").Base & {
2141
1113
  nullable: true;
2142
1114
  } & {
2143
1115
  type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
2144
1116
  } & {
2145
1117
  default: true;
2146
1118
  value: string;
2147
- }) | ({
2148
- type: PostgresType;
2149
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2150
- nullable: boolean;
2151
- title?: string;
2152
- reference?: {
2153
- table: Table;
2154
- onUpdate?: import("./types/table").ReferenceActions;
2155
- onDelete?: import("./types/table").ReferenceActions;
2156
- column: string;
2157
- };
2158
- } & {
1119
+ }) | (import("./types/Table").Base & {
2159
1120
  nullable: true;
2160
1121
  } & {
2161
1122
  type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
@@ -2163,18 +1124,7 @@ declare const createQueryResult: <Columns extends {
2163
1124
  default: "value";
2164
1125
  type: "boolean";
2165
1126
  value: boolean;
2166
- }) | ({
2167
- type: PostgresType;
2168
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2169
- nullable: boolean;
2170
- title?: string;
2171
- reference?: {
2172
- table: Table;
2173
- onUpdate?: import("./types/table").ReferenceActions;
2174
- onDelete?: import("./types/table").ReferenceActions;
2175
- column: string;
2176
- };
2177
- } & {
1127
+ }) | (import("./types/Table").Base & {
2178
1128
  nullable: true;
2179
1129
  } & {
2180
1130
  type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
@@ -2182,18 +1132,7 @@ declare const createQueryResult: <Columns extends {
2182
1132
  default: "value";
2183
1133
  type: "character" | "character varying" | "text" | "uuid";
2184
1134
  value: string;
2185
- }) | ({
2186
- type: PostgresType;
2187
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2188
- nullable: boolean;
2189
- title?: string;
2190
- reference?: {
2191
- table: Table;
2192
- onUpdate?: import("./types/table").ReferenceActions;
2193
- onDelete?: import("./types/table").ReferenceActions;
2194
- column: string;
2195
- };
2196
- } & {
1135
+ }) | (import("./types/Table").Base & {
2197
1136
  nullable: true;
2198
1137
  } & {
2199
1138
  type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
@@ -2201,37 +1140,15 @@ declare const createQueryResult: <Columns extends {
2201
1140
  default: "value";
2202
1141
  type: "date" | "timestamp without time zone" | "timestamp with time zone";
2203
1142
  value: Date;
2204
- }) | ({
2205
- type: PostgresType;
2206
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2207
- nullable: boolean;
2208
- title?: string;
2209
- reference?: {
2210
- table: Table;
2211
- onUpdate?: import("./types/table").ReferenceActions;
2212
- onDelete?: import("./types/table").ReferenceActions;
2213
- column: string;
2214
- };
2215
- } & {
1143
+ }) | (import("./types/Table").Base & {
2216
1144
  nullable: true;
2217
1145
  } & {
2218
1146
  type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
2219
1147
  } & {
2220
1148
  default: "value";
2221
1149
  type: "json" | "jsonb";
2222
- value: import("./types/json").JSON;
2223
- }) | ({
2224
- type: PostgresType;
2225
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2226
- nullable: boolean;
2227
- title?: string;
2228
- reference?: {
2229
- table: Table;
2230
- onUpdate?: import("./types/table").ReferenceActions;
2231
- onDelete?: import("./types/table").ReferenceActions;
2232
- column: string;
2233
- };
2234
- } & {
1150
+ value: import("./types/Json").Json;
1151
+ }) | (import("./types/Table").Base & {
2235
1152
  nullable: true;
2236
1153
  } & {
2237
1154
  type: "smallint" | "integer" | "real" | "double precision";
@@ -2239,18 +1156,7 @@ declare const createQueryResult: <Columns extends {
2239
1156
  max?: number;
2240
1157
  } & {
2241
1158
  default: false;
2242
- }) | ({
2243
- type: PostgresType;
2244
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2245
- nullable: boolean;
2246
- title?: string;
2247
- reference?: {
2248
- table: Table;
2249
- onUpdate?: import("./types/table").ReferenceActions;
2250
- onDelete?: import("./types/table").ReferenceActions;
2251
- column: string;
2252
- };
2253
- } & {
1159
+ }) | (import("./types/Table").Base & {
2254
1160
  nullable: true;
2255
1161
  } & {
2256
1162
  type: "smallint" | "integer" | "real" | "double precision";
@@ -2259,18 +1165,7 @@ declare const createQueryResult: <Columns extends {
2259
1165
  } & {
2260
1166
  default: true;
2261
1167
  value: string;
2262
- }) | ({
2263
- type: PostgresType;
2264
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2265
- nullable: boolean;
2266
- title?: string;
2267
- reference?: {
2268
- table: Table;
2269
- onUpdate?: import("./types/table").ReferenceActions;
2270
- onDelete?: import("./types/table").ReferenceActions;
2271
- column: string;
2272
- };
2273
- } & {
1168
+ }) | (import("./types/Table").Base & {
2274
1169
  nullable: true;
2275
1170
  } & {
2276
1171
  type: "smallint" | "integer" | "real" | "double precision";
@@ -2280,18 +1175,7 @@ declare const createQueryResult: <Columns extends {
2280
1175
  default: "auto-increment";
2281
1176
  type: "bigint" | "smallint" | "integer";
2282
1177
  seqTitle?: string;
2283
- }) | ({
2284
- type: PostgresType;
2285
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2286
- nullable: boolean;
2287
- title?: string;
2288
- reference?: {
2289
- table: Table;
2290
- onUpdate?: import("./types/table").ReferenceActions;
2291
- onDelete?: import("./types/table").ReferenceActions;
2292
- column: string;
2293
- };
2294
- } & {
1178
+ }) | (import("./types/Table").Base & {
2295
1179
  nullable: true;
2296
1180
  } & {
2297
1181
  type: "smallint" | "integer" | "real" | "double precision";
@@ -2301,18 +1185,7 @@ declare const createQueryResult: <Columns extends {
2301
1185
  default: "value";
2302
1186
  type: "smallint" | "integer" | "real" | "double precision";
2303
1187
  value: number;
2304
- }) | ({
2305
- type: PostgresType;
2306
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2307
- nullable: boolean;
2308
- title?: string;
2309
- reference?: {
2310
- table: Table;
2311
- onUpdate?: import("./types/table").ReferenceActions;
2312
- onDelete?: import("./types/table").ReferenceActions;
2313
- column: string;
2314
- };
2315
- } & {
1188
+ }) | (import("./types/Table").Base & {
2316
1189
  nullable: true;
2317
1190
  } & {
2318
1191
  type: "bigint";
@@ -2320,18 +1193,7 @@ declare const createQueryResult: <Columns extends {
2320
1193
  max?: bigint;
2321
1194
  } & {
2322
1195
  default: false;
2323
- }) | ({
2324
- type: PostgresType;
2325
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2326
- nullable: boolean;
2327
- title?: string;
2328
- reference?: {
2329
- table: Table;
2330
- onUpdate?: import("./types/table").ReferenceActions;
2331
- onDelete?: import("./types/table").ReferenceActions;
2332
- column: string;
2333
- };
2334
- } & {
1196
+ }) | (import("./types/Table").Base & {
2335
1197
  nullable: true;
2336
1198
  } & {
2337
1199
  type: "bigint";
@@ -2340,18 +1202,7 @@ declare const createQueryResult: <Columns extends {
2340
1202
  } & {
2341
1203
  default: true;
2342
1204
  value: string;
2343
- }) | ({
2344
- type: PostgresType;
2345
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2346
- nullable: boolean;
2347
- title?: string;
2348
- reference?: {
2349
- table: Table;
2350
- onUpdate?: import("./types/table").ReferenceActions;
2351
- onDelete?: import("./types/table").ReferenceActions;
2352
- column: string;
2353
- };
2354
- } & {
1205
+ }) | (import("./types/Table").Base & {
2355
1206
  nullable: true;
2356
1207
  } & {
2357
1208
  type: "bigint";
@@ -2361,18 +1212,7 @@ declare const createQueryResult: <Columns extends {
2361
1212
  default: "auto-increment";
2362
1213
  type: "bigint" | "smallint" | "integer";
2363
1214
  seqTitle?: string;
2364
- }) | ({
2365
- type: PostgresType;
2366
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2367
- nullable: boolean;
2368
- title?: string;
2369
- reference?: {
2370
- table: Table;
2371
- onUpdate?: import("./types/table").ReferenceActions;
2372
- onDelete?: import("./types/table").ReferenceActions;
2373
- column: string;
2374
- };
2375
- } & {
1215
+ }) | (import("./types/Table").Base & {
2376
1216
  nullable: true;
2377
1217
  } & {
2378
1218
  type: "bigint";
@@ -2382,18 +1222,7 @@ declare const createQueryResult: <Columns extends {
2382
1222
  default: "value";
2383
1223
  type: "bigint";
2384
1224
  value: bigint;
2385
- }) | ({
2386
- type: PostgresType;
2387
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2388
- nullable: boolean;
2389
- title?: string;
2390
- reference?: {
2391
- table: Table;
2392
- onUpdate?: import("./types/table").ReferenceActions;
2393
- onDelete?: import("./types/table").ReferenceActions;
2394
- column: string;
2395
- };
2396
- } & {
1225
+ }) | (import("./types/Table").Base & {
2397
1226
  nullable: true;
2398
1227
  } & {
2399
1228
  type: "numeric";
@@ -2403,18 +1232,7 @@ declare const createQueryResult: <Columns extends {
2403
1232
  max?: Decimal;
2404
1233
  } & {
2405
1234
  default: false;
2406
- }) | ({
2407
- type: PostgresType;
2408
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2409
- nullable: boolean;
2410
- title?: string;
2411
- reference?: {
2412
- table: Table;
2413
- onUpdate?: import("./types/table").ReferenceActions;
2414
- onDelete?: import("./types/table").ReferenceActions;
2415
- column: string;
2416
- };
2417
- } & {
1235
+ }) | (import("./types/Table").Base & {
2418
1236
  nullable: true;
2419
1237
  } & {
2420
1238
  type: "numeric";
@@ -2425,18 +1243,7 @@ declare const createQueryResult: <Columns extends {
2425
1243
  } & {
2426
1244
  default: true;
2427
1245
  value: string;
2428
- }) | ({
2429
- type: PostgresType;
2430
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2431
- nullable: boolean;
2432
- title?: string;
2433
- reference?: {
2434
- table: Table;
2435
- onUpdate?: import("./types/table").ReferenceActions;
2436
- onDelete?: import("./types/table").ReferenceActions;
2437
- column: string;
2438
- };
2439
- } & {
1246
+ }) | (import("./types/Table").Base & {
2440
1247
  nullable: true;
2441
1248
  } & {
2442
1249
  type: "numeric";
@@ -2448,18 +1255,7 @@ declare const createQueryResult: <Columns extends {
2448
1255
  default: "value";
2449
1256
  type: "numeric";
2450
1257
  value: Decimal;
2451
- }) | ({
2452
- type: PostgresType;
2453
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2454
- nullable: boolean;
2455
- title?: string;
2456
- reference?: {
2457
- table: Table;
2458
- onUpdate?: import("./types/table").ReferenceActions;
2459
- onDelete?: import("./types/table").ReferenceActions;
2460
- column: string;
2461
- };
2462
- } & {
1258
+ }) | (import("./types/Table").Base & {
2463
1259
  nullable: true;
2464
1260
  } & {
2465
1261
  type: "character" | "character varying";
@@ -2468,18 +1264,7 @@ declare const createQueryResult: <Columns extends {
2468
1264
  regex?: RegExp;
2469
1265
  } & {
2470
1266
  default: false;
2471
- }) | ({
2472
- type: PostgresType;
2473
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2474
- nullable: boolean;
2475
- title?: string;
2476
- reference?: {
2477
- table: Table;
2478
- onUpdate?: import("./types/table").ReferenceActions;
2479
- onDelete?: import("./types/table").ReferenceActions;
2480
- column: string;
2481
- };
2482
- } & {
1267
+ }) | (import("./types/Table").Base & {
2483
1268
  nullable: true;
2484
1269
  } & {
2485
1270
  type: "character" | "character varying";
@@ -2489,18 +1274,7 @@ declare const createQueryResult: <Columns extends {
2489
1274
  } & {
2490
1275
  default: true;
2491
1276
  value: string;
2492
- }) | ({
2493
- type: PostgresType;
2494
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2495
- nullable: boolean;
2496
- title?: string;
2497
- reference?: {
2498
- table: Table;
2499
- onUpdate?: import("./types/table").ReferenceActions;
2500
- onDelete?: import("./types/table").ReferenceActions;
2501
- column: string;
2502
- };
2503
- } & {
1277
+ }) | (import("./types/Table").Base & {
2504
1278
  nullable: true;
2505
1279
  } & {
2506
1280
  type: "character" | "character varying";
@@ -2511,36 +1285,14 @@ declare const createQueryResult: <Columns extends {
2511
1285
  default: "value";
2512
1286
  type: "character" | "character varying" | "text" | "uuid";
2513
1287
  value: string;
2514
- }) | ({
2515
- type: PostgresType;
2516
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2517
- nullable: boolean;
2518
- title?: string;
2519
- reference?: {
2520
- table: Table;
2521
- onUpdate?: import("./types/table").ReferenceActions;
2522
- onDelete?: import("./types/table").ReferenceActions;
2523
- column: string;
2524
- };
2525
- } & {
1288
+ }) | (import("./types/Table").Base & {
2526
1289
  nullable: true;
2527
1290
  } & {
2528
1291
  type: "timestamp without time zone" | "timestamp with time zone";
2529
1292
  length?: number;
2530
1293
  } & {
2531
1294
  default: false;
2532
- }) | ({
2533
- type: PostgresType;
2534
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2535
- nullable: boolean;
2536
- title?: string;
2537
- reference?: {
2538
- table: Table;
2539
- onUpdate?: import("./types/table").ReferenceActions;
2540
- onDelete?: import("./types/table").ReferenceActions;
2541
- column: string;
2542
- };
2543
- } & {
1295
+ }) | (import("./types/Table").Base & {
2544
1296
  nullable: true;
2545
1297
  } & {
2546
1298
  type: "timestamp without time zone" | "timestamp with time zone";
@@ -2548,18 +1300,7 @@ declare const createQueryResult: <Columns extends {
2548
1300
  } & {
2549
1301
  default: true;
2550
1302
  value: string;
2551
- }) | ({
2552
- type: PostgresType;
2553
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2554
- nullable: boolean;
2555
- title?: string;
2556
- reference?: {
2557
- table: Table;
2558
- onUpdate?: import("./types/table").ReferenceActions;
2559
- onDelete?: import("./types/table").ReferenceActions;
2560
- column: string;
2561
- };
2562
- } & {
1303
+ }) | (import("./types/Table").Base & {
2563
1304
  nullable: true;
2564
1305
  } & {
2565
1306
  type: "timestamp without time zone" | "timestamp with time zone";
@@ -2567,18 +1308,7 @@ declare const createQueryResult: <Columns extends {
2567
1308
  } & {
2568
1309
  default: "created-at" | "updated-at";
2569
1310
  type: "timestamp without time zone" | "timestamp with time zone";
2570
- }) | ({
2571
- type: PostgresType;
2572
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2573
- nullable: boolean;
2574
- title?: string;
2575
- reference?: {
2576
- table: Table;
2577
- onUpdate?: import("./types/table").ReferenceActions;
2578
- onDelete?: import("./types/table").ReferenceActions;
2579
- column: string;
2580
- };
2581
- } & {
1311
+ }) | (import("./types/Table").Base & {
2582
1312
  nullable: true;
2583
1313
  } & {
2584
1314
  type: "timestamp without time zone" | "timestamp with time zone";
@@ -2588,38 +1318,16 @@ declare const createQueryResult: <Columns extends {
2588
1318
  type: "date" | "timestamp without time zone" | "timestamp with time zone";
2589
1319
  value: Date;
2590
1320
  });
2591
- }, R extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | (keyof Columns & string))[]>(getColumnType: (column: keyof Columns & string) => [type: PostgresType, nullable: boolean], createQuery: (params: Param[]) => Result<QueryData, string>, returning: R) => Query<Columns, R>;
1321
+ }, R extends readonly (CustomColumn<Expression, string> | (keyof Columns & string))[], CTypeMap extends CustomTypeMap<Columns>>(getColumnType: (column: keyof Columns & string) => [type: PostgresType, nullable: boolean], createQuery: (params: Param[]) => Result<QueryData, string>, returning: R) => Query<Columns, R, CTypeMap>;
2592
1322
  declare const resolveResult: <Columns extends {
2593
- [key: string]: ({
2594
- type: PostgresType;
2595
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2596
- nullable: boolean;
2597
- title?: string;
2598
- reference?: {
2599
- table: Table;
2600
- onUpdate?: import("./types/table").ReferenceActions;
2601
- onDelete?: import("./types/table").ReferenceActions;
2602
- column: string;
2603
- };
2604
- } & {
1323
+ [key: string]: (import("./types/Table").Base & {
2605
1324
  primary?: true;
2606
1325
  nullable: false;
2607
1326
  } & {
2608
1327
  type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
2609
1328
  } & {
2610
1329
  default: false;
2611
- }) | ({
2612
- type: PostgresType;
2613
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2614
- nullable: boolean;
2615
- title?: string;
2616
- reference?: {
2617
- table: Table;
2618
- onUpdate?: import("./types/table").ReferenceActions;
2619
- onDelete?: import("./types/table").ReferenceActions;
2620
- column: string;
2621
- };
2622
- } & {
1330
+ }) | (import("./types/Table").Base & {
2623
1331
  primary?: true;
2624
1332
  nullable: false;
2625
1333
  } & {
@@ -2627,18 +1335,7 @@ declare const resolveResult: <Columns extends {
2627
1335
  } & {
2628
1336
  default: true;
2629
1337
  value: string;
2630
- }) | ({
2631
- type: PostgresType;
2632
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2633
- nullable: boolean;
2634
- title?: string;
2635
- reference?: {
2636
- table: Table;
2637
- onUpdate?: import("./types/table").ReferenceActions;
2638
- onDelete?: import("./types/table").ReferenceActions;
2639
- column: string;
2640
- };
2641
- } & {
1338
+ }) | (import("./types/Table").Base & {
2642
1339
  primary?: true;
2643
1340
  nullable: false;
2644
1341
  } & {
@@ -2647,18 +1344,7 @@ declare const resolveResult: <Columns extends {
2647
1344
  default: "value";
2648
1345
  type: "boolean";
2649
1346
  value: boolean;
2650
- }) | ({
2651
- type: PostgresType;
2652
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2653
- nullable: boolean;
2654
- title?: string;
2655
- reference?: {
2656
- table: Table;
2657
- onUpdate?: import("./types/table").ReferenceActions;
2658
- onDelete?: import("./types/table").ReferenceActions;
2659
- column: string;
2660
- };
2661
- } & {
1347
+ }) | (import("./types/Table").Base & {
2662
1348
  primary?: true;
2663
1349
  nullable: false;
2664
1350
  } & {
@@ -2667,18 +1353,7 @@ declare const resolveResult: <Columns extends {
2667
1353
  default: "value";
2668
1354
  type: "character" | "character varying" | "text" | "uuid";
2669
1355
  value: string;
2670
- }) | ({
2671
- type: PostgresType;
2672
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2673
- nullable: boolean;
2674
- title?: string;
2675
- reference?: {
2676
- table: Table;
2677
- onUpdate?: import("./types/table").ReferenceActions;
2678
- onDelete?: import("./types/table").ReferenceActions;
2679
- column: string;
2680
- };
2681
- } & {
1356
+ }) | (import("./types/Table").Base & {
2682
1357
  primary?: true;
2683
1358
  nullable: false;
2684
1359
  } & {
@@ -2687,18 +1362,7 @@ declare const resolveResult: <Columns extends {
2687
1362
  default: "value";
2688
1363
  type: "date" | "timestamp without time zone" | "timestamp with time zone";
2689
1364
  value: Date;
2690
- }) | ({
2691
- type: PostgresType;
2692
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2693
- nullable: boolean;
2694
- title?: string;
2695
- reference?: {
2696
- table: Table;
2697
- onUpdate?: import("./types/table").ReferenceActions;
2698
- onDelete?: import("./types/table").ReferenceActions;
2699
- column: string;
2700
- };
2701
- } & {
1365
+ }) | (import("./types/Table").Base & {
2702
1366
  primary?: true;
2703
1367
  nullable: false;
2704
1368
  } & {
@@ -2706,19 +1370,8 @@ declare const resolveResult: <Columns extends {
2706
1370
  } & {
2707
1371
  default: "value";
2708
1372
  type: "json" | "jsonb";
2709
- value: import("./types/json").JSON;
2710
- }) | ({
2711
- type: PostgresType;
2712
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2713
- nullable: boolean;
2714
- title?: string;
2715
- reference?: {
2716
- table: Table;
2717
- onUpdate?: import("./types/table").ReferenceActions;
2718
- onDelete?: import("./types/table").ReferenceActions;
2719
- column: string;
2720
- };
2721
- } & {
1373
+ value: import("./types/Json").Json;
1374
+ }) | (import("./types/Table").Base & {
2722
1375
  primary?: true;
2723
1376
  nullable: false;
2724
1377
  } & {
@@ -2727,18 +1380,7 @@ declare const resolveResult: <Columns extends {
2727
1380
  max?: number;
2728
1381
  } & {
2729
1382
  default: false;
2730
- }) | ({
2731
- type: PostgresType;
2732
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2733
- nullable: boolean;
2734
- title?: string;
2735
- reference?: {
2736
- table: Table;
2737
- onUpdate?: import("./types/table").ReferenceActions;
2738
- onDelete?: import("./types/table").ReferenceActions;
2739
- column: string;
2740
- };
2741
- } & {
1383
+ }) | (import("./types/Table").Base & {
2742
1384
  primary?: true;
2743
1385
  nullable: false;
2744
1386
  } & {
@@ -2748,18 +1390,7 @@ declare const resolveResult: <Columns extends {
2748
1390
  } & {
2749
1391
  default: true;
2750
1392
  value: string;
2751
- }) | ({
2752
- type: PostgresType;
2753
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2754
- nullable: boolean;
2755
- title?: string;
2756
- reference?: {
2757
- table: Table;
2758
- onUpdate?: import("./types/table").ReferenceActions;
2759
- onDelete?: import("./types/table").ReferenceActions;
2760
- column: string;
2761
- };
2762
- } & {
1393
+ }) | (import("./types/Table").Base & {
2763
1394
  primary?: true;
2764
1395
  nullable: false;
2765
1396
  } & {
@@ -2770,18 +1401,7 @@ declare const resolveResult: <Columns extends {
2770
1401
  default: "auto-increment";
2771
1402
  type: "bigint" | "smallint" | "integer";
2772
1403
  seqTitle?: string;
2773
- }) | ({
2774
- type: PostgresType;
2775
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2776
- nullable: boolean;
2777
- title?: string;
2778
- reference?: {
2779
- table: Table;
2780
- onUpdate?: import("./types/table").ReferenceActions;
2781
- onDelete?: import("./types/table").ReferenceActions;
2782
- column: string;
2783
- };
2784
- } & {
1404
+ }) | (import("./types/Table").Base & {
2785
1405
  primary?: true;
2786
1406
  nullable: false;
2787
1407
  } & {
@@ -2792,18 +1412,7 @@ declare const resolveResult: <Columns extends {
2792
1412
  default: "value";
2793
1413
  type: "smallint" | "integer" | "real" | "double precision";
2794
1414
  value: number;
2795
- }) | ({
2796
- type: PostgresType;
2797
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2798
- nullable: boolean;
2799
- title?: string;
2800
- reference?: {
2801
- table: Table;
2802
- onUpdate?: import("./types/table").ReferenceActions;
2803
- onDelete?: import("./types/table").ReferenceActions;
2804
- column: string;
2805
- };
2806
- } & {
1415
+ }) | (import("./types/Table").Base & {
2807
1416
  primary?: true;
2808
1417
  nullable: false;
2809
1418
  } & {
@@ -2812,18 +1421,7 @@ declare const resolveResult: <Columns extends {
2812
1421
  max?: bigint;
2813
1422
  } & {
2814
1423
  default: false;
2815
- }) | ({
2816
- type: PostgresType;
2817
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2818
- nullable: boolean;
2819
- title?: string;
2820
- reference?: {
2821
- table: Table;
2822
- onUpdate?: import("./types/table").ReferenceActions;
2823
- onDelete?: import("./types/table").ReferenceActions;
2824
- column: string;
2825
- };
2826
- } & {
1424
+ }) | (import("./types/Table").Base & {
2827
1425
  primary?: true;
2828
1426
  nullable: false;
2829
1427
  } & {
@@ -2833,18 +1431,7 @@ declare const resolveResult: <Columns extends {
2833
1431
  } & {
2834
1432
  default: true;
2835
1433
  value: string;
2836
- }) | ({
2837
- type: PostgresType;
2838
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2839
- nullable: boolean;
2840
- title?: string;
2841
- reference?: {
2842
- table: Table;
2843
- onUpdate?: import("./types/table").ReferenceActions;
2844
- onDelete?: import("./types/table").ReferenceActions;
2845
- column: string;
2846
- };
2847
- } & {
1434
+ }) | (import("./types/Table").Base & {
2848
1435
  primary?: true;
2849
1436
  nullable: false;
2850
1437
  } & {
@@ -2855,18 +1442,7 @@ declare const resolveResult: <Columns extends {
2855
1442
  default: "auto-increment";
2856
1443
  type: "bigint" | "smallint" | "integer";
2857
1444
  seqTitle?: string;
2858
- }) | ({
2859
- type: PostgresType;
2860
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2861
- nullable: boolean;
2862
- title?: string;
2863
- reference?: {
2864
- table: Table;
2865
- onUpdate?: import("./types/table").ReferenceActions;
2866
- onDelete?: import("./types/table").ReferenceActions;
2867
- column: string;
2868
- };
2869
- } & {
1445
+ }) | (import("./types/Table").Base & {
2870
1446
  primary?: true;
2871
1447
  nullable: false;
2872
1448
  } & {
@@ -2877,18 +1453,7 @@ declare const resolveResult: <Columns extends {
2877
1453
  default: "value";
2878
1454
  type: "bigint";
2879
1455
  value: bigint;
2880
- }) | ({
2881
- type: PostgresType;
2882
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2883
- nullable: boolean;
2884
- title?: string;
2885
- reference?: {
2886
- table: Table;
2887
- onUpdate?: import("./types/table").ReferenceActions;
2888
- onDelete?: import("./types/table").ReferenceActions;
2889
- column: string;
2890
- };
2891
- } & {
1456
+ }) | (import("./types/Table").Base & {
2892
1457
  primary?: true;
2893
1458
  nullable: false;
2894
1459
  } & {
@@ -2899,18 +1464,7 @@ declare const resolveResult: <Columns extends {
2899
1464
  max?: Decimal;
2900
1465
  } & {
2901
1466
  default: false;
2902
- }) | ({
2903
- type: PostgresType;
2904
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2905
- nullable: boolean;
2906
- title?: string;
2907
- reference?: {
2908
- table: Table;
2909
- onUpdate?: import("./types/table").ReferenceActions;
2910
- onDelete?: import("./types/table").ReferenceActions;
2911
- column: string;
2912
- };
2913
- } & {
1467
+ }) | (import("./types/Table").Base & {
2914
1468
  primary?: true;
2915
1469
  nullable: false;
2916
1470
  } & {
@@ -2922,18 +1476,7 @@ declare const resolveResult: <Columns extends {
2922
1476
  } & {
2923
1477
  default: true;
2924
1478
  value: string;
2925
- }) | ({
2926
- type: PostgresType;
2927
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2928
- nullable: boolean;
2929
- title?: string;
2930
- reference?: {
2931
- table: Table;
2932
- onUpdate?: import("./types/table").ReferenceActions;
2933
- onDelete?: import("./types/table").ReferenceActions;
2934
- column: string;
2935
- };
2936
- } & {
1479
+ }) | (import("./types/Table").Base & {
2937
1480
  primary?: true;
2938
1481
  nullable: false;
2939
1482
  } & {
@@ -2946,18 +1489,7 @@ declare const resolveResult: <Columns extends {
2946
1489
  default: "value";
2947
1490
  type: "numeric";
2948
1491
  value: Decimal;
2949
- }) | ({
2950
- type: PostgresType;
2951
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2952
- nullable: boolean;
2953
- title?: string;
2954
- reference?: {
2955
- table: Table;
2956
- onUpdate?: import("./types/table").ReferenceActions;
2957
- onDelete?: import("./types/table").ReferenceActions;
2958
- column: string;
2959
- };
2960
- } & {
1492
+ }) | (import("./types/Table").Base & {
2961
1493
  primary?: true;
2962
1494
  nullable: false;
2963
1495
  } & {
@@ -2967,18 +1499,7 @@ declare const resolveResult: <Columns extends {
2967
1499
  regex?: RegExp;
2968
1500
  } & {
2969
1501
  default: false;
2970
- }) | ({
2971
- type: PostgresType;
2972
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2973
- nullable: boolean;
2974
- title?: string;
2975
- reference?: {
2976
- table: Table;
2977
- onUpdate?: import("./types/table").ReferenceActions;
2978
- onDelete?: import("./types/table").ReferenceActions;
2979
- column: string;
2980
- };
2981
- } & {
1502
+ }) | (import("./types/Table").Base & {
2982
1503
  primary?: true;
2983
1504
  nullable: false;
2984
1505
  } & {
@@ -2989,18 +1510,7 @@ declare const resolveResult: <Columns extends {
2989
1510
  } & {
2990
1511
  default: true;
2991
1512
  value: string;
2992
- }) | ({
2993
- type: PostgresType;
2994
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
2995
- nullable: boolean;
2996
- title?: string;
2997
- reference?: {
2998
- table: Table;
2999
- onUpdate?: import("./types/table").ReferenceActions;
3000
- onDelete?: import("./types/table").ReferenceActions;
3001
- column: string;
3002
- };
3003
- } & {
1513
+ }) | (import("./types/Table").Base & {
3004
1514
  primary?: true;
3005
1515
  nullable: false;
3006
1516
  } & {
@@ -3012,18 +1522,7 @@ declare const resolveResult: <Columns extends {
3012
1522
  default: "value";
3013
1523
  type: "character" | "character varying" | "text" | "uuid";
3014
1524
  value: string;
3015
- }) | ({
3016
- type: PostgresType;
3017
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3018
- nullable: boolean;
3019
- title?: string;
3020
- reference?: {
3021
- table: Table;
3022
- onUpdate?: import("./types/table").ReferenceActions;
3023
- onDelete?: import("./types/table").ReferenceActions;
3024
- column: string;
3025
- };
3026
- } & {
1525
+ }) | (import("./types/Table").Base & {
3027
1526
  primary?: true;
3028
1527
  nullable: false;
3029
1528
  } & {
@@ -3031,18 +1530,7 @@ declare const resolveResult: <Columns extends {
3031
1530
  length?: number;
3032
1531
  } & {
3033
1532
  default: false;
3034
- }) | ({
3035
- type: PostgresType;
3036
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3037
- nullable: boolean;
3038
- title?: string;
3039
- reference?: {
3040
- table: Table;
3041
- onUpdate?: import("./types/table").ReferenceActions;
3042
- onDelete?: import("./types/table").ReferenceActions;
3043
- column: string;
3044
- };
3045
- } & {
1533
+ }) | (import("./types/Table").Base & {
3046
1534
  primary?: true;
3047
1535
  nullable: false;
3048
1536
  } & {
@@ -3051,18 +1539,7 @@ declare const resolveResult: <Columns extends {
3051
1539
  } & {
3052
1540
  default: true;
3053
1541
  value: string;
3054
- }) | ({
3055
- type: PostgresType;
3056
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3057
- nullable: boolean;
3058
- title?: string;
3059
- reference?: {
3060
- table: Table;
3061
- onUpdate?: import("./types/table").ReferenceActions;
3062
- onDelete?: import("./types/table").ReferenceActions;
3063
- column: string;
3064
- };
3065
- } & {
1542
+ }) | (import("./types/Table").Base & {
3066
1543
  primary?: true;
3067
1544
  nullable: false;
3068
1545
  } & {
@@ -3071,18 +1548,7 @@ declare const resolveResult: <Columns extends {
3071
1548
  } & {
3072
1549
  default: "created-at" | "updated-at";
3073
1550
  type: "timestamp without time zone" | "timestamp with time zone";
3074
- }) | ({
3075
- type: PostgresType;
3076
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3077
- nullable: boolean;
3078
- title?: string;
3079
- reference?: {
3080
- table: Table;
3081
- onUpdate?: import("./types/table").ReferenceActions;
3082
- onDelete?: import("./types/table").ReferenceActions;
3083
- column: string;
3084
- };
3085
- } & {
1551
+ }) | (import("./types/Table").Base & {
3086
1552
  primary?: true;
3087
1553
  nullable: false;
3088
1554
  } & {
@@ -3092,53 +1558,20 @@ declare const resolveResult: <Columns extends {
3092
1558
  default: "value";
3093
1559
  type: "date" | "timestamp without time zone" | "timestamp with time zone";
3094
1560
  value: Date;
3095
- }) | ({
3096
- type: PostgresType;
3097
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3098
- nullable: boolean;
3099
- title?: string;
3100
- reference?: {
3101
- table: Table;
3102
- onUpdate?: import("./types/table").ReferenceActions;
3103
- onDelete?: import("./types/table").ReferenceActions;
3104
- column: string;
3105
- };
3106
- } & {
1561
+ }) | (import("./types/Table").Base & {
3107
1562
  nullable: true;
3108
1563
  } & {
3109
1564
  type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
3110
1565
  } & {
3111
1566
  default: false;
3112
- }) | ({
3113
- type: PostgresType;
3114
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3115
- nullable: boolean;
3116
- title?: string;
3117
- reference?: {
3118
- table: Table;
3119
- onUpdate?: import("./types/table").ReferenceActions;
3120
- onDelete?: import("./types/table").ReferenceActions;
3121
- column: string;
3122
- };
3123
- } & {
1567
+ }) | (import("./types/Table").Base & {
3124
1568
  nullable: true;
3125
1569
  } & {
3126
1570
  type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
3127
1571
  } & {
3128
1572
  default: true;
3129
1573
  value: string;
3130
- }) | ({
3131
- type: PostgresType;
3132
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3133
- nullable: boolean;
3134
- title?: string;
3135
- reference?: {
3136
- table: Table;
3137
- onUpdate?: import("./types/table").ReferenceActions;
3138
- onDelete?: import("./types/table").ReferenceActions;
3139
- column: string;
3140
- };
3141
- } & {
1574
+ }) | (import("./types/Table").Base & {
3142
1575
  nullable: true;
3143
1576
  } & {
3144
1577
  type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
@@ -3146,18 +1579,7 @@ declare const resolveResult: <Columns extends {
3146
1579
  default: "value";
3147
1580
  type: "boolean";
3148
1581
  value: boolean;
3149
- }) | ({
3150
- type: PostgresType;
3151
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3152
- nullable: boolean;
3153
- title?: string;
3154
- reference?: {
3155
- table: Table;
3156
- onUpdate?: import("./types/table").ReferenceActions;
3157
- onDelete?: import("./types/table").ReferenceActions;
3158
- column: string;
3159
- };
3160
- } & {
1582
+ }) | (import("./types/Table").Base & {
3161
1583
  nullable: true;
3162
1584
  } & {
3163
1585
  type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
@@ -3165,18 +1587,7 @@ declare const resolveResult: <Columns extends {
3165
1587
  default: "value";
3166
1588
  type: "character" | "character varying" | "text" | "uuid";
3167
1589
  value: string;
3168
- }) | ({
3169
- type: PostgresType;
3170
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3171
- nullable: boolean;
3172
- title?: string;
3173
- reference?: {
3174
- table: Table;
3175
- onUpdate?: import("./types/table").ReferenceActions;
3176
- onDelete?: import("./types/table").ReferenceActions;
3177
- column: string;
3178
- };
3179
- } & {
1590
+ }) | (import("./types/Table").Base & {
3180
1591
  nullable: true;
3181
1592
  } & {
3182
1593
  type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
@@ -3184,37 +1595,15 @@ declare const resolveResult: <Columns extends {
3184
1595
  default: "value";
3185
1596
  type: "date" | "timestamp without time zone" | "timestamp with time zone";
3186
1597
  value: Date;
3187
- }) | ({
3188
- type: PostgresType;
3189
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3190
- nullable: boolean;
3191
- title?: string;
3192
- reference?: {
3193
- table: Table;
3194
- onUpdate?: import("./types/table").ReferenceActions;
3195
- onDelete?: import("./types/table").ReferenceActions;
3196
- column: string;
3197
- };
3198
- } & {
1598
+ }) | (import("./types/Table").Base & {
3199
1599
  nullable: true;
3200
1600
  } & {
3201
1601
  type: "boolean" | "text" | "uuid" | "date" | "json" | "jsonb";
3202
1602
  } & {
3203
1603
  default: "value";
3204
1604
  type: "json" | "jsonb";
3205
- value: import("./types/json").JSON;
3206
- }) | ({
3207
- type: PostgresType;
3208
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3209
- nullable: boolean;
3210
- title?: string;
3211
- reference?: {
3212
- table: Table;
3213
- onUpdate?: import("./types/table").ReferenceActions;
3214
- onDelete?: import("./types/table").ReferenceActions;
3215
- column: string;
3216
- };
3217
- } & {
1605
+ value: import("./types/Json").Json;
1606
+ }) | (import("./types/Table").Base & {
3218
1607
  nullable: true;
3219
1608
  } & {
3220
1609
  type: "smallint" | "integer" | "real" | "double precision";
@@ -3222,18 +1611,7 @@ declare const resolveResult: <Columns extends {
3222
1611
  max?: number;
3223
1612
  } & {
3224
1613
  default: false;
3225
- }) | ({
3226
- type: PostgresType;
3227
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3228
- nullable: boolean;
3229
- title?: string;
3230
- reference?: {
3231
- table: Table;
3232
- onUpdate?: import("./types/table").ReferenceActions;
3233
- onDelete?: import("./types/table").ReferenceActions;
3234
- column: string;
3235
- };
3236
- } & {
1614
+ }) | (import("./types/Table").Base & {
3237
1615
  nullable: true;
3238
1616
  } & {
3239
1617
  type: "smallint" | "integer" | "real" | "double precision";
@@ -3242,18 +1620,7 @@ declare const resolveResult: <Columns extends {
3242
1620
  } & {
3243
1621
  default: true;
3244
1622
  value: string;
3245
- }) | ({
3246
- type: PostgresType;
3247
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3248
- nullable: boolean;
3249
- title?: string;
3250
- reference?: {
3251
- table: Table;
3252
- onUpdate?: import("./types/table").ReferenceActions;
3253
- onDelete?: import("./types/table").ReferenceActions;
3254
- column: string;
3255
- };
3256
- } & {
1623
+ }) | (import("./types/Table").Base & {
3257
1624
  nullable: true;
3258
1625
  } & {
3259
1626
  type: "smallint" | "integer" | "real" | "double precision";
@@ -3263,18 +1630,7 @@ declare const resolveResult: <Columns extends {
3263
1630
  default: "auto-increment";
3264
1631
  type: "bigint" | "smallint" | "integer";
3265
1632
  seqTitle?: string;
3266
- }) | ({
3267
- type: PostgresType;
3268
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3269
- nullable: boolean;
3270
- title?: string;
3271
- reference?: {
3272
- table: Table;
3273
- onUpdate?: import("./types/table").ReferenceActions;
3274
- onDelete?: import("./types/table").ReferenceActions;
3275
- column: string;
3276
- };
3277
- } & {
1633
+ }) | (import("./types/Table").Base & {
3278
1634
  nullable: true;
3279
1635
  } & {
3280
1636
  type: "smallint" | "integer" | "real" | "double precision";
@@ -3284,18 +1640,7 @@ declare const resolveResult: <Columns extends {
3284
1640
  default: "value";
3285
1641
  type: "smallint" | "integer" | "real" | "double precision";
3286
1642
  value: number;
3287
- }) | ({
3288
- type: PostgresType;
3289
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3290
- nullable: boolean;
3291
- title?: string;
3292
- reference?: {
3293
- table: Table;
3294
- onUpdate?: import("./types/table").ReferenceActions;
3295
- onDelete?: import("./types/table").ReferenceActions;
3296
- column: string;
3297
- };
3298
- } & {
1643
+ }) | (import("./types/Table").Base & {
3299
1644
  nullable: true;
3300
1645
  } & {
3301
1646
  type: "bigint";
@@ -3303,18 +1648,7 @@ declare const resolveResult: <Columns extends {
3303
1648
  max?: bigint;
3304
1649
  } & {
3305
1650
  default: false;
3306
- }) | ({
3307
- type: PostgresType;
3308
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3309
- nullable: boolean;
3310
- title?: string;
3311
- reference?: {
3312
- table: Table;
3313
- onUpdate?: import("./types/table").ReferenceActions;
3314
- onDelete?: import("./types/table").ReferenceActions;
3315
- column: string;
3316
- };
3317
- } & {
1651
+ }) | (import("./types/Table").Base & {
3318
1652
  nullable: true;
3319
1653
  } & {
3320
1654
  type: "bigint";
@@ -3323,18 +1657,7 @@ declare const resolveResult: <Columns extends {
3323
1657
  } & {
3324
1658
  default: true;
3325
1659
  value: string;
3326
- }) | ({
3327
- type: PostgresType;
3328
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3329
- nullable: boolean;
3330
- title?: string;
3331
- reference?: {
3332
- table: Table;
3333
- onUpdate?: import("./types/table").ReferenceActions;
3334
- onDelete?: import("./types/table").ReferenceActions;
3335
- column: string;
3336
- };
3337
- } & {
1660
+ }) | (import("./types/Table").Base & {
3338
1661
  nullable: true;
3339
1662
  } & {
3340
1663
  type: "bigint";
@@ -3344,18 +1667,7 @@ declare const resolveResult: <Columns extends {
3344
1667
  default: "auto-increment";
3345
1668
  type: "bigint" | "smallint" | "integer";
3346
1669
  seqTitle?: string;
3347
- }) | ({
3348
- type: PostgresType;
3349
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3350
- nullable: boolean;
3351
- title?: string;
3352
- reference?: {
3353
- table: Table;
3354
- onUpdate?: import("./types/table").ReferenceActions;
3355
- onDelete?: import("./types/table").ReferenceActions;
3356
- column: string;
3357
- };
3358
- } & {
1670
+ }) | (import("./types/Table").Base & {
3359
1671
  nullable: true;
3360
1672
  } & {
3361
1673
  type: "bigint";
@@ -3365,18 +1677,7 @@ declare const resolveResult: <Columns extends {
3365
1677
  default: "value";
3366
1678
  type: "bigint";
3367
1679
  value: bigint;
3368
- }) | ({
3369
- type: PostgresType;
3370
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3371
- nullable: boolean;
3372
- title?: string;
3373
- reference?: {
3374
- table: Table;
3375
- onUpdate?: import("./types/table").ReferenceActions;
3376
- onDelete?: import("./types/table").ReferenceActions;
3377
- column: string;
3378
- };
3379
- } & {
1680
+ }) | (import("./types/Table").Base & {
3380
1681
  nullable: true;
3381
1682
  } & {
3382
1683
  type: "numeric";
@@ -3386,18 +1687,7 @@ declare const resolveResult: <Columns extends {
3386
1687
  max?: Decimal;
3387
1688
  } & {
3388
1689
  default: false;
3389
- }) | ({
3390
- type: PostgresType;
3391
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3392
- nullable: boolean;
3393
- title?: string;
3394
- reference?: {
3395
- table: Table;
3396
- onUpdate?: import("./types/table").ReferenceActions;
3397
- onDelete?: import("./types/table").ReferenceActions;
3398
- column: string;
3399
- };
3400
- } & {
1690
+ }) | (import("./types/Table").Base & {
3401
1691
  nullable: true;
3402
1692
  } & {
3403
1693
  type: "numeric";
@@ -3408,18 +1698,7 @@ declare const resolveResult: <Columns extends {
3408
1698
  } & {
3409
1699
  default: true;
3410
1700
  value: string;
3411
- }) | ({
3412
- type: PostgresType;
3413
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3414
- nullable: boolean;
3415
- title?: string;
3416
- reference?: {
3417
- table: Table;
3418
- onUpdate?: import("./types/table").ReferenceActions;
3419
- onDelete?: import("./types/table").ReferenceActions;
3420
- column: string;
3421
- };
3422
- } & {
1701
+ }) | (import("./types/Table").Base & {
3423
1702
  nullable: true;
3424
1703
  } & {
3425
1704
  type: "numeric";
@@ -3431,18 +1710,7 @@ declare const resolveResult: <Columns extends {
3431
1710
  default: "value";
3432
1711
  type: "numeric";
3433
1712
  value: Decimal;
3434
- }) | ({
3435
- type: PostgresType;
3436
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3437
- nullable: boolean;
3438
- title?: string;
3439
- reference?: {
3440
- table: Table;
3441
- onUpdate?: import("./types/table").ReferenceActions;
3442
- onDelete?: import("./types/table").ReferenceActions;
3443
- column: string;
3444
- };
3445
- } & {
1713
+ }) | (import("./types/Table").Base & {
3446
1714
  nullable: true;
3447
1715
  } & {
3448
1716
  type: "character" | "character varying";
@@ -3451,18 +1719,7 @@ declare const resolveResult: <Columns extends {
3451
1719
  regex?: RegExp;
3452
1720
  } & {
3453
1721
  default: false;
3454
- }) | ({
3455
- type: PostgresType;
3456
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3457
- nullable: boolean;
3458
- title?: string;
3459
- reference?: {
3460
- table: Table;
3461
- onUpdate?: import("./types/table").ReferenceActions;
3462
- onDelete?: import("./types/table").ReferenceActions;
3463
- column: string;
3464
- };
3465
- } & {
1722
+ }) | (import("./types/Table").Base & {
3466
1723
  nullable: true;
3467
1724
  } & {
3468
1725
  type: "character" | "character varying";
@@ -3472,18 +1729,7 @@ declare const resolveResult: <Columns extends {
3472
1729
  } & {
3473
1730
  default: true;
3474
1731
  value: string;
3475
- }) | ({
3476
- type: PostgresType;
3477
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3478
- nullable: boolean;
3479
- title?: string;
3480
- reference?: {
3481
- table: Table;
3482
- onUpdate?: import("./types/table").ReferenceActions;
3483
- onDelete?: import("./types/table").ReferenceActions;
3484
- column: string;
3485
- };
3486
- } & {
1732
+ }) | (import("./types/Table").Base & {
3487
1733
  nullable: true;
3488
1734
  } & {
3489
1735
  type: "character" | "character varying";
@@ -3494,36 +1740,14 @@ declare const resolveResult: <Columns extends {
3494
1740
  default: "value";
3495
1741
  type: "character" | "character varying" | "text" | "uuid";
3496
1742
  value: string;
3497
- }) | ({
3498
- type: PostgresType;
3499
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3500
- nullable: boolean;
3501
- title?: string;
3502
- reference?: {
3503
- table: Table;
3504
- onUpdate?: import("./types/table").ReferenceActions;
3505
- onDelete?: import("./types/table").ReferenceActions;
3506
- column: string;
3507
- };
3508
- } & {
1743
+ }) | (import("./types/Table").Base & {
3509
1744
  nullable: true;
3510
1745
  } & {
3511
1746
  type: "timestamp without time zone" | "timestamp with time zone";
3512
1747
  length?: number;
3513
1748
  } & {
3514
1749
  default: false;
3515
- }) | ({
3516
- type: PostgresType;
3517
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3518
- nullable: boolean;
3519
- title?: string;
3520
- reference?: {
3521
- table: Table;
3522
- onUpdate?: import("./types/table").ReferenceActions;
3523
- onDelete?: import("./types/table").ReferenceActions;
3524
- column: string;
3525
- };
3526
- } & {
1750
+ }) | (import("./types/Table").Base & {
3527
1751
  nullable: true;
3528
1752
  } & {
3529
1753
  type: "timestamp without time zone" | "timestamp with time zone";
@@ -3531,18 +1755,7 @@ declare const resolveResult: <Columns extends {
3531
1755
  } & {
3532
1756
  default: true;
3533
1757
  value: string;
3534
- }) | ({
3535
- type: PostgresType;
3536
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3537
- nullable: boolean;
3538
- title?: string;
3539
- reference?: {
3540
- table: Table;
3541
- onUpdate?: import("./types/table").ReferenceActions;
3542
- onDelete?: import("./types/table").ReferenceActions;
3543
- column: string;
3544
- };
3545
- } & {
1758
+ }) | (import("./types/Table").Base & {
3546
1759
  nullable: true;
3547
1760
  } & {
3548
1761
  type: "timestamp without time zone" | "timestamp with time zone";
@@ -3550,18 +1763,7 @@ declare const resolveResult: <Columns extends {
3550
1763
  } & {
3551
1764
  default: "created-at" | "updated-at";
3552
1765
  type: "timestamp without time zone" | "timestamp with time zone";
3553
- }) | ({
3554
- type: PostgresType;
3555
- default: boolean | "value" | "auto-increment" | "created-at" | "updated-at";
3556
- nullable: boolean;
3557
- title?: string;
3558
- reference?: {
3559
- table: Table;
3560
- onUpdate?: import("./types/table").ReferenceActions;
3561
- onDelete?: import("./types/table").ReferenceActions;
3562
- column: string;
3563
- };
3564
- } & {
1766
+ }) | (import("./types/Table").Base & {
3565
1767
  nullable: true;
3566
1768
  } & {
3567
1769
  type: "timestamp without time zone" | "timestamp with time zone";
@@ -3571,16 +1773,18 @@ declare const resolveResult: <Columns extends {
3571
1773
  type: "date" | "timestamp without time zone" | "timestamp with time zone";
3572
1774
  value: Date;
3573
1775
  });
3574
- }, C extends readonly (CustomColumn<Expression<ExpressionTypes>, string> | (keyof Columns & string))[], M extends Mode>(getColumnType: (column: keyof Columns & string) => [type: PostgresType, nullable: boolean], columns: C, rows: any[], mode: M) => Result<QueryResult<Columns, C, M>, false>;
1776
+ }, C extends readonly (CustomColumn<Expression, string> | (keyof Columns & string))[], M extends Mode, CTypeMap extends CustomTypeMap<Columns>>(getColumnType: (column: keyof Columns & string) => [type: PostgresType, nullable: boolean], columns: C, rows: any[], mode: M) => Result<QueryResult<Columns, C, CTypeMap, M>, false>;
3575
1777
  declare const resolveReturning: <C extends string>(getColumnTypeTitleAlias: (column: C) => {
3576
1778
  type: PostgresType;
3577
1779
  title?: string | undefined;
3578
1780
  alias?: string | undefined;
3579
- }, columns: readonly (CustomColumn<Expression<ExpressionTypes>, string> | C)[], paramsStart: number, ignore: boolean) => Result<PartialQuery, string>;
3580
- declare const resolveExpression: (expression: Expression<ExpressionTypes>, paramsStart: number, ignore?: boolean) => Result<PartialQuery, string>;
1781
+ }, columns: readonly (CustomColumn<Expression, string> | C)[], paramsStart: number, ignore: boolean) => Result<QueryData, string>;
1782
+ declare const resolveExpression: (expression: Expression, paramsStart: number, ignore?: boolean) => Result<QueryData, string>;
3581
1783
  declare const getTableDataOfJoinSelectColumn: (tablesData: TableWithAlias[], column: string) => TableWithAlias;
3582
1784
  declare const resolveColumn: <T extends Table, C extends keyof T["columns"] & string>(table: T, column: C, full?: boolean, alias?: string) => string;
3583
- declare const partialQuery: (text?: string, params?: Param[]) => PartialQuery;
1785
+ declare const partialQuery: (sql?: string, params?: Param[]) => QueryData;
1786
+ declare const stringify: <T extends Expression>(v: T, inline?: boolean) => T extends number ? number : T extends bigint ? bigint : string;
1787
+ declare const cast: (v: unknown, [type, nullable]: [type: PostgresType, nullable: boolean]) => Expression;
3584
1788
  export { createEntity, createJoinSelectEntity };
3585
- export { ReservedExpressionKeys, createQueryResult, resolveResult, resolveReturning, resolveExpression, getTableDataOfJoinSelectColumn, resolveColumn, partialQuery };
1789
+ export { createQueryResult, resolveResult, resolveReturning, resolveExpression, getTableDataOfJoinSelectColumn, resolveColumn, partialQuery, stringify, cast };
3586
1790
  //# sourceMappingURL=entity.d.ts.map