@prisma-next/sql-lane-query-builder 0.7.0 → 0.8.0-dev.2

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
@@ -234,94 +234,516 @@ type TableAsterisk<TTableName extends string = string, THash extends StorageHash
234
234
  readonly '~table': TTableName;
235
235
  } & Brand<'[info] referencing all columns that belong to the following table reference:', `${TTableName}@${THash}`>;
236
236
  //#endregion
237
- //#region ../../1-core/contract/dist/types-njsiV-Ck.d.mts
238
- //#region src/types.d.ts
237
+ //#region ../../../1-framework/1-core/framework-components/dist/ir.d.mts
238
+ //#region src/ir/ir-node.d.ts
239
+ /**
240
+ * Framework-level IR alphabet.
241
+ *
242
+ * The framework's contribution to Contract IR / Schema IR is a common
243
+ * root for the IR class hierarchy and a freeze affordance. Family
244
+ * abstract bases (e.g. `SqlNode`, `MongoSchemaIRNode`) refine the alphabet
245
+ * for their family shape; targets ship the concrete classes.
246
+ *
247
+ * `kind` is an optional discriminator on the base. Families and leaves
248
+ * that benefit from discriminated-union dispatch declare their own
249
+ * literal `kind` at the level that earns it — Mongo leaves carry
250
+ * per-class literals (`readonly kind = 'mongo-collection' as const`)
251
+ * because Mongo IR has polymorphic walkers; SQL declares a single
252
+ * family-level `kind = 'sql'` on `SqlNode` because SQL IR has no
253
+ * polymorphic dispatch today. No framework consumer dispatches on
254
+ * `IRNode.kind` at the BASE type — every dispatch site narrows
255
+ * through a union of leaves where each leaf carries a literal kind, so
256
+ * requiring `kind` at the base would be unearned. Future leaves that
257
+ * earn polymorphic dispatch override with a required literal at that
258
+ * leaf (e.g. `override readonly kind = 'postgres-enum' as const`).
259
+ *
260
+ * `IRNodeBase` carries no methods: the freeze-and-assign affordance
261
+ * lives in the free `freezeNode` helper below. Keeping `freezeNode` out
262
+ * of the class type means an emitted contract literal type
263
+ * (`{ readonly kind: 'mongo-collection', ... }` or an unkeyed literal
264
+ * like `{ nativeType, codecId, nullable }`) is structurally assignable
265
+ * to its class type — a `protected freeze()` instance method would
266
+ * otherwise leak into the public type surface and require the literal
267
+ * to carry it too.
268
+ *
269
+ * Subclasses construct fields then call `freezeNode(this)` to seal the
270
+ * instance. Frozen instances + plain readonly fields keep IR nodes
271
+ * JSON-clean by construction, so `JSON.stringify(node)` produces canonical
272
+ * JSON without a `toJSON()` method. The `ContractSerializer` SPI handles
273
+ * round-trip from canonical JSON back to typed class instances.
274
+ *
275
+ * The name (`IRNode` / `IRNodeBase`) reflects the dual-hierarchy reality:
276
+ * this base is the common root for both Contract IR and Schema IR class
277
+ * hierarchies, not a Schema-IR-specific alphabet.
278
+ */
279
+ interface IRNode {
280
+ readonly kind?: string;
281
+ }
282
+ declare abstract class IRNodeBase implements IRNode {
283
+ abstract readonly kind?: string;
284
+ }
285
+ /**
286
+ * Seal an IR class instance after its constructor has assigned all
287
+ * fields. The free-helper form (rather than a `protected freeze()`
288
+ * instance method) keeps the class type structurally narrow so emitted
289
+ * contract literal types remain assignable to their class types.
290
+ *
291
+ * The helper name stays `freezeNode` — it operates on IR nodes
292
+ * regardless of root naming.
293
+ */
294
+ /**
295
+ * Framework-level building block for a "namespace" — the database-level
296
+ * grouping under which storage objects (tables, collections, enums, …)
297
+ * reside. Each target's namespace concretion maps the framework concept to
298
+ * a target-native binding:
299
+ *
300
+ * - Postgres: a schema (`CREATE SCHEMA …`); rendered as `"<schema>"`.
301
+ * - SQLite: the singleton `UNSPECIFIED_NAMESPACE_ID`; emitted SQL has no qualifier.
302
+ * - Mongo: the connection's `db` field; addressed as a database name.
303
+ *
304
+ * See `UNSPECIFIED_NAMESPACE_ID` above for the sentinel id and the
305
+ * singleton-subclass pattern that materialises it.
306
+ */
307
+ interface Namespace extends IRNode {
308
+ readonly id: string;
309
+ }
310
+ //#endregion
311
+ //#region src/ir/storage.d.ts
312
+ /**
313
+ * Framework-level promise that every Contract IR / Schema IR carries a
314
+ * collection of namespaces keyed by namespace id. Family storage
315
+ * concretions (`SqlStorage`, `MongoStorage`) refine the shape with
316
+ * family-specific fields (tables, collections, enums, …); target
317
+ * concretions add target fields where the family vocabulary doesn't
318
+ * reach.
319
+ *
320
+ * Keeping `namespaces` at the framework layer enforces that every storage
321
+ * object — across any target — is namespace-scoped. The framework can
322
+ * therefore walk the namespace map without knowing the family alphabet, and
323
+ * the `(namespace.id, name)` keying that the verifier and planner depend on
324
+ * is honest at every layer.
325
+ *
326
+ * Extends `IRNode` so the framework's IR-walking surfaces (verifiers,
327
+ * serializers) can dispatch on `Storage`-typed slots through the same
328
+ * IR-node alphabet as every other node — the structural dual already
329
+ * holds in code (every concrete storage class extends an IR-node base);
330
+ * the interface promotion makes the typing honest.
331
+ *
332
+ * **Persisted envelope shape is target-owned, not framework-promised.**
333
+ * Whether the `namespaces` map appears in the on-disk JSON envelope is
334
+ * a per-target decision made by `ContractSerializer.serializeContract`.
335
+ * Some targets emit a JSON-clean namespace shape that round-trips
336
+ * through `JSON.stringify` cleanly (SQL today via the family-layer
337
+ * identity serializer); others ship runtime-only fields on their
338
+ * namespace concretions and override `serializeContract` to strip
339
+ * them (Mongo). Future open (F16): extend the per-target
340
+ * `ContractSerializer` integration-test surface with an explicit
341
+ * envelope-shape assertion for each target, so the strip-vs-pass-through
342
+ * choice is locked at test time rather than implied by the override
343
+ * presence/absence. Earned by PR2's per-target namespace lift, when
344
+ * `PostgresSchema` / `SqliteUnspecifiedDatabase` start carrying
345
+ * target-specific fields.
346
+ */
347
+ interface Storage extends IRNode {
348
+ readonly namespaces: Readonly<Record<string, Namespace>>;
349
+ } //#endregion
350
+ //#region src/ir/storage-type.d.ts
351
+ /**
352
+ * Framework-level alphabet for entries in a storage `types` slot.
353
+ *
354
+ * The slot is polymorphic at the framework level: a family or target can
355
+ * persist either a JSON-clean codec-triple object literal (carrying
356
+ * `kind: 'codec-instance'`) or a class-instance IR node with a narrower
357
+ * kind discriminator (e.g. `'postgres-enum'`). Hydration walkers,
358
+ * verifiers, and planners dispatch on the `kind` literal to recover the
359
+ * precise variant.
360
+ *
361
+ * The `kind` field is required at this layer (in contrast with
362
+ * `IRNode.kind` which is optional) because the slot's downstream
363
+ * consumers dispatch on it — without a guaranteed discriminator the
364
+ * polymorphic walk cannot pick the right reader. Concrete variants
365
+ * narrow `kind` to their literal and add their own field set;
366
+ * downstream consumers use `kind`-discriminator helpers to recover
367
+ * the precise shape.
368
+ */
369
+ interface StorageType extends IRNode {
370
+ readonly kind: string;
371
+ } //#endregion
372
+ //#endregion
373
+ //#region ../../1-core/contract/dist/types-B_diLlWt.d.mts
374
+ //#region src/ir/sql-node.d.ts
375
+ /**
376
+ * SQL family IR node base. Carries the family-level `kind` discriminator
377
+ * `'sql'` and inherits the framework's `freezeNode` affordance.
378
+ *
379
+ * Single family-level discriminator (not per-leaf) reflects the fact that
380
+ * SQL IR has no polymorphic dispatch today — verifiers and serializers
381
+ * walk by structural position (`storage.tables[name].columns[name]`),
382
+ * not by inspecting `kind`. The abstract bar for per-leaf discriminators
383
+ * isn't earned until a future polymorphic consumer arrives.
384
+ *
385
+ * `kind` is installed as a non-enumerable own property on every instance,
386
+ * which keeps three things clean simultaneously:
387
+ *
388
+ * - `JSON.stringify(node)` produces the canonical pre-lift JSON envelope
389
+ * shape (no `kind` field), so emitted contract.json files and the
390
+ * `validateSqlContract` arktype schemas stay unchanged.
391
+ * - Test assertions that use `toEqual({...})` against the pre-lift flat
392
+ * shape continue to pass — only enumerable own properties are
393
+ * compared.
394
+ * - Direct access (`node.kind`) and runtime narrowing
395
+ * (`if (node.kind === 'sql')`) still work, so future polymorphic
396
+ * dispatch can begin reading `kind` without a runtime change.
397
+ *
398
+ * Future per-leaf overrides land cleanly: a class that gains a
399
+ * polymorphic-dispatch consumer (e.g. an enum type instance walked
400
+ * alongside other types) overrides `kind` with its narrower literal
401
+ * at that leaf level. Per-leaf overrides will use enumerable kind
402
+ * (matching the Mongo per-class-discriminator precedent) because they
403
+ * encode dispatch-relevant information that callers need to see in
404
+ * JSON envelopes; the family-level `'sql'` is uniform across all SQL
405
+ * IR and carries no dispatch-relevant information.
406
+ */
407
+ declare abstract class SqlNode extends IRNodeBase {
408
+ readonly kind?: string;
409
+ constructor();
410
+ } //#endregion
411
+ //#region src/ir/foreign-key-references.d.ts
412
+ interface ForeignKeyReferencesInput {
413
+ readonly table: string;
414
+ readonly columns: readonly string[];
415
+ }
416
+ /**
417
+ * SQL Contract IR node for the referenced side of a foreign key.
418
+ *
419
+ * The class is shaped around single-namespace references today; a
420
+ * future milestone introduces a cross-namespace coordinate on top of
421
+ * `(table, columns)` when namespace-keyed storage lands.
422
+ */
423
+ declare class ForeignKeyReferences extends SqlNode {
424
+ readonly table: string;
425
+ readonly columns: readonly string[];
426
+ constructor(input: ForeignKeyReferencesInput);
427
+ } //#endregion
428
+ //#region src/ir/foreign-key.d.ts
429
+ type ReferentialAction = 'noAction' | 'restrict' | 'cascade' | 'setNull' | 'setDefault';
430
+ interface ForeignKeyInput {
431
+ readonly columns: readonly string[];
432
+ readonly references: ForeignKeyReferences | ForeignKeyReferencesInput;
433
+ readonly name?: string;
434
+ readonly onDelete?: ReferentialAction;
435
+ readonly onUpdate?: ReferentialAction;
436
+ /** Whether to emit FK constraint DDL (ALTER TABLE … ADD CONSTRAINT … FOREIGN KEY). */
437
+ readonly constraint: boolean;
438
+ /** Whether to emit a backing index for the FK columns. */
439
+ readonly index: boolean;
440
+ }
239
441
  /**
240
- * A column definition in storage.
442
+ * SQL Contract IR node for a table-level foreign-key declaration.
241
443
  *
242
- * `typeParams` is optional because most columns use non-parameterized types.
243
- * Columns with parameterized types can either inline `typeParams` or reference
244
- * a named {@link StorageTypeInstance} via `typeRef`.
444
+ * The nested `references` field is normalised to a
445
+ * {@link ForeignKeyReferences} instance inside the constructor so
446
+ * downstream walks see a uniform AST regardless of whether the input
447
+ * was a JSON literal or an already-constructed class instance.
245
448
  */
