@mikro-orm/knex 7.0.0-dev.1 → 7.0.0-dev.3

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 (79) hide show
  1. package/AbstractSqlConnection.d.ts +2 -2
  2. package/AbstractSqlConnection.js +22 -25
  3. package/AbstractSqlDriver.d.ts +9 -7
  4. package/AbstractSqlDriver.js +175 -180
  5. package/AbstractSqlPlatform.d.ts +4 -4
  6. package/AbstractSqlPlatform.js +17 -21
  7. package/PivotCollectionPersister.d.ts +1 -1
  8. package/PivotCollectionPersister.js +5 -8
  9. package/SqlEntityManager.d.ts +4 -3
  10. package/SqlEntityManager.js +2 -6
  11. package/SqlEntityRepository.d.ts +2 -2
  12. package/SqlEntityRepository.js +2 -6
  13. package/dialects/index.d.ts +4 -4
  14. package/dialects/index.js +4 -20
  15. package/dialects/mssql/MsSqlNativeQueryBuilder.d.ts +1 -1
  16. package/dialects/mssql/MsSqlNativeQueryBuilder.js +21 -25
  17. package/dialects/mssql/index.d.ts +1 -1
  18. package/dialects/mssql/index.js +1 -17
  19. package/dialects/mysql/MySqlExceptionConverter.js +16 -19
  20. package/dialects/mysql/MySqlNativeQueryBuilder.d.ts +1 -1
  21. package/dialects/mysql/MySqlNativeQueryBuilder.js +13 -17
  22. package/dialects/mysql/MySqlPlatform.d.ts +5 -5
  23. package/dialects/mysql/MySqlPlatform.js +16 -20
  24. package/dialects/mysql/MySqlSchemaHelper.d.ts +5 -5
  25. package/dialects/mysql/MySqlSchemaHelper.js +8 -12
  26. package/dialects/mysql/index.d.ts +4 -4
  27. package/dialects/mysql/index.js +4 -20
  28. package/dialects/postgresql/PostgreSqlNativeQueryBuilder.d.ts +1 -1
  29. package/dialects/postgresql/PostgreSqlNativeQueryBuilder.js +2 -6
  30. package/dialects/postgresql/index.d.ts +1 -1
  31. package/dialects/postgresql/index.js +1 -17
  32. package/dialects/sqlite/BaseSqliteConnection.d.ts +1 -1
  33. package/dialects/sqlite/BaseSqliteConnection.js +7 -11
  34. package/dialects/sqlite/BaseSqlitePlatform.d.ts +4 -4
  35. package/dialects/sqlite/BaseSqlitePlatform.js +11 -15
  36. package/dialects/sqlite/SqliteExceptionConverter.js +16 -19
  37. package/dialects/sqlite/SqliteNativeQueryBuilder.d.ts +1 -1
  38. package/dialects/sqlite/SqliteNativeQueryBuilder.js +2 -6
  39. package/dialects/sqlite/SqliteSchemaHelper.d.ts +5 -5
  40. package/dialects/sqlite/SqliteSchemaHelper.js +22 -26
  41. package/dialects/sqlite/index.d.ts +5 -5
  42. package/dialects/sqlite/index.js +5 -21
  43. package/index.d.ts +11 -11
  44. package/index.js +13 -34
  45. package/package.json +5 -14
  46. package/query/ArrayCriteriaNode.d.ts +2 -2
  47. package/query/ArrayCriteriaNode.js +2 -6
  48. package/query/CriteriaNode.d.ts +1 -1
  49. package/query/CriteriaNode.js +26 -30
  50. package/query/CriteriaNodeFactory.d.ts +1 -1
  51. package/query/CriteriaNodeFactory.js +17 -21
  52. package/query/NativeQueryBuilder.d.ts +2 -2
  53. package/query/NativeQueryBuilder.js +33 -37
  54. package/query/ObjectCriteriaNode.d.ts +2 -2
  55. package/query/ObjectCriteriaNode.js +37 -41
  56. package/query/QueryBuilder.d.ts +7 -14
  57. package/query/QueryBuilder.js +163 -187
  58. package/query/QueryBuilderHelper.d.ts +4 -4
  59. package/query/QueryBuilderHelper.js +84 -88
  60. package/query/ScalarCriteriaNode.d.ts +2 -2
  61. package/query/ScalarCriteriaNode.js +12 -16
  62. package/query/enums.js +4 -7
  63. package/query/index.d.ts +9 -9
  64. package/query/index.js +9 -25
  65. package/schema/DatabaseSchema.d.ts +3 -3
  66. package/schema/DatabaseSchema.js +7 -11
  67. package/schema/DatabaseTable.d.ts +3 -3
  68. package/schema/DatabaseTable.js +26 -30
  69. package/schema/SchemaComparator.d.ts +4 -4
  70. package/schema/SchemaComparator.js +15 -19
  71. package/schema/SchemaHelper.d.ts +5 -5
  72. package/schema/SchemaHelper.js +22 -26
  73. package/schema/SqlSchemaGenerator.d.ts +4 -4
  74. package/schema/SqlSchemaGenerator.js +20 -34
  75. package/schema/index.d.ts +5 -5
  76. package/schema/index.js +5 -21
  77. package/typings.d.ts +5 -4
  78. package/typings.js +1 -2
  79. package/index.mjs +0 -232
