@murumets-ee/db 0.9.0 → 0.11.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.
package/dist/index.d.mts CHANGED
@@ -3,6 +3,7 @@ import * as _$drizzle_orm0 from "drizzle-orm";
3
3
  import { InferInsertModel, SQL } from "drizzle-orm";
4
4
  import * as _$drizzle_orm_pg_core0 from "drizzle-orm/pg-core";
5
5
  import { AnyPgColumn, PgColumnBuilderBase, PgTable, PgTableWithColumns, TableConfig } from "drizzle-orm/pg-core";
6
+ import { Logger } from "drizzle-orm/logger";
6
7
 
7
8
  //#region src/client.d.ts
8
9
  interface DbConfig {
@@ -12,12 +13,22 @@ interface DbConfig {
12
13
  poolMax?: number;
13
14
  }
14
15
  /**
15
- * Create a full read-write database client
16
+ * Create a full read-write database client.
16
17
  */
17
18
  declare function createDbClient(config: DbConfig): PostgresJsDatabase;
18
19
  /**
19
- * Create a read-only database client
20
- * Sets default_transaction_read_only=on to prevent writes even if SQL injection occurs
20
+ * Create a read-only database client.
21
+ *
22
+ * Sets `default_transaction_read_only = on` as a startup parameter on every
23
+ * connection in the pool, so any implicit transaction issued through this
24
+ * client is read-only at the PostgreSQL level. This is the defense-in-depth
25
+ * layer beneath the application's own routing of writes through `AdminClient`
26
+ * — even if a write somehow reaches a read-only client, Postgres rejects it.
27
+ *
28
+ * Implementation note: postgres-js's `connection` config object is sent in
29
+ * the PostgreSQL startup packet for every new pool connection, so the GUC is
30
+ * applied uniformly across the whole pool — not just whichever connection
31
+ * happened to run a one-off `SET` statement.
21
32
  */
22
33
  declare function createReadOnlyClient(config: DbConfig): PostgresJsDatabase;
23
34
  //#endregion
@@ -66,17 +77,6 @@ interface MigrationStatus {
66
77
  * pay the loader cost.
67
78
  */
68
79
  type MigrationLoader = (absolutePath: string) => Promise<MigrationModule>;
69
- /**
70
- * Discover all migration files under `projectRoot/migrations`.
71
- *
72
- * Layout:
73
- * migrations/
74
- * 20260411_180000_add_articles.ts ← user migrations (sort chronologically)
75
- * 20260411_180000_add_articles.snapshot.json
76
- * .toolkit/
77
- * 0001_initial_schema.ts ← toolkit-owned migrations (sort numerically)
78
- */
79
- declare function discoverMigrations(projectRoot: string): Promise<MigrationSource[]>;
80
80
  /** Split discovered migrations into applied vs pending by consulting the tracking table. */
81
81
  declare function getMigrationStatus(db: PostgresJsDatabase, projectRoot: string): Promise<MigrationStatus>;
82
82
  /**
@@ -101,6 +101,28 @@ declare function runMigrations(db: PostgresJsDatabase, projectRoot: string, load
101
101
  */
102
102
  declare function rollbackMigrations(db: PostgresJsDatabase, projectRoot: string, loader: MigrationLoader, count?: number): Promise<void>;
103
103
  //#endregion
104
+ //#region src/query-counter.d.ts
105
+ /**
106
+ * Per-request DB query counter — opt-in, off by default.
107
+ *
108
+ * Wired into the Drizzle client when `LUMI_DB_QUERY_COUNTER=1`. The harness
109
+ * (apps/perf-harness) wraps each HTTP request in `runWithQueryStats` and emits
110
+ * the count as an `x-db-query-count` response header, so k6 scenarios can
111
+ * assert per-endpoint query budgets like:
112
+ *
113
+ * checks: { 'findById ≤ 2 queries': (r) => r.headers['X-Db-Query-Count'] <= '2' }
114
+ *
115
+ * No-op for any code path that does not enter `runWithQueryStats` — the ALS
116
+ * store is undefined and `logQuery` returns immediately.
117
+ */
118
+ interface QueryStats {
119
+ count: number;
120
+ }
121
+ declare function getQueryStats(): QueryStats | undefined;
122
+ declare function runWithQueryStats<T>(fn: (stats: QueryStats) => Promise<T>): Promise<T>;
123
+ declare const queryCountingLogger: Logger;
124
+ declare function isQueryCounterEnabled(): boolean;
125
+ //#endregion
104
126
  //#region src/schema-registry.d.ts
105
127
  /**
106
128
  * Schema registry for storing Drizzle schemas
@@ -129,10 +151,6 @@ declare class SchemaRegistryImpl implements SchemaRegistry {
129
151
  * Entities will register their schemas here when they are defined
130
152
  */
131
153
  declare const schemaRegistry: SchemaRegistryImpl;
132
- /**
133
- * Create a new isolated schema registry (useful for testing)
134
- */
135
- declare function createSchemaRegistry(): SchemaRegistry;
136
154
  //#endregion
137
155
  //#region src/table/types.d.ts
138
156
  /**
@@ -177,7 +195,7 @@ interface ColumnFactory<TType = unknown, TKind extends ColumnKind = ColumnKind,
177
195
  * - `notNull: true` → `T`
178
196
  * - `notNull: false` → `T | null`
179
197
  */
180
- type ColumnValue<C> = C extends ColumnFactory<infer T, ColumnKind, infer N> ? N extends true ? T : T | null : never;
198
+ type ColumnValue<C> = C extends ColumnFactory<infer T, ColumnKind, infer N> ? (N extends true ? T : T | null) : never;
181
199
  /**
182
200
  * Map a columns record to its row shape (the result of a SELECT).
183
201
  */
@@ -334,113 +352,6 @@ interface TableDefinition<TCols extends Record<string, ColumnFactory>> {
334
352
  indexes?: IndexDefinition<TCols>[];
335
353
  }
336
354
  //#endregion
337
- //#region src/table/columns.d.ts
338
- /**
339
- * Type interface for the `column` builder namespace.
340
- *
341
- * Overloads discriminate on whether `default` is present, so
342
- * `THasDefault` is inferred correctly:
343
- *
344
- * - `column.varchar({ length: 20, default: 'x' })` → `hasDefault = true`
345
- * - `column.varchar({ length: 20 })` → `hasDefault = false`
346
- *
347
- * Object-literal methods don't support overloads in TypeScript, so we
348
- * declare the overloaded signatures on an interface and cast the
349
- * implementation object.
350
- */
351
- interface ColumnBuilders {
352
- uuid<TPrimaryKey extends boolean = false, TNotNull extends boolean = false, THasDefault extends boolean = false>(opts?: {
353
- primaryKey?: TPrimaryKey;
354
- notNull?: TNotNull;
355
- defaultRandom?: THasDefault;
356
- pgName?: string;
357
- }): ColumnFactory<string, 'uuid', TPrimaryKey extends true ? true : TNotNull extends true ? true : false, TPrimaryKey extends true ? true : THasDefault extends true ? true : false>;
358
- varchar<TNotNull extends boolean = false>(opts: {
359
- length: number;
360
- notNull?: TNotNull;
361
- default: string;
362
- pgName?: string;
363
- }): ColumnFactory<string, 'varchar', TNotNull extends true ? true : false, true>;
364
- varchar<TNotNull extends boolean = false>(opts: {
365
- length: number;
366
- notNull?: TNotNull;
367
- pgName?: string;
368
- }): ColumnFactory<string, 'varchar', TNotNull extends true ? true : false, false>;
369
- text<TNotNull extends boolean = false>(opts: {
370
- notNull?: TNotNull;
371
- default: string;
372
- pgName?: string;
373
- }): ColumnFactory<string, 'text', TNotNull extends true ? true : false, true>;
374
- text<TNotNull extends boolean = false>(opts?: {
375
- notNull?: TNotNull;
376
- pgName?: string;
377
- }): ColumnFactory<string, 'text', TNotNull extends true ? true : false, false>;
378
- integer<TNotNull extends boolean = false>(opts: {
379
- notNull?: TNotNull;
380
- default: number;
381
- pgName?: string;
382
- }): ColumnFactory<number, 'integer', TNotNull extends true ? true : false, true>;
383
- integer<TNotNull extends boolean = false>(opts?: {
384
- notNull?: TNotNull;
385
- pgName?: string;
386
- }): ColumnFactory<number, 'integer', TNotNull extends true ? true : false, false>;
387
- bigint<TMode extends 'number' | 'bigint' = 'number', TNotNull extends boolean = false>(opts: {
388
- mode?: TMode;
389
- notNull?: TNotNull;
390
- default: TMode extends 'bigint' ? bigint : number;
391
- pgName?: string;
392
- }): ColumnFactory<TMode extends 'bigint' ? bigint : number, 'bigint', TNotNull extends true ? true : false, true>;
393
- bigint<TMode extends 'number' | 'bigint' = 'number', TNotNull extends boolean = false>(opts?: {
394
- mode?: TMode;
395
- notNull?: TNotNull;
396
- pgName?: string;
397
- }): ColumnFactory<TMode extends 'bigint' ? bigint : number, 'bigint', TNotNull extends true ? true : false, false>;
398
- double<TNotNull extends boolean = false>(opts: {
399
- notNull?: TNotNull;
400
- default: number;
401
- pgName?: string;
402
- }): ColumnFactory<number, 'double', TNotNull extends true ? true : false, true>;
403
- double<TNotNull extends boolean = false>(opts?: {
404
- notNull?: TNotNull;
405
- pgName?: string;
406
- }): ColumnFactory<number, 'double', TNotNull extends true ? true : false, false>;
407
- boolean<TNotNull extends boolean = false>(opts: {
408
- notNull?: TNotNull;
409
- default: boolean;
410
- pgName?: string;
411
- }): ColumnFactory<boolean, 'boolean', TNotNull extends true ? true : false, true>;
412
- boolean<TNotNull extends boolean = false>(opts?: {
413
- notNull?: TNotNull;
414
- pgName?: string;
415
- }): ColumnFactory<boolean, 'boolean', TNotNull extends true ? true : false, false>;
416
- timestamp<TNotNull extends boolean = false, THasDefault extends boolean = false>(opts?: {
417
- notNull?: TNotNull;
418
- defaultNow?: THasDefault;
419
- withTimezone?: boolean;
420
- pgName?: string;
421
- }): ColumnFactory<Date, 'timestamp', TNotNull extends true ? true : false, THasDefault extends true ? true : false>;
422
- jsonb<T = unknown, TNotNull extends boolean = false>(opts: {
423
- notNull?: TNotNull;
424
- default: T;
425
- pgName?: string;
426
- }): ColumnFactory<T, 'jsonb', TNotNull extends true ? true : false, true>;
427
- jsonb<T = unknown, TNotNull extends boolean = false>(opts?: {
428
- notNull?: TNotNull;
429
- pgName?: string;
430
- }): ColumnFactory<T, 'jsonb', TNotNull extends true ? true : false, false>;
431
- uuidArray<TNotNull extends boolean = false>(opts?: {
432
- notNull?: TNotNull;
433
- pgName?: string;
434
- }): ColumnFactory<string[], 'uuidArray', TNotNull extends true ? true : false, false>;
435
- }
436
- /**
437
- * Column builder namespace — overloaded interface applied via single
438
- * assertion. Each builder's implementation returns `makeFactory(...)` with
439
- * widened boolean params; the `ColumnBuilders` overloads narrow them for
440
- * callers based on whether `default`/`primaryKey` etc. are present.
441
- */
442
- declare const column: ColumnBuilders;
443
- //#endregion
444
355
  //#region src/table/client.d.ts
445
356
  /**
446
357
  * Default page size for `findMany` when no `limit` is supplied.
@@ -501,6 +412,41 @@ interface ClaimOptions<TCols extends Record<string, ColumnFactory>, TTable exten
501
412
  /** Maximum number of rows to claim. Must be 1..MAX_LIMIT. */
502
413
  limit: number;
503
414
  }
415
+ /**
416
+ * Options for the `tryClaim()` atomic insert-or-replace-if operation.
417
+ *
418
+ * @see {@link TableClient.tryClaim}
419
+ */
420
+ interface TryClaimOptions<TCols extends Record<string, ColumnFactory>, TTable extends PgTable = PgTable> {
421
+ /**
422
+ * Unique-constraint column(s) that should trigger the conflict path.
423
+ *
424
+ * Single string for a single-column unique constraint; array for a
425
+ * composite unique. Must reference a real column on this table.
426
+ */
427
+ target: (keyof TCols & string) | (keyof TCols & string)[];
428
+ /**
429
+ * Predicate that decides whether an existing conflicting row may be
430
+ * **replaced**. Required and must be non-empty.
431
+ *
432
+ * - On INSERT (no conflict): always wins; predicate is irrelevant.
433
+ * - On CONFLICT + predicate matches: row is replaced; result is
434
+ * `{ acquired: true, row }`.
435
+ * - On CONFLICT + predicate does NOT match: existing row is preserved;
436
+ * result is `{ acquired: false, row }` (where `row` is the surviving
437
+ * existing row).
438
+ *
439
+ * Use `$or` to express composite re-entrancy rules — e.g.
440
+ * `{ $or: [{ expiresAt: { lt: now } }, { lockedBy: callerId }] }` for
441
+ * "replace if expired, or if I already hold it".
442
+ */
443
+ replaceWhen: WhereClause<TCols>;
444
+ /**
445
+ * Patch applied on the replace path. Defaults to the full `values`
446
+ * payload (last-write-wins on the columns being inserted).
447
+ */
448
+ set?: Partial<InferInsertModel<TTable>>;
449
+ }
504
450
  /**
505
451
  * Specification for a single aggregate function.
506
452
  */
@@ -589,6 +535,32 @@ declare class TableClient<TCols extends Record<string, ColumnFactory>, TTable ex
589
535
  * `.returning()`.
590
536
  */
591
537
  private get _selectTable();
538
+ /**
539
+ * Look up a Drizzle column by its JS property name, throwing
540
+ * `TableClientError` with the supplied `context` if no such column exists.
541
+ * Wraps `getTableColumns(this.table)` — uses Drizzle's typed column map
542
+ * instead of an indexed cast on the table object.
543
+ */
544
+ private getColumnOrThrow;
545
+ /**
546
+ * Build an array of ORDER BY SQL expressions from an `OrderBySpec[]`.
547
+ * Used by `findMany`, `distinct`, `claim`, and `aggregate`.
548
+ */
549
+ private buildOrderBy;
550
+ /**
551
+ * Throw `TableClientError` if the where clause has no top-level keys.
552
+ * Used by every method that mutates or reads-by-key (`update`, `delete`,
553
+ * `findOne`, `exists`, `claim`, ...) — none of them have a sane
554
+ * "everything" path, so empty wheres are always a caller mistake.
555
+ */
556
+ private requireNonEmptyWhere;
557
+ /**
558
+ * Verify every key in `patch` names a real column on this table. Used by
559
+ * `update`, `updateMany`, `upsert`, and `claim` so a typo'd or hostile
560
+ * patch key surfaces a clear error instead of being silently dropped by
561
+ * Drizzle's set logic.
562
+ */
563
+ private validateColumnKeys;
592
564
  /**
593
565
  * Find a single row matching the given where clause, or `null` if no row
594
566
  * matches. Throws if the where is empty.
@@ -696,6 +668,56 @@ declare class TableClient<TCols extends Record<string, ColumnFactory>, TTable ex
696
668
  set?: Partial<InferInsertModel<TTable>>; /** Conditional WHERE on the conflict update path. Empty objects are ignored. */
697
669
  setWhere?: WhereClause<TCols>;
698
670
  }): Promise<Row<TCols>>;