246
- type StorageColumn = {
449
+ declare class ForeignKey extends SqlNode {
450
+ readonly columns: readonly string[];
451
+ readonly references: ForeignKeyReferences;
452
+ readonly constraint: boolean;
453
+ readonly index: boolean;
454
+ readonly name?: string;
455
+ readonly onDelete?: ReferentialAction;
456
+ readonly onUpdate?: ReferentialAction;
457
+ constructor(input: ForeignKeyInput);
458
+ } //#endregion
459
+ //#region src/ir/postgres-enum-storage-entry.d.ts
460
+ /**
461
+ * Discriminator literal for the Postgres-enum variant on the polymorphic
462
+ * `SqlStorage.types` slot.
463
+ *
464
+ * Enums are a target-level concept: Postgres ships native
465
+ * `CREATE TYPE … AS ENUM` while other SQL targets approximate enums via
466
+ * constraints. The literal lives at the SQL family layer because every
467
+ * SQL-family consumer (verifier, planner, lowering, …) needs to
468
+ * discriminate enum-typed slot entries from codec-typed ones. The
469
+ * concrete IR class (`PostgresEnumType`) lives in the target-postgres
470
+ * package and implements this structural contract; cross-domain
471
+ * layering rules forbid the SQL family from importing the concrete
472
+ * target class directly, so the discriminator and structural interface
473
+ * carry the dispatch.
474
+ */
475
+ declare const POSTGRES_ENUM_KIND: "postgres-enum";
476
+ /**
477
+ * Structural contract every Postgres-enum slot entry honours — both
478
+ * the live `PostgresEnumType` IR-class instance and the raw JSON
479
+ * envelope shape that survives `JSON.stringify` round-trips. SQL
480
+ * family-layer dispatch narrows polymorphic `StorageType` slot
481
+ * entries to this shape via `isPostgresEnumStorageEntry`.
482
+ *
483
+ * The `codecBinding` field is accessor-shaped (live class instance) on
484
+ * the IR class and undefined on the raw JSON envelope; consumers that
485
+ * need it must guard for its presence (the JSON path synthesises an
486
+ * equivalent shape from `codecId` + `values`).
487
+ */
488
+ interface PostgresEnumStorageEntry extends StorageType {
489
+ readonly kind: typeof POSTGRES_ENUM_KIND;
490
+ readonly name: string;
247
491
  readonly nativeType: string;
248
- readonly codecId: string;
249
- readonly nullable: boolean;
250
- /**
251
- * Opaque, codec-owned JS/type parameters.
252
- * The codec that owns `codecId` defines the shape and semantics.
253
- * Mutually exclusive with `typeRef`.
254
- */
255
- readonly typeParams?: Record<string, unknown>;
256
- /**
257
- * Reference to a named type instance in `storage.types`.
258
- * Mutually exclusive with `typeParams`.
259
- */
260
- readonly typeRef?: string;
492
+ readonly values: readonly string[];
261
493
  /**
262
- * Default value for the column.
263
- * Can be a literal value or database function.
494
+ * Enumerable own property on the persisted JSON envelope; the live
495
+ * IR-class instance carries it too. Family-shared dispatch sites
496
+ * read `codecId` directly rather than going through the IR-class
497
+ * `codecBinding` accessor (which lives on the prototype and isn't
498
+ * present on raw JSON envelopes).
264
499
  */
265
- readonly default?: ColumnDefault;
266
- };
267
- type PrimaryKey = {
500
+ readonly codecId: string;
501
+ }
502
+ /**
503
+ * Narrow a polymorphic `StorageType` entry to the Postgres-enum shape
504
+ * via its enumerable `kind` discriminator. Type guard returns true for
505
+ * both live `PostgresEnumType` instances and raw JSON envelopes.
506
+ */
507
+ //#endregion
508
+ //#region src/ir/primary-key.d.ts
509
+ interface PrimaryKeyInput {
268
510
  readonly columns: readonly string[];
269
511
  readonly name?: string;
270
- };
271
- type UniqueConstraint = {
512
+ }
513
+ /**
514
+ * SQL Contract IR node for a table's primary-key constraint.
515
+ */
516
+ declare class PrimaryKey extends SqlNode {
272
517
  readonly columns: readonly string[];
273
518
  readonly name?: string;
274
- };
275
- type Index = {
519
+ constructor(input: PrimaryKeyInput);
520
+ } //#endregion
521
+ //#region src/ir/sql-index.d.ts
522
+ interface IndexInput {
276
523
  readonly columns: readonly string[];
277
524
  readonly name?: string;
278
525
  readonly type?: string;
279
526
  readonly options?: Record<string, unknown>;
280
- };
281
- type ForeignKeyReferences = {
282
- readonly table: string;
527
+ }
528
+ /**
529
+ * SQL Contract IR node for a table-level secondary index.
530
+ *
531
+ * Note that this class shadows the global TypeScript `Index` lib type
532
+ * at the family-shared name; consumer files that need both should
533
+ * alias one (e.g.
534
+ * `import { Index as SqlIndexNode } from '@prisma-next/sql-contract/types'`).
535
+ */
536
+ declare class Index extends SqlNode {
283
537
  readonly columns: readonly string[];
284
- };
285
- type ReferentialAction = 'noAction' | 'restrict' | 'cascade' | 'setNull' | 'setDefault';
286
- type ForeignKey = {
538
+ readonly name?: string;
539
+ readonly type?: string;
540
+ readonly options?: Record<string, unknown>;
541
+ constructor(input: IndexInput);
542
+ } //#endregion
543
+ //#region src/ir/storage-column.d.ts
544
+ /**
545
+ * Hydration / construction input shape for {@link StorageColumn}. Mirrors
546
+ * the on-disk storage JSON envelope exactly so the family-base
547
+ * serializer's hydration walker can hand an arktype-validated literal
548
+ * straight to `new`.
549
+ *
550
+ * `typeParams` and `typeRef` remain mutually exclusive (one or the
551
+ * other, not both); the constructor preserves whichever caller-side
552
+ * choice the input encodes.
553
+ */
554
+ interface StorageColumnInput {
555
+ readonly nativeType: string;
556
+ readonly codecId: string;
557
+ readonly nullable: boolean;
558
+ readonly typeParams?: Record<string, unknown>;
559
+ readonly typeRef?: string;
560
+ readonly default?: ColumnDefault;
561
+ }
562
+ /**
563
+ * SQL Contract IR node for a single column entry in `StorageTable.columns`.
564
+ *
565
+ * Single concrete family-shared class — every SQL target reads the
566
+ * same column shape today, so there is no per-target subclass. The
567
+ * class type accepts any caller that constructs via
568
+ * `new StorageColumn(input)`; literal construction sites must pass
569
+ * through the constructor or the family-base hydration walker.
570
+ *
571
+ * The column's `name` is not on the class — columns are keyed by name
572
+ * in the parent `StorageTable.columns: Record<string, StorageColumn>`
573
+ * map, so a `name` field would be redundant with the key.
574
+ */
575
+ declare class StorageColumn extends SqlNode {
576
+ readonly nativeType: string;
577
+ readonly codecId: string;
578
+ readonly nullable: boolean;
579
+ readonly typeParams?: Record<string, unknown>;
580
+ readonly typeRef?: string;
581
+ readonly default?: ColumnDefault;
582
+ constructor(input: StorageColumnInput);
583
+ } //#endregion
584
+ //#region src/ir/unique-constraint.d.ts
585
+ interface UniqueConstraintInput {
287
586
  readonly columns: readonly string[];
288
- readonly references: ForeignKeyReferences;
289
587
  readonly name?: string;
290
- readonly onDelete?: ReferentialAction;
291
- readonly onUpdate?: ReferentialAction; /** Whether to emit FK constraint DDL (ALTER TABLE … ADD CONSTRAINT … FOREIGN KEY). */
292
- readonly constraint: boolean; /** Whether to emit a backing index for the FK columns. */
293
- readonly index: boolean;
294
- };
295
- type StorageTable = {
296
- readonly columns: Record<string, StorageColumn>;
297
- readonly primaryKey?: PrimaryKey;
588
+ }
589
+ /**
590
+ * SQL Contract IR node for a table-level unique constraint.
591
+ */
592
+ declare class UniqueConstraint extends SqlNode {
593
+ readonly columns: readonly string[];
594
+ readonly name?: string;
595
+ constructor(input: UniqueConstraintInput);
596
+ } //#endregion
597
+ //#region src/ir/storage-table.d.ts
598
+ interface StorageTableInput {
599
+ readonly columns: Record<string, StorageColumn | StorageColumnInput>;
600
+ readonly primaryKey?: PrimaryKey | PrimaryKeyInput;
601
+ readonly uniques: ReadonlyArray<UniqueConstraint | UniqueConstraintInput>;
602
+ readonly indexes: ReadonlyArray<Index | IndexInput>;
603
+ readonly foreignKeys: ReadonlyArray<ForeignKey | ForeignKeyInput>;
604
+ }
605
+ /**
606
+ * SQL Contract IR node for a single table entry in `SqlStorage.tables`.
607
+ *
608
+ * The constructor normalises nested IR-class fields (columns, primary
609
+ * key, uniques, indexes, foreign keys) into the appropriate class
610
+ * instances so downstream walks see a uniform AST regardless of whether
611
+ * the input was a JSON literal or an already-constructed class.
612
+ *
613
+ * The table's `name` is not on the class — tables are keyed by name in
614
+ * the parent `SqlStorage.tables: Record<string, StorageTable>` map.
615
+ * A future namespace-aware milestone will add a `namespaceId` field
616
+ * when namespace-keyed storage lands; today's single-namespace shape
617
+ * needs neither field.
618
+ */
619
+ declare class StorageTable extends SqlNode {
620
+ readonly columns: Readonly<Record<string, StorageColumn>>;
298
621
  readonly uniques: ReadonlyArray<UniqueConstraint>;
299
622
  readonly indexes: ReadonlyArray<Index>;
300
623
  readonly foreignKeys: ReadonlyArray<ForeignKey>;
301
- };
624
+ readonly primaryKey?: PrimaryKey;
625
+ constructor(input: StorageTableInput);
626
+ } //#endregion
627
+ //#region src/ir/storage-type-instance.d.ts
302
628
  /**
303
- * A named, parameterized type instance.
304
- * These are registered in `storage.types` for reuse across columns
305
- * and to enable ergonomic schema surfaces like `schema.types.MyType`.
306
- *
307
- * Unlike {@link StorageColumn}, `typeParams` is required here because
308
- * `StorageTypeInstance` exists specifically to define reusable parameterized types.
309
- * A type instance without parameters would be redundant—columns can reference
310
- * the codec directly via `codecId`.
629
+ * Sentinel kind for the legacy codec-triple shape persisted under
630
+ * `SqlStorage.types`. Plain JSON-clean object literals carry this
631
+ * discriminator so the polymorphic slot dispatch can route them down
632
+ * the codec path while target-specific IR class instances (e.g. the
633
+ * Postgres enum class) keep their own narrower `kind` literal.
634
+ */
635
+ declare const CODEC_INSTANCE_KIND: "codec-instance";
636
+ /**
637
+ * Structural sub-interface of {@link StorageType} for codec-typed entries
638
+ * in `SqlStorage.types`. These are plain object literals — there is no
639
+ * runtime IR class, the JSON envelope round-trips through the slot
640
+ * unchanged. The `kind: 'codec-instance'` discriminator is the dispatch
641
+ * key that distinguishes codec-typed entries from class-instance entries
642
+ * (e.g. `PostgresEnumType`) sharing the polymorphic slot.
311
643
  */