@@ -1,13 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ObjectCriteriaNode = void 0;
4
- const core_1 = require("@mikro-orm/core");
5
- const CriteriaNode_1 = require("./CriteriaNode");
6
- const enums_1 = require("./enums");
1
+ import { ALIAS_REPLACEMENT, QueryFlag, raw, RawQueryFragment, ReferenceKind, Utils, } from '@mikro-orm/core';
2
+ import { CriteriaNode } from './CriteriaNode.js';
3
+ import { JoinType, QueryType } from './enums.js';
7
4
  /**
8
5
  * @internal
9
6
  */
10
- class ObjectCriteriaNode extends CriteriaNode_1.CriteriaNode {
7
+ export class ObjectCriteriaNode extends CriteriaNode {
11
8
  process(qb, options) {
12
9
  const nestedAlias = qb.getAliasForJoinPath(this.getPath(), options);
13
10
  const ownerAlias = options?.alias || qb.alias;
@@ -18,7 +15,7 @@ class ObjectCriteriaNode extends CriteriaNode_1.CriteriaNode {
18
15
  }
19
16
  if (this.shouldAutoJoin(qb, nestedAlias)) {
20
17
  if (keys.some(k => ['$some', '$none', '$every'].includes(k))) {
21
- if (![core_1.ReferenceKind.MANY_TO_MANY, core_1.ReferenceKind.ONE_TO_MANY].includes(this.prop.kind)) {
18
+ if (![ReferenceKind.MANY_TO_MANY, ReferenceKind.ONE_TO_MANY].includes(this.prop.kind)) {
22
19
  // ignore collection operators when used on a non-relational property - this can happen when they get into
23
20
  // populateWhere via `infer` on m:n properties with select-in strategy
24
21
  if (this.parent?.parent) { // we validate only usage on top level
@@ -27,10 +24,10 @@ class ObjectCriteriaNode extends CriteriaNode_1.CriteriaNode {
27
24
  throw new Error(`Collection operators can be used only inside a collection property context, but it was used for ${this.getPath()}.`);
28
25
  }
29
26
  const $and = [];
30
- const knownKey = [core_1.ReferenceKind.SCALAR, core_1.ReferenceKind.MANY_TO_ONE, core_1.ReferenceKind.EMBEDDED].includes(this.prop.kind) || (this.prop.kind === core_1.ReferenceKind.ONE_TO_ONE && this.prop.owner);
27
+ const knownKey = [ReferenceKind.SCALAR, ReferenceKind.MANY_TO_ONE, ReferenceKind.EMBEDDED].includes(this.prop.kind) || (this.prop.kind === ReferenceKind.ONE_TO_ONE && this.prop.owner);
31
28
  const parentMeta = this.metadata.find(this.parent.entityName);
32
29
  const primaryKeys = parentMeta.primaryKeys.map(pk => {
33
- return [enums_1.QueryType.SELECT, enums_1.QueryType.COUNT].includes(qb.type) ? `${knownKey ? alias : ownerAlias}.${pk}` : pk;
30
+ return [QueryType.SELECT, QueryType.COUNT].includes(qb.type) ? `${knownKey ? alias : ownerAlias}.${pk}` : pk;
34
31
  });
35
32
  for (const key of keys) {
36
33
  if (!['$some', '$none', '$every'].includes(key)) {
@@ -50,7 +47,7 @@ class ObjectCriteriaNode extends CriteriaNode_1.CriteriaNode {
50
47
  }
51
48
  const op = key === '$some' ? '$in' : '$nin';
52
49
  $and.push({
53
- [core_1.Utils.getPrimaryKeyHash(primaryKeys)]: { [op]: sub.getNativeQuery().toRaw() },
50
+ [Utils.getPrimaryKeyHash(primaryKeys)]: { [op]: sub.getNativeQuery().toRaw() },
54
51
  });
55
52
  }
56
53
  if ($and.length === 1) {
@@ -63,8 +60,8 @@ class ObjectCriteriaNode extends CriteriaNode_1.CriteriaNode {
63
60
  return keys.reduce((o, field) => {
64
61
  const childNode = this.payload[field];
65
62
  const payload = childNode.process(qb, { ...options, alias: this.prop ? alias : ownerAlias });
66
- const operator = core_1.Utils.isOperator(field);
67
- const isRawField = core_1.RawQueryFragment.isKnownFragment(field);
63
+ const operator = Utils.isOperator(field);
64
+ const isRawField = RawQueryFragment.isKnownFragment(field);
68
65
  // we need to keep the prefixing for formulas otherwise we would lose aliasing context when nesting inside group operators
69
66
  const virtual = childNode.prop?.persist === false && !childNode.prop?.formula;
70
67
  // if key is missing, we are inside group operator and we need to prefix with alias
@@ -78,11 +75,11 @@ class ObjectCriteriaNode extends CriteriaNode_1.CriteriaNode {
78
75
  this.inlineCondition(childNode.renameFieldToPK(qb), o, payload);
79
76
  }
80
77
  else if (isRawField) {
81
- const rawField = core_1.RawQueryFragment.getKnownFragment(field);
82
- o[(0, core_1.raw)(rawField.sql.replaceAll(core_1.ALIAS_REPLACEMENT, alias), rawField.params)] = payload;
78
+ const rawField = RawQueryFragment.getKnownFragment(field);
79
+ o[raw(rawField.sql.replaceAll(ALIAS_REPLACEMENT, alias), rawField.params)] = payload;
83
80
  }
84
- else if (primaryKey || virtual || operator || field.includes('.') || ![enums_1.QueryType.SELECT, enums_1.QueryType.COUNT].includes(qb.type)) {
85
- this.inlineCondition(field.replaceAll(core_1.ALIAS_REPLACEMENT, alias), o, payload);
81
+ else if (primaryKey || virtual || operator || field.includes('.') || ![QueryType.SELECT, QueryType.COUNT].includes(qb.type)) {
82
+ this.inlineCondition(field.replaceAll(ALIAS_REPLACEMENT, alias), o, payload);
86
83
  }
87
84
  else {
88
85
  this.inlineCondition(`${alias}.${field}`, o, payload);
@@ -112,21 +109,21 @@ class ObjectCriteriaNode extends CriteriaNode_1.CriteriaNode {
112
109
  });
113
110
  }
114
111
  shouldInline(payload) {
115
- const customExpression = core_1.RawQueryFragment.isKnownFragment(this.key);
116
- const scalar = core_1.Utils.isPrimaryKey(payload) || payload instanceof RegExp || payload instanceof Date || customExpression;
117
- const operator = core_1.Utils.isObject(payload) && Object.keys(payload).every(k => core_1.Utils.isOperator(k, false));
118
- return !!this.prop && this.prop.kind !== core_1.ReferenceKind.SCALAR && !scalar && !operator;
112
+ const customExpression = RawQueryFragment.isKnownFragment(this.key);
113
+ const scalar = Utils.isPrimaryKey(payload) || payload instanceof RegExp || payload instanceof Date || customExpression;
114
+ const operator = Utils.isObject(payload) && Object.keys(payload).every(k => Utils.isOperator(k, false));
115
+ return !!this.prop && this.prop.kind !== ReferenceKind.SCALAR && !scalar && !operator;
119
116
  }
120
117
  getChildKey(k, prop, childAlias, alias) {
121
118
  const idx = prop.referencedPKs.indexOf(k);
122
- return idx !== -1 && !childAlias && ![core_1.ReferenceKind.ONE_TO_MANY, core_1.ReferenceKind.MANY_TO_MANY].includes(prop.kind)
119
+ return idx !== -1 && !childAlias && ![ReferenceKind.ONE_TO_MANY, ReferenceKind.MANY_TO_MANY].includes(prop.kind)
123
120
  ? this.aliased(prop.joinColumns[idx], alias)
124
121
  : k;
125
122
  }
126
123
  inlineArrayChildPayload(obj, payload, k, prop, childAlias, alias) {
127
124
  const key = this.getChildKey(k, prop, childAlias);
128
125
  const value = payload.map((child) => Object.keys(child).reduce((inner, childKey) => {
129
- const key = (this.isPrefixed(childKey) || core_1.Utils.isOperator(childKey)) ? childKey : this.aliased(childKey, childAlias);
126
+ const key = (this.isPrefixed(childKey) || Utils.isOperator(childKey)) ? childKey : this.aliased(childKey, childAlias);
130
127
  inner[key] = child[childKey];
131
128
  return inner;
132
129
  }, {}));
@@ -135,19 +132,19 @@ class ObjectCriteriaNode extends CriteriaNode_1.CriteriaNode {
135
132
  inlineChildPayload(o, payload, field, alias, childAlias) {
136
133
  const prop = this.metadata.find(this.entityName).properties[field];
137
134
  for (const k of Object.keys(payload)) {
138
- if (core_1.Utils.isOperator(k, false)) {
135
+ if (Utils.isOperator(k, false)) {
139
136
  const tmp = payload[k];
140
137
  delete payload[k];
141
138
  o[this.aliased(field, alias)] = { [k]: tmp, ...o[this.aliased(field, alias)] };
142
139
  }
143
- else if (core_1.Utils.isGroupOperator(k) && Array.isArray(payload[k])) {
140
+ else if (Utils.isGroupOperator(k) && Array.isArray(payload[k])) {
144
141
  this.inlineArrayChildPayload(o, payload[k], k, prop, childAlias, alias);
145
142
  }
146
- else if (this.isPrefixed(k) || core_1.Utils.isOperator(k) || !childAlias) {
143
+ else if (this.isPrefixed(k) || Utils.isOperator(k) || !childAlias) {
147
144
  const key = this.getChildKey(k, prop, childAlias, alias);
148
145
  this.inlineCondition(key, o, payload[k]);
149
146
  }
150
- else if (core_1.RawQueryFragment.isKnownFragment(k)) {
147
+ else if (RawQueryFragment.isKnownFragment(k)) {
151
148
  o[k] = payload[k];
152
149
  }
153
150
  else {
@@ -160,7 +157,7 @@ class ObjectCriteriaNode extends CriteriaNode_1.CriteriaNode {
160
157
  o[key] = value;
161
158
  return;
162
159
  }
163
- /* istanbul ignore next */
160
+ /* v8 ignore next 4 */
164
161
  if (key === '$and') {
165
162
  o.$and.push({ [key]: value });
166
163
  return;
@@ -182,14 +179,14 @@ class ObjectCriteriaNode extends CriteriaNode_1.CriteriaNode {
182
179
  return true;
183
180
  }
184
181
  const meta = this.metadata.find(this.entityName);
185
- const embeddable = this.prop.kind === core_1.ReferenceKind.EMBEDDED;
186
- const knownKey = [core_1.ReferenceKind.SCALAR, core_1.ReferenceKind.MANY_TO_ONE, core_1.ReferenceKind.EMBEDDED].includes(this.prop.kind) || (this.prop.kind === core_1.ReferenceKind.ONE_TO_ONE && this.prop.owner);
187
- const operatorKeys = knownKey && keys.every(key => core_1.Utils.isOperator(key, false));
182
+ const embeddable = this.prop.kind === ReferenceKind.EMBEDDED;
183
+ const knownKey = [ReferenceKind.SCALAR, ReferenceKind.MANY_TO_ONE, ReferenceKind.EMBEDDED].includes(this.prop.kind) || (this.prop.kind === ReferenceKind.ONE_TO_ONE && this.prop.owner);
184
+ const operatorKeys = knownKey && keys.every(key => Utils.isOperator(key, false));
188
185
  const primaryKeys = knownKey && keys.every(key => {
189
186
  if (!meta.primaryKeys.includes(key)) {
190
187
  return false;
191
188
  }
192
- if (!core_1.Utils.isPlainObject(this.payload[key].payload) || ![core_1.ReferenceKind.ONE_TO_ONE, core_1.ReferenceKind.MANY_TO_ONE].includes(meta.properties[key].kind)) {
189
+ if (!Utils.isPlainObject(this.payload[key].payload) || ![ReferenceKind.ONE_TO_ONE, ReferenceKind.MANY_TO_ONE].includes(meta.properties[key].kind)) {
193
190
  return true;
194
191
  }
195
192
  return Object.keys(this.payload[key].payload).every(k => meta.properties[key].targetMeta.primaryKeys.includes(k));
@@ -198,18 +195,18 @@ class ObjectCriteriaNode extends CriteriaNode_1.CriteriaNode {
198
195
  }
199
196
  autoJoin(qb, alias) {
200
197
  const nestedAlias = qb.getNextAlias(this.prop?.pivotTable ?? this.entityName);
201
- const customExpression = core_1.RawQueryFragment.isKnownFragment(this.key);
202
- const scalar = core_1.Utils.isPrimaryKey(this.payload) || this.payload instanceof RegExp || this.payload instanceof Date || customExpression;
203
- const operator = core_1.Utils.isPlainObject(this.payload) && Object.keys(this.payload).every(k => core_1.Utils.isOperator(k, false));
198
+ const customExpression = RawQueryFragment.isKnownFragment(this.key);
199
+ const scalar = Utils.isPrimaryKey(this.payload) || this.payload instanceof RegExp || this.payload instanceof Date || customExpression;
200
+ const operator = Utils.isPlainObject(this.payload) && Object.keys(this.payload).every(k => Utils.isOperator(k, false));
204
201
  const field = `${alias}.${this.prop.name}`;
205
- const method = qb.hasFlag(core_1.QueryFlag.INFER_POPULATE) ? 'joinAndSelect' : 'join';
206
- if (this.prop.kind === core_1.ReferenceKind.MANY_TO_MANY && (scalar || operator)) {
207
- qb.join(field, nestedAlias, undefined, enums_1.JoinType.pivotJoin, this.getPath());
202
+ const method = qb.hasFlag(QueryFlag.INFER_POPULATE) ? 'joinAndSelect' : 'join';
203
+ if (this.prop.kind === ReferenceKind.MANY_TO_MANY && (scalar || operator)) {
204
+ qb.join(field, nestedAlias, undefined, JoinType.pivotJoin, this.getPath());
208
205
  }
209
206
  else {
210
207
  const prev = qb._fields?.slice();
211
- qb[method](field, nestedAlias, undefined, enums_1.JoinType.leftJoin, this.getPath());
212
- if (!qb.hasFlag(core_1.QueryFlag.INFER_POPULATE)) {
208
+ qb[method](field, nestedAlias, undefined, JoinType.leftJoin, this.getPath());
209
+ if (!qb.hasFlag(QueryFlag.INFER_POPULATE)) {
213
210
  qb._fields = prev;
214
211
  }
215
212
  }
@@ -219,4 +216,3 @@ class ObjectCriteriaNode extends CriteriaNode_1.CriteriaNode {
219
216
  return !!field.match(/\w+\./);
220
217
  }
221
218
  }
222
- exports.ObjectCriteriaNode = ObjectCriteriaNode;
@@ -1,12 +1,12 @@
1
1
  import { inspect } from 'node:util';
2
2
  import { type AnyEntity, type ConnectionType, type Dictionary, type EntityData, type EntityKey, type EntityMetadata, type EntityName, type EntityProperty, type ExpandProperty, type FlushMode, type GroupOperator, type Loaded, LockMode, type LoggingOptions, type MetadataStorage, type ObjectQuery, PopulateHint, type PopulateOptions, type QBFilterQuery, type QBQueryOrderMap, QueryFlag, type QueryOrderMap, type QueryResult, RawQueryFragment, type RequiredEntityData, type Transaction } from '@mikro-orm/core';
3
- import { JoinType, QueryType } from './enums';
4
- import type { AbstractSqlDriver } from '../AbstractSqlDriver';
5
- import { type Alias, type OnConflictClause, QueryBuilderHelper } from './QueryBuilderHelper';
6
- import type { SqlEntityManager } from '../SqlEntityManager';
7
- import type { Field, ICriteriaNodeProcessOptions, JoinOptions } from '../typings';
8
- import type { AbstractSqlPlatform } from '../AbstractSqlPlatform';
9
- import { NativeQueryBuilder } from './NativeQueryBuilder';
3
+ import { JoinType, QueryType } from './enums.js';
4
+ import type { AbstractSqlDriver } from '../AbstractSqlDriver.js';
5
+ import { type Alias, type OnConflictClause, QueryBuilderHelper } from './QueryBuilderHelper.js';
6
+ import type { SqlEntityManager } from '../SqlEntityManager.js';
7
+ import type { Field, ICriteriaNodeProcessOptions, JoinOptions } from '../typings.js';
8
+ import type { AbstractSqlPlatform } from '../AbstractSqlPlatform.js';
9
+ import { NativeQueryBuilder } from './NativeQueryBuilder.js';
10
10
  export interface ExecuteOptions {
11
11
  mapResults?: boolean;
12
12
  mergeResults?: boolean;
@@ -256,10 +256,6 @@ export declare class QueryBuilder<Entity extends object = AnyEntity, RootAlias e
256
256
  * Executes the query, returning both array of results and total count query (without offset and limit).
257
257
  */
258
258
  getResultAndCount(): Promise<[Entity[], number]>;
259
- /**
260
- * Provides promise-like interface so we can await the QB instance.
261
- */
262
- then<TResult1 = any, TResult2 = never>(onfulfilled?: ((value: any) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): Promise<Loaded<Entity, Hint>[] | number | QueryResult<Entity>>;
263
259
  /**
264
260
  * Returns native query builder instance with sub-query aliased with given alias.
265
261
  * You can provide `EntityName.propName` as alias, then the field name will be used based on the metadata
@@ -303,14 +299,12 @@ export declare class QueryBuilder<Entity extends object = AnyEntity, RootAlias e
303
299
  export interface RunQueryBuilder<Entity extends object> extends Omit<QueryBuilder<Entity, any, any>, 'getResult' | 'getSingleResult' | 'getResultList' | 'where'> {
304
300
  where(cond: QBFilterQuery<Entity> | string, params?: keyof typeof GroupOperator | any[], operator?: keyof typeof GroupOperator): this;
305
301
  execute<Result = QueryResult<Entity>>(method?: 'all' | 'get' | 'run', mapResults?: boolean): Promise<Result>;
306
- then<TResult1 = QueryResult<Entity>, TResult2 = never>(onfulfilled?: ((value: QueryResult<Entity>) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): Promise<QueryResult<Entity>>;
307
302
  }
308
303
  export interface SelectQueryBuilder<Entity extends object = AnyEntity, RootAlias extends string = never, Hint extends string = never, Context extends object = never> extends QueryBuilder<Entity, RootAlias, Hint, Context> {
309
304
  execute<Result = Entity[]>(method?: 'all' | 'get' | 'run', mapResults?: boolean): Promise<Result>;
310
305
  execute<Result = Entity[]>(method: 'all', mapResults?: boolean): Promise<Result>;
311
306
  execute<Result = Entity>(method: 'get', mapResults?: boolean): Promise<Result>;
312
307
  execute<Result = QueryResult<Entity>>(method: 'run', mapResults?: boolean): Promise<Result>;
313
- then<TResult1 = Entity[], TResult2 = never>(onfulfilled?: ((value: Loaded<Entity, Hint>[]) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): Promise<Loaded<Entity, Hint>[]>;
314
308
  }
315
309
  export interface CountQueryBuilder<Entity extends object> extends QueryBuilder<Entity, any, any> {
316
310
  execute<Result = {
@@ -325,7 +319,6 @@ export interface CountQueryBuilder<Entity extends object> extends QueryBuilder<E
325
319
  execute<Result = QueryResult<{
326
320
  count: number;
327
321
  }>>(method: 'run', mapResults?: boolean): Promise<Result>;
328
- then<TResult1 = number, TResult2 = never>(onfulfilled?: ((value: number) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): Promise<number>;
329
322
  }
330
323
  export interface InsertQueryBuilder<T extends object> extends RunQueryBuilder<T> {
331
324
  }