671
+ /**
672
+ * Atomically claim a row by either inserting it or replacing an existing
673
+ * conflicting row that satisfies `replaceWhen`. The single SQL statement
674
+ * makes this race-free — concurrent callers cannot both observe an empty
675
+ * slot and both INSERT.
676
+ *
677
+ * Distinct from {@link upsert}:
678
+ * - `upsert` always wins on conflict (or hits its `setWhere` block and
679
+ * silently falls back to the existing row). It returns a single
680
+ * `Row<TCols>` and the caller cannot tell which path fired.
681
+ * - `tryClaim` returns a discriminated union — the caller knows whether
682
+ * they took the slot or someone else still holds it.
683
+ *
684
+ * Use case: leasing/locking primitives where the caller must distinguish
685
+ * "I now hold this lock" from "someone else holds it, here is who".
686
+ *
687
+ * @example Acquire a lock, replacing only if expired
688
+ * ```ts
689
+ * const result = await locks.tryClaim(
690
+ * { entityId, lockedBy: me, expiresAt: in5Min },
691
+ * {
692
+ * target: 'entityId',
693
+ * replaceWhen: { expiresAt: { lt: now } },
694
+ * },
695
+ * )
696
+ * if (result.acquired) {
697
+ * // I have the lock
698
+ * } else {
699
+ * // result.row.lockedBy holds it (and lock is fresh)
700
+ * }
701
+ * ```
702
+ *
703
+ * @example Re-entrant lock (claim if expired, or if I already hold it)
704
+ * ```ts
705
+ * await locks.tryClaim(
706
+ * { entityId, lockedBy: me, expiresAt: in5Min },
707
+ * {
708
+ * target: 'entityId',
709
+ * replaceWhen: { $or: [{ expiresAt: { lt: now } }, { lockedBy: me }] },
710
+ * },
711
+ * )
712
+ * ```
713
+ */
714
+ tryClaim(values: InferInsertModel<TTable>, opts: TryClaimOptions<TCols, TTable>): Promise<{
715
+ acquired: true;
716
+ row: Row<TCols>;
717
+ } | {
718
+ acquired: false;
719
+ row: Row<TCols>;
720
+ }>;
699
721
  /**
700
722
  * Insert many rows in a single statement. Capped at {@link MAX_BATCH}.
701
723
  * Returns all inserted rows in input order.
@@ -842,6 +864,113 @@ declare class TableClient<TCols extends Record<string, ColumnFactory>, TTable ex
842
864
  private validateLimit;
843
865
  }
844
866
  //#endregion
867
+ //#region src/table/columns.d.ts
868
+ /**
869
+ * Type interface for the `column` builder namespace.
870
+ *
871
+ * Overloads discriminate on whether `default` is present, so
872
+ * `THasDefault` is inferred correctly:
873
+ *
874
+ * - `column.varchar({ length: 20, default: 'x' })` → `hasDefault = true`
875
+ * - `column.varchar({ length: 20 })` → `hasDefault = false`
876
+ *
877
+ * Object-literal methods don't support overloads in TypeScript, so we
878
+ * declare the overloaded signatures on an interface and cast the
879
+ * implementation object.
880
+ */
881
+ interface ColumnBuilders {
882
+ uuid<TPrimaryKey extends boolean = false, TNotNull extends boolean = false, THasDefault extends boolean = false>(opts?: {
883
+ primaryKey?: TPrimaryKey;
884
+ notNull?: TNotNull;
885
+ defaultRandom?: THasDefault;
886
+ pgName?: string;
887
+ }): ColumnFactory<string, 'uuid', TPrimaryKey extends true ? true : TNotNull extends true ? true : false, TPrimaryKey extends true ? true : THasDefault extends true ? true : false>;
888
+ varchar<TNotNull extends boolean = false>(opts: {
889
+ length: number;
890
+ notNull?: TNotNull;
891
+ default: string;
892
+ pgName?: string;
893
+ }): ColumnFactory<string, 'varchar', TNotNull extends true ? true : false, true>;
894
+ varchar<TNotNull extends boolean = false>(opts: {
895
+ length: number;
896
+ notNull?: TNotNull;
897
+ pgName?: string;
898
+ }): ColumnFactory<string, 'varchar', TNotNull extends true ? true : false, false>;
899
+ text<TNotNull extends boolean = false>(opts: {
900
+ notNull?: TNotNull;
901
+ default: string;
902
+ pgName?: string;
903
+ }): ColumnFactory<string, 'text', TNotNull extends true ? true : false, true>;
904
+ text<TNotNull extends boolean = false>(opts?: {
905
+ notNull?: TNotNull;
906
+ pgName?: string;
907
+ }): ColumnFactory<string, 'text', TNotNull extends true ? true : false, false>;
908
+ integer<TNotNull extends boolean = false>(opts: {
909
+ notNull?: TNotNull;
910
+ default: number;
911
+ pgName?: string;
912
+ }): ColumnFactory<number, 'integer', TNotNull extends true ? true : false, true>;
913
+ integer<TNotNull extends boolean = false>(opts?: {
914
+ notNull?: TNotNull;
915
+ pgName?: string;
916
+ }): ColumnFactory<number, 'integer', TNotNull extends true ? true : false, false>;
917
+ bigint<TMode extends 'number' | 'bigint' = 'number', TNotNull extends boolean = false>(opts: {
918
+ mode?: TMode;
919
+ notNull?: TNotNull;
920
+ default: TMode extends 'bigint' ? bigint : number;
921
+ pgName?: string;
922
+ }): ColumnFactory<TMode extends 'bigint' ? bigint : number, 'bigint', TNotNull extends true ? true : false, true>;
923
+ bigint<TMode extends 'number' | 'bigint' = 'number', TNotNull extends boolean = false>(opts?: {
924
+ mode?: TMode;
925
+ notNull?: TNotNull;
926
+ pgName?: string;
927
+ }): ColumnFactory<TMode extends 'bigint' ? bigint : number, 'bigint', TNotNull extends true ? true : false, false>;
928
+ double<TNotNull extends boolean = false>(opts: {
929
+ notNull?: TNotNull;
930
+ default: number;
931
+ pgName?: string;
932
+ }): ColumnFactory<number, 'double', TNotNull extends true ? true : false, true>;
933
+ double<TNotNull extends boolean = false>(opts?: {
934
+ notNull?: TNotNull;
935
+ pgName?: string;
936
+ }): ColumnFactory<number, 'double', TNotNull extends true ? true : false, false>;
937
+ boolean<TNotNull extends boolean = false>(opts: {
938
+ notNull?: TNotNull;
939
+ default: boolean;
940
+ pgName?: string;
941
+ }): ColumnFactory<boolean, 'boolean', TNotNull extends true ? true : false, true>;
942
+ boolean<TNotNull extends boolean = false>(opts?: {
943
+ notNull?: TNotNull;
944
+ pgName?: string;
945
+ }): ColumnFactory<boolean, 'boolean', TNotNull extends true ? true : false, false>;
946
+ timestamp<TNotNull extends boolean = false, THasDefault extends boolean = false>(opts?: {
947
+ notNull?: TNotNull;
948
+ defaultNow?: THasDefault;
949
+ withTimezone?: boolean;
950
+ pgName?: string;
951
+ }): ColumnFactory<Date, 'timestamp', TNotNull extends true ? true : false, THasDefault extends true ? true : false>;
952
+ jsonb<T = unknown, TNotNull extends boolean = false>(opts: {
953
+ notNull?: TNotNull;
954
+ default: T;
955
+ pgName?: string;
956
+ }): ColumnFactory<T, 'jsonb', TNotNull extends true ? true : false, true>;
957
+ jsonb<T = unknown, TNotNull extends boolean = false>(opts?: {
958
+ notNull?: TNotNull;
959
+ pgName?: string;
960
+ }): ColumnFactory<T, 'jsonb', TNotNull extends true ? true : false, false>;
961
+ uuidArray<TNotNull extends boolean = false>(opts?: {
962
+ notNull?: TNotNull;
963
+ pgName?: string;
964
+ }): ColumnFactory<string[], 'uuidArray', TNotNull extends true ? true : false, false>;
965
+ }
966
+ /**
967
+ * Column builder namespace — overloaded interface applied via single
968
+ * assertion. Each builder's implementation returns `makeFactory(...)` with
969
+ * widened boolean params; the `ColumnBuilders` overloads narrow them for
970
+ * callers based on whether `default`/`primaryKey` etc. are present.
971
+ */
972
+ declare const column: ColumnBuilders;
973
+ //#endregion
845
974
  //#region src/table/define.d.ts