312
- type StorageTypeInstance = {
644
+ interface StorageTypeInstance extends StorageType {
645
+ readonly kind: typeof CODEC_INSTANCE_KIND;
313
646
  readonly codecId: string;
314
647
  readonly nativeType: string;
315
648
  readonly typeParams: Record<string, unknown>;
316
- };
317
- type SqlStorage<THash extends string = string> = StorageBase<THash> & {
318
- readonly tables: Record<string, StorageTable>;
319
- /**
320
- * Named type instances for parameterized/custom types.
321
- * Columns can reference these via `typeRef`.
322
- */
323
- readonly types?: Record<string, StorageTypeInstance>;
324
- };
649
+ }
650
+ /**
651
+ * Construction-time input for a codec-triple entry. Symmetric with the
652
+ * structural runtime shape minus the `kind` discriminator — callers may
653
+ * omit `kind`; the helper {@link toStorageTypeInstance} stamps it on.
654
+ */
655
+ interface StorageTypeInstanceInput {
656
+ readonly codecId: string;
657
+ readonly nativeType: string;
658
+ readonly typeParams: Record<string, unknown>;
659
+ }
660
+ /**
661
+ * Stamp the codec-instance `kind` discriminator on a caller-supplied
662
+ * codec triple. Idempotent: input that already carries the discriminator
663
+ * passes through unchanged.
664
+ */
665
+ //#endregion
666
+ //#region src/ir/sql-storage.d.ts
667
+ /**
668
+ * Polymorphic value type for `SqlStorage.types` entries (Decision 18,
669
+ * Option B). The slot's framework alphabet is `StorageType` — codec
670
+ * triples (`StorageTypeInstance` with `kind: 'codec-instance'`) and
671
+ * target-specific IR class instances structurally satisfying
672
+ * `PostgresEnumStorageEntry` (with `kind: 'postgres-enum'`) are the
673
+ * two variants the SQL family ships today. The construction side also
674
+ * accepts {@link StorageTypeInstanceInput} so callers can pass raw
675
+ * codec triples; the constructor stamps the discriminator.
676
+ */
677
+ type SqlStorageTypeEntry = StorageTypeInstance | PostgresEnumStorageEntry | StorageTypeInstanceInput;
678
+ interface SqlStorageInput<THash extends string = string> {
679
+ readonly storageHash: StorageHashBase<THash>;
680
+ readonly tables: Record<string, StorageTable | StorageTableInput>;
681
+ readonly types?: Record<string, SqlStorageTypeEntry>;
682
+ readonly namespaces?: Readonly<Record<string, Namespace>>;
683
+ }
684
+ /**
685
+ * SQL Contract IR root node for the `storage` field.
686
+ *
687
+ * Single concrete family-shared class — both Postgres and SQLite
688
+ * consume this same class today. Per-target storage subclasses are
689
+ * introduced when each target's namespace shape earns its
690
+ * target-specific concretion (target-specific derived fields,
691
+ * target-specific storage extensions).
692
+ *
693
+ * Honours the framework `Storage` interface: every SQL IR carries a
694
+ * `namespaces` map keyed by namespace id. The default singleton
695
+ * (`{ [UNSPECIFIED_NAMESPACE_ID]: SqlUnspecifiedNamespace.instance }`)
696
+ * binds every contract authored before per-target namespace concretions
697
+ * land; per-target namespace classes (`PostgresSchema.unspecified`,
698
+ * `SqliteUnspecifiedDatabase.instance`) earn their slots when each
699
+ * target's namespace shape lands.
700
+ *
701
+ * The constructor normalises nested IR-class fields (`tables`, optional
702
+ * `types`) into class instances so downstream walks see a uniform AST.
703
+ * `types` is polymorphic per Decision 18 Option B: codec-triple inputs
704
+ * are stamped with `kind: 'codec-instance'`; class-instance kinds
705
+ * (e.g. Postgres-enum entries satisfying `PostgresEnumStorageEntry`)
706
+ * pass through; hydration of raw JSON class-instance entries (carrying
707
+ * their narrower `kind` literal) is the per-target serializer's
708
+ * responsibility (so the family base does not import target-specific
709
+ * subclasses).
710
+ */
711
+ declare class SqlStorage<THash extends string = string> extends SqlNode implements Storage {
712
+ readonly storageHash: StorageHashBase<THash>;
713
+ readonly tables: Readonly<Record<string, StorageTable>>;
714
+ readonly namespaces: Readonly<Record<string, Namespace>>;
715
+ readonly types?: Readonly<Record<string, StorageTypeInstance | PostgresEnumStorageEntry>>;
716
+ constructor(input: SqlStorageInput<THash>);
717
+ } //#endregion
718
+ //#region src/ir/sql-unspecified-namespace.d.ts
719
+ /**
720
+ * Family-layer placeholder for the SQL unspecified-namespace singleton.
721
+ *
722
+ * SQL contracts honour the framework `Storage.namespaces` invariant from
723
+ * the moment they appear in the IR. Today `SqlStorage` is family-shared
724
+ * (Postgres + SQLite consume the same class); a per-target namespace
725
+ * concretion (`PostgresSchema.unspecified`, `SqliteUnspecifiedDatabase.instance`)
726
+ * earns its existence when each target's namespace shape lands. Until
727
+ * then the family ships a single placeholder singleton so the JSON
728
+ * envelope and runtime walk are honest at every layer.
729
+ *
730
+ * The `kind` discriminator is installed as a non-enumerable own property
731
+ * so the JSON envelope reads `{ "id": "__unspecified__" }` — symmetric
732
+ * with the family-level non-enumerable `kind` on `SqlNode` and bounded
733
+ * to the minimum data the framework `Namespace` interface promises.
734
+ *
735
+ * **Freeze-trap warning.** The leaf constructor calls
736
+ * `freezeNode(this)` after installing `kind`. The leaf-class shape
737
+ * works today only because `NamespaceBase` does NOT freeze in its
738
+ * constructor — the `Object.defineProperty(this, 'kind', …)` call after
739
+ * `super()` succeeds because the instance is still mutable at that
740
+ * point. Subclasses that add instance fields will still hit the freeze
741
+ * trap once leaf-class `freezeNode(this)` runs; and if a future
742
+ * framework change lifts the freeze to `NamespaceBase`, even the
743
+ * `defineProperty` here would silently fail. To add subclass instance
744
+ * fields safely, lift `freezeNode` to a leaf-class `seal()` hook each
745
+ * leaf calls explicitly at the end of its own constructor.
746
+ */
325
747
  type CodecTypesOf<T> = [T] extends [never] ? Record<string, never> : T extends {
326
748
  readonly codecTypes: infer C;
327
749
  } ? C extends Record<string, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":["ScalarFieldType","Record","kind","codecId","typeParams","ValueObjectFieldType","name","UnionFieldType","ReadonlyArray","members","ContractFieldType","ContractField","nullable","type","many","dict","ContractRelationOn","localFields","targetFields","ContractReferenceRelation","to","cardinality","on","ContractEmbedRelation","ContractRelation","ContractDiscriminator","field","ContractVariantEntry","value","ContractValueObject","fields","ModelStorageBase","Readonly","ContractModelBase","TModelStorage","relations","storage","discriminator","variants","base","owner","ContractModel","HasModelsWithRelations","models","ReferenceRelationKeys","TContract","ModelName","K","EmbedRelationKeys","$","Brand","TKey","TValue","StorageHashBase","THash","ExecutionHashBase","executionHash","T","coreHash","ProfileHashBase","profileHash","StorageBase","storageHash","FieldType","items","properties","GeneratedValueSpec","id","params","JsonPrimitive","JsonValue","key","ColumnDefaultLiteralValue","ColumnDefaultLiteralInputValue","Date","isColumnDefaultLiteralInputValue","ColumnDefault","expression","isColumnDefault","ExecutionMutationDefaultValue","isExecutionMutationDefaultValue","ExecutionMutationDefault","ref","table","column","onCreate","onUpdate","ExecutionMutationDefaultPhases","Omit","ExecutionSection","mutations","defaults","Source","readOnly","projection","origin","capabilities","DocIndex","Expr","keys","unique","where","path","DocCollection","strategy","indexes","PlanMeta","target","targetFamily","lane","annotations","ContractMarkerRecord","contractJson","canonicalVersion","updatedAt","appTag","meta","invariants","ContractExecutionSection","Contract","TStorage","TModels","roots","valueObjects","extensionPacks","execution","A","B","C","D","E","F","G","H","I","J","L","M","N","O","P","R","S","U","V","W","_","a","b","c","d","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","ColumnDefault","StorageBase","CodecTrait","StorageColumn","Record","nativeType","codecId","nullable","typeParams","typeRef","default","PrimaryKey","columns","name","UniqueConstraint","Index","type","options","ForeignKeyReferences","table","ReferentialAction","ForeignKeyOptions","onDelete","onUpdate","ForeignKey","references","constraint","index","StorageTable","ReadonlyArray","primaryKey","uniques","indexes","foreignKeys","StorageTypeInstance","SqlStorage","THash","tables","types","SqlModelFieldStorage","column","SqlModelStorage","fields","DEFAULT_FK_CONSTRAINT","DEFAULT_FK_INDEX","applyFkDefaults","fk","overrideDefaults","TypeMaps","TCodecTypes","TQueryOperationTypes","TFieldOutputTypes","TFieldInputTypes","output","codecTypes","queryOperationTypes","fieldOutputTypes","fieldInputTypes","CodecTypesOf","T","C","QueryOperationSelfSpec","traits","QueryOperationReturn","returnType","QueryOperationTypeEntry","self","impl","args","SqlQueryOperationTypes","_CT","input","QueryOperationTypesBase","QueryOperationTypesOf","Q","TypeMapsPhantomKey","ContractWithTypeMaps","TContract","TTypeMaps","K","ExtractTypeMapsFromContract","NonNullable","FieldOutputTypesOf","F","FieldInputTypesOf","ExtractCodecTypes","ExtractQueryOperationTypes","ExtractFieldOutputTypes","ExtractFieldInputTypes","ResolveCodecTypes","A","D","E","M","N","O","P","S","_","a","b","c","d","f","g","h","i","j","k","l","m","n","o","p","r","s","t","u","v","w","x","y"],"sources":["../../../../1-framework/0-foundation/contract/dist/contract-types-Kl86EaEa.d.mts","../src/type-errors.ts","../src/column-reference.ts","../../../1-core/contract/dist/types-njsiV-Ck.d.mts","../src/table-reference.ts","../src/ref.ts","../src/type-atoms.ts","../src/selection.ts","../src/select-builder.ts","../src/root.ts"],"mappings":";;KACKA,eAAAA;EAAAA,SACME,IAAAA;EAAAA,SACAC,OAAAA;EAAAA,SACAC,UAAAA,GAAaH,MAAAA;AAAAA;AAAAA,KAEnBI,oBAAAA;EAAAA,SACMH,IAAAA;EAAAA,SACAI,IAAAA;AAAAA;AAAAA,KAENC,cAAAA;EAAAA,SACML,IAAAA;EAAAA,SACAO,OAAAA,EAASD,aAAAA,CAAcR,eAAAA,GAAkBK,oBAAAA;AAAAA;AAAAA,KAE/CK,iBAAAA,GAAoBV,eAAAA,GAAkBK,oBAAAA,GAAuBE,cAAAA;AAAAA,KAC7DI,aAAAA;EAAAA,SACMC,QAAAA;EAAAA,SACAC,IAAAA,EAAMH,iBAAAA;EAAAA,SACNI,IAAAA;EAAAA,SACAC,IAAAA;AAAAA;AAAAA,KAENC,kBAAAA;EAAAA,SACMC,WAAAA;EAAAA,SACAC,YAAAA;AAAAA;AAAAA,KAENC,yBAAAA;EAAAA,SACMC,EAAAA;EAAAA,SACAC,WAAAA;EAAAA,SACAC,EAAAA,EAAIN,kBAAAA;AAAAA;AAAAA,KAEVO,qBAAAA;EAAAA,SACMH,EAAAA;EAAAA,SACAC,WAAAA;AAAAA;AAAAA,KAENG,gBAAAA,GAAmBL,yBAAAA,GAA4BI,qBAAAA;AAAAA,KAC/CE,qBAAAA;EAAAA,SACMC,KAAAA;AAAAA;AAAAA,KAENC,oBAAAA;EAAAA,SACMC,KAAAA;AAAAA;AAAAA,KAENC,mBAAAA;EAAAA,SACMC,MAAAA,EAAQ7B,MAAAA,SAAeU,aAAAA;AAAAA;AAAAA,KAE7BoB,gBAAAA,GAAmBC,QAAAA,CAAS/B,MAAAA;AAAAA,UACvBgC,iBAAAA,uBAAwCF,gBAAAA,GAAmBA,gBAAAA;EAAAA,SAC1DD,MAAAA,EAAQ7B,MAAAA,SAAeU,aAAAA;EAAAA,SACvBwB,SAAAA,EAAWlC,MAAAA,SAAeuB,gBAAAA;EAAAA,SAC1BY,OAAAA,EAASF,aAAAA;EAAAA,SACTG,aAAAA,GAAgBZ,qBAAAA;EAAAA,SAChBa,QAAAA,GAAWrC,MAAAA,SAAe0B,oBAAAA;EAAAA,SAC1BY,IAAAA;EAAAA,SACAC,KAAAA;AAAAA;AAAAA;AAAAA;;;;cAiBGS,CAAAA;;;AAzCmB;;;;KAgD5BC,KAAAA;EAAAA,CACFD,CAAAA,WAAYE,IAAAA,GAAOC,MAAAA;AAAAA;;;;AA3CmD;;KAkDpEC,eAAAA,yBAAwCC,KAAAA,GAAQJ,KAAAA;;;AAhDrC;;;KAsDXK,iBAAAA,yBAA0CD,KAAAA,GAAQJ,KAAAA;;;;;;KAQlDS,eAAAA,yBAAwCL,KAAAA,GAAQJ,KAAAA;;AAxDN;;;;UA+DrCW,WAAAA;EAAAA,SACCC,WAAAA,EAAaT,eAAAA,CAAgBC,KAAAA;AAAAA;AAAAA,KAQnCY,kBAAAA;EAAAA,SACMC,EAAAA;EAAAA,SACAC,MAAAA,GAASnE,MAAAA;AAAAA;AAAAA,KAEfoE,aAAAA;AAAAA,KACAC,SAAAA,GAAYD,aAAAA;EAAAA,UACLE,GAAAA,WAAcD,SAAAA;AAAAA,aACbA,SAAAA;AAAAA,KACRE,yBAAAA,GAA4BF,SAAAA;AAAAA,KAC5BG,8BAAAA,GAAiCD,yBAAAA,GAA4BE,IAAAA;;;;;;;;;KAU7DE,aAAAA;EAAAA,SACM1E,IAAAA;EAAAA,SACA0B,KAAAA,EAAO6C,8BAAAA;AAAAA;EAAAA,SAEPvE,IAAAA;EAAAA,SACA2E,UAAAA;AAAAA;AAAAA,KAGNE,6BAAAA;EAAAA,SACM7E,IAAAA;EAAAA,SACAiE,EAAAA,EAAID,kBAAAA;EAAAA,SACJE,MAAAA,GAASnE,MAAAA;AAAAA;AAAAA,KAGfgF,wBAAAA;EAAAA,SACMC,GAAAA;IAAAA,SACEC,KAAAA;IAAAA,SACAC,MAAAA;EAAAA;EAAAA,SAEFC,QAAAA,GAAWN,6BAAAA;EAAAA,SACXO,QAAAA,GAAWP,6BAAAA;AAAAA;;;;;;;;;;;;;AAhCA;;;KA6GjBuC,wBAAAA;EAAAA,SACM9D,aAAAA,EAAeD,iBAAAA,CAAkBD,KAAAA;EAAAA,SACjCoC,SAAAA;IAAAA,SACEC,QAAAA,EAAUnF,aAAAA,CAAcyE,wBAAAA;EAAAA;AAAAA;;AArGqE;;;;;;;;;;;AAQlC;;;UA+G9DsC,QAAAA,kBAA0B1D,WAAAA,GAAcA,WAAAA,kBAA6B5D,MAAAA,SAAegC,iBAAAA,IAAqBhC,MAAAA,SAAegC,iBAAAA;EAAAA,SACvH0E,MAAAA;EAAAA,SACAC,YAAAA;EAAAA,SACAc,KAAAA,EAAOzH,MAAAA;EAAAA,SACP0C,MAAAA,EAAQ8E,OAAAA;EAAAA,SACRE,YAAAA,GAAe1H,MAAAA,SAAe4B,mBAAAA;EAAAA,SAC9BO,OAAAA,EAASoF,QAAAA;EAAAA,SACTxB,YAAAA,EAAc/F,MAAAA,SAAeA,MAAAA;EAAAA,SAC7B2H,cAAAA,EAAgB3H,MAAAA;EAAAA,SAChB4H,SAAAA,GAAYP,wBAAAA;EAAAA,SACZ1D,WAAAA,EAAaD,eAAAA;EAAAA,SACbyD,IAAAA,EAAMnH,MAAAA;AAAAA;;;;;;;;KC/PL,YAAA;;;;;;;KAQA,qCAAA,kBAAuD,YAAA,IAAgB,KAAA,CAAM,QAAA;;;;;;;;;;KCL7E,eAAA,wFAGI,eAAA,WAA0B,eAAA;EAAA,SAE/B,OAAA,EAAS,WAAA;EAAA,SACT,QAAA,EAAU,UAAA;AAAA,IACjB,KAAA,8EAEC,UAAA,IAAc,KAAA;AFfW;;;;;AAIf;AAJe,KEwBlB,iCAAA,kBAAmD,YAAA,IAAgB,KAAA,CAAM,QAAA;;;;KAKzE,QAAA;EAAA,SACD,OAAA;EAAA,SACA,QAAA;AAAA,IACP,KAAA;;;;;;;KAQQ,aAAA,mDAEI,eAAA,WAA0B,eAAA;EAAA,SAE/B,OAAA;EAAA,SACA,QAAA,EAAU,UAAA;AAAA,IACjB,KAAA,oFAEC,UAAA,IAAc,KAAA;;;;;;;;;;;KCzCd8K,aAAAA;EAAAA,SACME,UAAAA;EAAAA,SACAC,OAAAA;EAAAA,SACAC,QAAAA;;;;AHNI;;WGYJC,UAAAA,GAAaJ,MAAAA;EHRUhL;;;;EAAAA,SGavBqL,OAAAA;EHdAnL;;;;EAAAA,SGmBAoL,OAAAA,GAAUV,aAAAA;AAAAA;AAAAA,KAEhBW,UAAAA;EAAAA,SACMC,OAAAA;EAAAA,SACAC,IAAAA;AAAAA;AAAAA,KAENC,gBAAAA;EAAAA,SACMF,OAAAA;EAAAA,SACAC,IAAAA;AAAAA;AAAAA,KAENE,KAAAA;EAAAA,SACMH,OAAAA;EAAAA,SACAC,IAAAA;EAAAA,SACAG,IAAAA;EAAAA,SACAC,OAAAA,GAAUb,MAAAA;AAAAA;AAAAA,KAEhBc,oBAAAA;EAAAA,SACMC,KAAAA;EAAAA,SACAP,OAAAA;AAAAA;AAAAA,KAENQ,iBAAAA;AAAAA,KAMAI,UAAAA;EAAAA,SACMZ,OAAAA;EAAAA,SACAa,UAAAA,EAAYP,oBAAAA;EAAAA,SACZL,IAAAA;EAAAA,SACAS,QAAAA,GAAWF,iBAAAA;EAAAA,SACXG,QAAAA,GAAWH,iBAAAA,EHtCC;EAAA,SGuCZM,UAAAA,WHrCmB;EAAA,SGsCnBC,KAAAA;AAAAA;AAAAA,KAENC,YAAAA;EAAAA,SACMhB,OAAAA,EAASR,MAAAA,SAAeD,aAAAA;EAAAA,SACxB2B,UAAAA,GAAanB,UAAAA;EAAAA,SACboB,OAAAA,EAASF,aAAAA,CAAcf,gBAAAA;EAAAA,SACvBkB,OAAAA,EAASH,aAAAA,CAAcd,KAAAA;EAAAA,SACvBkB,WAAAA,EAAaJ,aAAAA,CAAcL,UAAAA;AAAAA;AH1CL;;;;;AAIX;;;;;AAJW,KGsD5BU,mBAAAA;EAAAA,SACM5B,OAAAA;EAAAA,SACAD,UAAAA;EAAAA,SACAG,UAAAA,EAAYJ,MAAAA;AAAAA;AAAAA,KAElB+B,UAAAA,kCAA4ClC,WAAAA,CAAYmC,KAAAA;EAAAA,SAClDC,MAAAA,EAAQjC,MAAAA,SAAewB,YAAAA;;;;AHjDlB;WGsDLU,KAAAA,GAAQlC,MAAAA,SAAe8B,mBAAAA;AAAAA;AAAAA,KA+B7BwB,YAAAA,OAAmBC,CAAAA,oBAAqBvD,MAAAA,kBAAwBuD,CAAAA;EAAAA,SAC1DL,UAAAA;AAAAA,IACPM,CAAAA,SAAUxD,MAAAA;EACZiD,MAAAA;AAAAA,KACGO,CAAAA,GAAIxD,MAAAA,kBAAwBA,MAAAA;;;;;;;;KAyC5BuE,kBAAAA;AAAAA,KAEAK,2BAAAA,MAAiCL,kBAAAA,eAAiChB,CAAAA,GAAIsB,WAAAA,CAAYtB,CAAAA,CAAEgB,kBAAAA,SAA2BhB,CAAAA;AAAAA,KAO/G0B,iBAAAA,MAAuB3B,YAAAA,CAAasB,2BAAAA,CAA4BrB,CAAAA;;;;;;;;;KCzKzD,cAAA,8CAEI,eAAA,WAA0B,eAAA;EAAA,SAE/B,OAAA,EAAS,KAAA;AAAA,IAChB,KAAA,yFAEF,KAAA;;;AJZ4B;;;;KIqBlB,gCAAA,kBAAkD,YAAA,IAAgB,KAAA,CAAM,QAAA;AJjBrE;;;;;;AAAA,KIyBH,0BAAA,kBAA4C,YAAA,IAAgB,KAAA,CAAM,QAAA;;;;;;;;KClBlE,GAAA,mBAAsB,QAAA,CAAS,UAAA,oCACZ,SAAA,iCAA0C,cAAA,CACrE,SAAA,EACA,SAAA,wDAEwB,OAAA,OAChB,SAAA,sBAA+B,SAAA,oBAC/B,cAAA,aAEG,eAAA,CAAgB,UAAA,EAAY,SAAA,EAAW,SAAA;EAAA,UAExC,GAAA,GAAM,aAAA,CAAc,SAAA,EAAW,SAAA;AAAA,IACvC,MAAA,CACA,WAAA,EACA,iCAAA,uDAAwF,SAAA;EAAA,UAGlF,GAAA,GAAM,QAAA;AAAA,IACd,MAAA,CACA,WAAA,EACA,gCAAA;AL3BW;;;;;AAAA,iBKmCC,SAAA,mBAA4B,QAAA,CAAS,UAAA,EAAA,CACnD,SAAA,EAAW,SAAA,GACV,GAAA,CAAI,SAAA;;;;;;;;KCxCK,iBAAA,YAA6B,MAAA,sBAA4B,MAAA;;;;;;KAOzD,kBAAA,yCACE,OAAA,KAAY,OAAA,CAAQ,OAAA,OAAc,OAAA,EAAS,CAAA,WACjD,OAAA;;;;;ANNO;;KMcH,YAAA,qDAAiE,iBAAA,CAC3E,OAAA,CAAQ,QAAA,iBACJ,QAAA,0BAEuB,QAAA,SAAiB,QAAA,GAAW,CAAA,eAAgB,QAAA,GAC7D,QAAA,CAAS,CAAA,IACT,CAAA,eAAgB,QAAA,GACd,QAAA,CAAS,CAAA;;;;;;KAUX,OAAA,YAAmB,MAAA;;;;;AN3ByC;KMkC5D,QAAA,2BAAmC,iBAAA,eAC/B,OAAA,GAAU,OAAA,CAAQ,CAAA;;;;;;;;;;;KCnCtB,iBAAA,mBACQ,QAAA,CAAS,UAAA,4BACF,SAAA,0DACC,SAAA,sBAA+B,UAAA,kCAC9C,SAAA,sBAA+B,UAAA,aAAuB,WAAA,KAC/D,QAAA,SAAiB,aAAA,IAEZ,QAAA,4CACD,iBAAA,CAAkB,SAAA,EAAW,QAAA;;APhBP;;;KOuBlB,SAAA,GAAY,MAAA,SAAe,cAAA;;APnBxB;;;;;UO2BE,cAAA;EAAA,SACN,WAAA,EAAa,SAAA;EAAA,SACb,SAAA,EAAW,OAAA;AAAA;;;;;;;KASV,gBAAA,mBACQ,QAAA,CAAS,UAAA,4BACF,SAAA,kCACvB,iBAAA,iCAC4B,SAAA,sBAA+B,UAAA,wBAClD,cAAA,CACT,iBAAA,CAAkB,SAAA,EAAW,UAAA,EAAY,UAAA,GACzC,SAAA,sBAA+B,UAAA,aAAuB,UAAA;;;;;;;;;;cCvC7C,aAAA,mBACO,QAAA,CAAS,UAAA,mBACX,QAAA,CAAS,UAAA,2CACN,SAAA;EAAA;cAMP,QAAA,EAAU,SAAA;EAItB,MAAA,CACE,QAAA,EAAU,QAAA,GACT,kBAAA,CAAmB,OAAA,iBAClB,aAAA,CACE,SAAA,EACA,OAAA,EACA,YAAA,CAAa,UAAA,EAAY,gBAAA,CAAiB,SAAA,QAAiB,OAAA,eAE7D,qCAAA;EACJ,MAAA,0BAAgC,OAAA,UAAA,CAC9B,QAAA,EAAU,aAAA,CAAc,UAAA,EAAY,SAAA,8BACnC,aAAA,CACD,SAAA,EACA,OAAA,EACA,YAAA,CAAa,UAAA,EAAY,gBAAA,CAAiB,SAAA,EAAW,UAAA;EAEvD,MAAA,CACE,GAAA,UACC,qCAAA;EAQH,KAAA,CAAA,GAAS,OAAA,CAAQ,UAAA,yBAGb,QAAA,CAAS,UAAA;AAAA;;;;;;;;cC7CF,IAAA,mBAAuB,QAAA,CAAS,UAAA;EAAA;cAG/B,QAAA,EAAU,SAAA;ETRnBlO;;;;;ESiBH,IAAA,CACE,KAAA,EAAO,cAAA,UACN,qCAAA;ETfc;;;ESmBjB,IAAA,sBAAA,CACE,KAAA,iBAAsB,KAAA,GAClB,0BAAA,0FACA,cAAA,CAAe,KAAA,EAAO,SAAA,8BACzB,KAAA,kBACC,aAAA,CAAc,SAAA,EAAW,IAAA,CAAK,SAAA,uBAAgC,KAAA,KAC9D,qCAAA;EACJ,IAAA,CACE,KAAA,EAAO,0BAAA,0FACN,qCAAA;AAAA;;;;iBAaW,UAAA,CACd,QAAA,UACC,qCAAA;;;;iBAIa,UAAA,mBAA6B,QAAA,CAAS,UAAA,EAAA,CACpD,QAAA,EAAU,SAAA,GACT,IAAA,CAAK,SAAA"}