846
975
  /**
847
976
  * The result of `defineTable()`.
@@ -996,11 +1125,6 @@ declare class TableRegistryImpl {
996
1125
  * consistent view of all defined tables across packages.
997
1126
  */
998
1127
  declare const tableRegistry: TableRegistryImpl;
999
- /**
1000
- * Create an isolated registry — useful for unit tests that want to
1001
- * verify registration behaviour without polluting the global registry.
1002
- */
1003
- declare function createTableRegistry(): TableRegistryImpl;
1004
1128
  //#endregion
1005
1129
  //#region src/table/where-builder.d.ts
1006
1130
  /**
@@ -1022,5 +1146,5 @@ declare class WhereBuilderError extends Error {
1022
1146
  */
1023
1147
  declare function isNonEmptyWhere(clause: unknown): boolean;
1024
1148
  //#endregion
1025
- export { type AnyPgColumn, type ClaimOptions, type ColumnFactory, type ColumnKind, type ColumnOperators, type ColumnValue, DEFAULT_LIMIT, type DbConfig, type DefinedTable, type FindManyOptions, type IndexDefinition, type InsertRow, MAX_BATCH, MAX_LIMIT, type MigrateArgs, type MigrationLoader, type MigrationModule, type MigrationSource, type MigrationStatus, type OrderBySpec, type Row, type SchemaRegistry, TableClient, TableClientError, type TableDefinition, type UniqueDefinition, WhereBuilderError, type WhereClause, column, createDbClient, createReadOnlyClient, createSchemaRegistry, createTableRegistry, defineTable, discoverMigrations, getMigrationStatus, isNonEmptyWhere, rollbackMigrations, runMigrations, schemaRegistry, tableRegistry };
1149
+ export { type AnyPgColumn, type ClaimOptions, type ColumnFactory, type ColumnKind, type ColumnOperators, type ColumnValue, DEFAULT_LIMIT, type DbConfig, type DefinedTable, type FindManyOptions, type IndexDefinition, type InsertRow, MAX_BATCH, MAX_LIMIT, type MigrateArgs, type MigrationLoader, type MigrationModule, type MigrationSource, type MigrationStatus, type OrderBySpec, type QueryStats, type Row, type SchemaRegistry, TableClient, TableClientError, type TableDefinition, type UniqueDefinition, WhereBuilderError, type WhereClause, column, createDbClient, createReadOnlyClient, defineTable, getMigrationStatus, getQueryStats, isNonEmptyWhere, isQueryCounterEnabled, queryCountingLogger, rollbackMigrations, runMigrations, runWithQueryStats, schemaRegistry, tableRegistry };
1026
1150
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/client.ts","../src/migrate.ts","../src/schema-registry.ts","../src/table/types.ts","../src/table/columns.ts","../src/table/client.ts","../src/table/define.ts","../src/table/registry.ts","../src/table/where-builder.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/client.ts","../src/migrate.ts","../src/query-counter.ts","../src/schema-registry.ts","../src/table/types.ts","../src/table/client.ts","../src/table/columns.ts","../src/table/define.ts","../src/table/registry.ts","../src/table/where-builder.ts"],"mappings":"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"}