1
+ {"version":3,"file":"index.d.mts","names":["ScalarFieldType","Record","kind","codecId","typeParams","ValueObjectFieldType","name","UnionFieldType","ReadonlyArray","members","ContractFieldType","ContractField","nullable","type","many","dict","ContractRelationOn","localFields","targetFields","ContractReferenceRelation","to","cardinality","on","ContractEmbedRelation","ContractRelation","ContractDiscriminator","field","ContractVariantEntry","value","ContractValueObject","fields","ModelStorageBase","Readonly","ContractModelBase","TModelStorage","relations","storage","discriminator","variants","base","owner","ContractModel","HasModelsWithRelations","models","ReferenceRelationKeys","TContract","ModelName","K","EmbedRelationKeys","$","Brand","TKey","TValue","StorageHashBase","THash","ExecutionHashBase","executionHash","T","coreHash","ProfileHashBase","profileHash","StorageBase","storageHash","FieldType","items","properties","GeneratedValueSpec","id","params","JsonPrimitive","JsonValue","key","ColumnDefaultLiteralValue","ColumnDefaultLiteralInputValue","Date","isColumnDefaultLiteralInputValue","ColumnDefault","expression","isColumnDefault","ExecutionMutationDefaultValue","isExecutionMutationDefaultValue","ExecutionMutationDefault","ref","table","column","onCreate","onUpdate","ExecutionMutationDefaultPhases","Omit","ExecutionSection","mutations","defaults","Source","readOnly","projection","origin","capabilities","DocIndex","Expr","keys","unique","where","path","DocCollection","strategy","indexes","PlanMeta","target","targetFamily","lane","annotations","ContractMarkerRecord","contractJson","canonicalVersion","updatedAt","appTag","meta","invariants","ContractExecutionSection","Contract","TStorage","TModels","roots","valueObjects","extensionPacks","execution","A","B","C","D","E","F","G","H","I","J","L","M","N","O","P","R","S","U","V","W","_","a","b","c","d","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","IRNode","kind","IRNodeBase","freezeNode","T","node","UNSPECIFIED_NAMESPACE_ID","Namespace","id","NamespaceBase","Storage","Record","Readonly","namespaces","StorageType","IRNodeBase","Namespace","NamespaceBase","Storage","StorageType","ColumnDefault","StorageHashBase","CodecTrait","SqlNode","kind","constructor","ForeignKeyReferencesInput","table","columns","ForeignKeyReferences","input","ReferentialAction","ForeignKeyInput","references","name","onDelete","onUpdate","constraint","index","ForeignKey","POSTGRES_ENUM_KIND","PostgresEnumStorageEntry","nativeType","values","codecId","isPostgresEnumStorageEntry","value","PrimaryKeyInput","PrimaryKey","IndexInput","Record","type","options","Index","StorageColumnInput","nullable","typeParams","typeRef","default","StorageColumn","UniqueConstraintInput","UniqueConstraint","StorageTableInput","ReadonlyArray","primaryKey","uniques","indexes","foreignKeys","StorageTable","Readonly","CODEC_INSTANCE_KIND","StorageTypeInstance","StorageTypeInstanceInput","toStorageTypeInstance","isStorageTypeInstance","SqlStorageTypeEntry","SqlStorageInput","THash","storageHash","tables","types","namespaces","SqlStorage","SqlUnspecifiedNamespace","instance","id","ForeignKeyOptions","SqlModelFieldStorage","column","SqlModelStorage","fields","DEFAULT_FK_CONSTRAINT","DEFAULT_FK_INDEX","applyFkDefaults","fk","overrideDefaults","TypeMaps","TCodecTypes","TQueryOperationTypes","TFieldOutputTypes","TFieldInputTypes","output","codecTypes","queryOperationTypes","fieldOutputTypes","fieldInputTypes","CodecTypesOf","T","C","QueryOperationSelfSpec","traits","QueryOperationReturn","returnType","QueryOperationTypeEntry","self","impl","args","SqlQueryOperationTypes","_CT","QueryOperationTypesBase","QueryOperationTypesOf","Q","TypeMapsPhantomKey","ContractWithTypeMaps","TContract","TTypeMaps","K","ExtractTypeMapsFromContract","NonNullable","FieldOutputTypesOf","F","FieldInputTypesOf","ExtractCodecTypes","ExtractQueryOperationTypes","ExtractFieldOutputTypes","ExtractFieldInputTypes","ResolveCodecTypes","A","B","D","E","G","H","I","J","L","M","N","O","P","R","S","U","V","W","X","Y","Z","_","a","b","c","d","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"],"sources":["../../../../1-framework/0-foundation/contract/dist/contract-types-Kl86EaEa.d.mts","../src/type-errors.ts","../src/column-reference.ts","../../../../1-framework/1-core/framework-components/dist/ir.d.mts","../../../1-core/contract/dist/types-B_diLlWt.d.mts","../src/table-reference.ts","../src/ref.ts","../src/type-atoms.ts","../src/selection.ts","../src/select-builder.ts","../src/root.ts"],"mappings":"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"}
package/package.json CHANGED
@@ -1,18 +1,18 @@
1
1
  {
2
2
  "name": "@prisma-next/sql-lane-query-builder",
3
- "version": "0.7.0",
3
+ "version": "0.8.0-dev.2",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "sideEffects": false,
7
7
  "description": "SQL query builder lane for Prisma Next",
8
8
  "devDependencies": {
9
+ "@prisma-next/contract": "0.8.0-dev.2",
10
+ "@prisma-next/sql-contract": "0.8.0-dev.2",
11
+ "@prisma-next/tsconfig": "0.8.0-dev.2",
12
+ "@prisma-next/tsdown": "0.8.0-dev.2",
9
13
  "tsdown": "0.22.0",
10
14
  "typescript": "5.9.3",
11
- "vitest": "4.1.5",
12
- "@prisma-next/contract": "0.7.0",
13
- "@prisma-next/sql-contract": "0.7.0",
14
- "@prisma-next/tsconfig": "0.7.0",
15
- "@prisma-next/tsdown": "0.7.0"
15
+ "vitest": "4.1.5"
16
16
  },
17
17
  "files": [
18
18
  "dist",
@@ -25,8 +25,6 @@
25
25
  ".": "./dist/index.mjs",
26
26
  "./package.json": "./package.json"
27
27
  },
28
- "main": "./dist/index.mjs",
29
- "module": "./dist/index.mjs",
30
28
  "types": "./dist/index.d.mts",
31
29
  "repository": {
32
30
  "type": "git",