@prisma-next/sql-lane-query-builder 0.13.0-dev.3 → 0.13.0-dev.30

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
@@ -1,4 +1,4 @@
1
- //#region ../../../1-framework/0-foundation/contract/dist/domain-envelope-OkWsysCY.d.mts
1
+ //#region ../../../1-framework/0-foundation/contract/dist/domain-envelope-Czz8UMhU.d.mts
2
2
  //#region src/namespace-id.d.ts
3
3
  type NamespaceId = string & {
4
4
  readonly __brand: 'NamespaceId';
@@ -16,31 +16,140 @@ interface CrossReference {
16
16
  readonly space?: string;
17
17
  }
18
18
  //#endregion
19
+ //#region src/types.d.ts
20
+ /**
21
+ * Unique symbol used as the key for branding types.
22
+ */
23
+ declare const $: unique symbol;
24
+ /**
25
+ * A helper type to brand a given type with a unique identifier.
26
+ *
27
+ * @template TKey Text used as the brand key.
28
+ * @template TValue Optional value associated with the brand key. Defaults to `true`.
29
+ */
30
+ type Brand<TKey extends string | number | symbol, TValue = true> = {
31
+ [$]: { [K in TKey]: TValue };
32
+ };
33
+ /**
34
+ * Base type for storage contract hashes.
35
+ * Emitted contract.d.ts files use this with the hash value as a type parameter:
36
+ * `type StorageHash = StorageHashBase<'sha256:abc123...'>`
37
+ */
38
+ type StorageHashBase<THash extends string> = THash & Brand<'StorageHash'>;
39
+ /**
40
+ * Base type for execution contract hashes.
41
+ * Emitted contract.d.ts files use this with the hash value as a type parameter:
42
+ * `type ExecutionHash = ExecutionHashBase<'sha256:def456...'>`
43
+ */
44
+ type ExecutionHashBase<THash extends string> = THash & Brand<'ExecutionHash'>;
45
+ /**
46
+ * Base type for profile contract hashes.
47
+ * Emitted contract.d.ts files use this with the hash value as a type parameter:
48
+ * `type ProfileHash = ProfileHashBase<'sha256:def456...'>`
49
+ */
50
+ type ProfileHashBase<THash extends string> = THash & Brand<'ProfileHash'>;
51
+ /**
52
+ * One entity-kind slot in a namespace — a map of entity name to entry.
53
+ * Values are opaque at the foundation layer; family and target concretions
54
+ * refine them to typed IR classes.
55
+ */
56
+ type StorageEntitySlot = Readonly<Record<string, unknown>>;
57
+ /**
58
+ * Plain-data namespace entry in a storage block. Every hydrated contract
59
+ * carries at least `id` plus entity-kind slot maps under `entries`
60
+ * (`table`, `collection`, …). Foundation declares only this shape — no IR
61
+ * machinery.
62
+ */
63
+ interface StorageNamespace {
64
+ readonly id: string;
65
+ readonly entries: Readonly<Record<string, StorageEntitySlot>>;
66
+ }
67
+ /**
68
+ * Base type for family-specific storage blocks.
69
+ * Family storage types (SqlStorage, MongoStorage, etc.) extend this to carry the
70
+ * storage hash alongside family-specific data (tables, collections, etc.).
71
+ *
72
+ * The `namespaces` map is carried by every hydrated storage block. Serialized
73
+ * envelope shape is target-owned; this types the in-memory contract after
74
+ * `deserializeContract`.
75
+ */
76
+ interface StorageBase<THash extends string = string> {
77
+ readonly storageHash: StorageHashBase<THash>;
78
+ readonly namespaces: Readonly<Record<string, StorageNamespace>>;
79
+ }
80
+ type GeneratedValueSpec = {
81
+ readonly id: string;
82
+ readonly params?: Record<string, unknown>;
83
+ };
84
+ type JsonPrimitive = string | number | boolean | null;
85
+ type JsonValue = JsonPrimitive | {
86
+ readonly [key: string]: JsonValue;
87
+ } | readonly JsonValue[];
88
+ type ColumnDefaultLiteralValue = JsonValue;
89
+ type ColumnDefaultLiteralInputValue = ColumnDefaultLiteralValue | Date;
90
+ /**
91
+ * Runtime predicate for `ColumnDefaultLiteralInputValue`. Authoring layers
92
+ * resolve template values from caller-supplied args (typed `unknown` at the
93
+ * boundary) and need to validate before constructing a `ColumnDefault`.
94
+ * Accepts JSON primitives, plain arrays/objects of JSON values, and `Date`
95
+ * instances. Rejects functions, class instances (other than `Date`),
96
+ * `undefined`, `bigint`, `symbol`, and arrays/objects containing those.
97
+ */
98
+ type ColumnDefault = {
99
+ readonly kind: 'literal';
100
+ readonly value: ColumnDefaultLiteralInputValue;
101
+ } | {
102
+ readonly kind: 'function';
103
+ readonly expression: string;
104
+ };
105
+ type ExecutionMutationDefaultValue = {
106
+ readonly kind: 'generator';
107
+ readonly id: GeneratedValueSpec['id'];
108
+ readonly params?: Record<string, unknown>;
109
+ };
110
+ type ExecutionMutationDefault = {
111
+ readonly ref: {
112
+ readonly table: string;
113
+ readonly column: string;
114
+ };
115
+ readonly onCreate?: ExecutionMutationDefaultValue;
116
+ readonly onUpdate?: ExecutionMutationDefaultValue;
117
+ };
118
+ /**
119
+ * `ExecutionMutationDefault` minus its `ref` — the per-field phases value
120
+ * authoring layers attach to a column before the column ref is known.
121
+ */
122
+ //#endregion
19
123
  //#region src/value-set-ref.d.ts
20
124
  /**
21
- * Space-aware reference coordinate for a domain enum or storage value-set.
125
+ * Entity coordinate for a domain enum or storage value-set reference.
126
+ *
127
+ * Field-name identity with the framework's `EntityCoordinate` type
128
+ * (packages/1-framework/1-core/framework-components/src/ir/storage.ts).
129
+ * Foundation-contract cannot import framework-components (dependency points
130
+ * the other way), so this is a standalone mirror of that shape plus the
131
+ * cross-space discriminator.
22
132
  *
23
- * `plane` names the contract plane the referenced entity lives in:
24
- * - `'domain'` the entity lives in the domain plane's `enum` slot.
25
- * - `'storage'` the entity lives in the storage plane's `valueSet` slot.
133
+ * One-vocabulary rule (ADR 224): `entityKind` is equal to the entries slot
134
+ * key the referenced entity lives under `'enum'` for domain's `enum` slot,
135
+ * `'valueSet'` for storage's `entries.valueSet` slot. No consumer-side
136
+ * translation between the kind string and the slot key.
26
137
  *
27
- * `entityKind` names the source entity-kind:
28
- * - `'enum'` the referenced entity is a domain enum.
29
- * - `'value-set'` the referenced entity is a storage value-set.
138
+ * Every `valueSet` reference is intra-plane (domain field → domain enum;
139
+ * storage column/check storage value-set). The directional invariant:
140
+ * domain may reference storage; storage may never reference domain.
30
141
  *
31
- * `namespaceId` admits the `UNBOUND_NAMESPACE_ID` (`__unbound__`) sentinel for
32
- * single-namespace (unbound) references.
142
+ * `namespaceId` admits the `UNBOUND_NAMESPACE_ID` (`__unbound__`) sentinel
143
+ * for single-namespace (unbound) references.
33
144
  *
34
- * Cross-space discrimination is presence-based: when `spaceId` is absent the
35
- * reference is local (same contract-space); when `spaceId` is present the
36
- * reference is cross-space. This mirrors the `ForeignKeyReference` carrier
37
- * convention — no separate tag field — so local refs are JSON-minimal.
145
+ * `spaceId` is the cross-space discriminator: absent local (same
146
+ * contract-space); present cross-space. No separate tag field.
38
147
  */
39
148
  interface ValueSetRef {
40
149
  readonly plane: 'domain' | 'storage';
41
150
  readonly namespaceId: string;
42
- readonly entityKind: 'enum' | 'value-set';
43
- readonly name: string;
151
+ readonly entityKind: 'enum' | 'valueSet';
152
+ readonly entityName: string;
44
153
  readonly spaceId?: string;
45
154
  } //#endregion
46
155
  //#region src/domain-types.d.ts
@@ -74,7 +183,7 @@ type ContractEnum = {
74
183
  readonly codecId: string;
75
184
  readonly members: readonly {
76
185
  readonly name: string;
77
- readonly value: string;
186
+ readonly value: JsonValue;
78
187
  }[];
79
188
  };
80
189
  type ContractRelationOn = {
@@ -144,7 +253,7 @@ interface ApplicationDomain<TModels extends Record<string, ContractModelBase> =
144
253
  readonly namespaces: Readonly<Record<string, ApplicationDomainNamespace<TModels>>>;
145
254
  }
146
255
  //#endregion
147
- //#region ../../../1-framework/0-foundation/contract/dist/contract-types-CBbD-VV1.d.mts
256
+ //#region ../../../1-framework/0-foundation/contract/dist/contract-types-ci3TUzpo.d.mts
148
257
  //#region src/control-policy.d.ts
149
258
  /**
150
259
  * Governance posture for a storage-plane node or for the contract as a whole.
@@ -165,110 +274,6 @@ type ControlPolicy = 'managed' | 'tolerated' | 'external' | 'observed';
165
274
  * and can be called by any consumer (verifier, planner, etc.) without importing IR classes.
166
275
  */
167
276
  //#endregion
168
- //#region src/types.d.ts
169
- /**
170
- * Unique symbol used as the key for branding types.
171
- */
172
- declare const $: unique symbol;
173
- /**
174
- * A helper type to brand a given type with a unique identifier.
175
- *
176
- * @template TKey Text used as the brand key.
177
- * @template TValue Optional value associated with the brand key. Defaults to `true`.
178
- */
179
- type Brand<TKey extends string | number | symbol, TValue = true> = {
180
- [$]: { [K in TKey]: TValue };
181
- };
182
- /**
183
- * Base type for storage contract hashes.
184
- * Emitted contract.d.ts files use this with the hash value as a type parameter:
185
- * `type StorageHash = StorageHashBase<'sha256:abc123...'>`
186
- */
187
- type StorageHashBase<THash extends string> = THash & Brand<'StorageHash'>;
188
- /**
189
- * Base type for execution contract hashes.
190
- * Emitted contract.d.ts files use this with the hash value as a type parameter:
191
- * `type ExecutionHash = ExecutionHashBase<'sha256:def456...'>`
192
- */
193
- type ExecutionHashBase<THash extends string> = THash & Brand<'ExecutionHash'>;
194
- /**
195
- * Base type for profile contract hashes.
196
- * Emitted contract.d.ts files use this with the hash value as a type parameter:
197
- * `type ProfileHash = ProfileHashBase<'sha256:def456...'>`
198
- */
199
- type ProfileHashBase<THash extends string> = THash & Brand<'ProfileHash'>;
200
- /**
201
- * One entity-kind slot in a namespace — a map of entity name to entry.
202
- * Values are opaque at the foundation layer; family and target concretions
203
- * refine them to typed IR classes.
204
- */
205
- type StorageEntitySlot = Readonly<Record<string, unknown>>;
206
- /**
207
- * Plain-data namespace entry in a storage block. Every hydrated contract
208
- * carries at least `id` plus entity-kind slot maps under `entries`
209
- * (`table`, `collection`, …). Foundation declares only this shape — no IR
210
- * machinery.
211
- */
212
- interface StorageNamespace {
213
- readonly id: string;
214
- readonly entries: Readonly<Record<string, StorageEntitySlot>>;
215
- }
216
- /**
217
- * Base type for family-specific storage blocks.
218
- * Family storage types (SqlStorage, MongoStorage, etc.) extend this to carry the
219
- * storage hash alongside family-specific data (tables, collections, etc.).
220
- *
221
- * The `namespaces` map is carried by every hydrated storage block. Serialized
222
- * envelope shape is target-owned; this types the in-memory contract after
223
- * `deserializeContract`.
224
- */
225
- interface StorageBase<THash extends string = string> {
226
- readonly storageHash: StorageHashBase<THash>;
227
- readonly namespaces: Readonly<Record<string, StorageNamespace>>;
228
- }
229
- type GeneratedValueSpec = {
230
- readonly id: string;
231
- readonly params?: Record<string, unknown>;
232
- };
233
- type JsonPrimitive = string | number | boolean | null;
234
- type JsonValue = JsonPrimitive | {
235
- readonly [key: string]: JsonValue;
236
- } | readonly JsonValue[];
237
- type ColumnDefaultLiteralValue = JsonValue;
238
- type ColumnDefaultLiteralInputValue = ColumnDefaultLiteralValue | Date;
239
- /**
240
- * Runtime predicate for `ColumnDefaultLiteralInputValue`. Authoring layers
241
- * resolve template values from caller-supplied args (typed `unknown` at the
242
- * boundary) and need to validate before constructing a `ColumnDefault`.
243
- * Accepts JSON primitives, plain arrays/objects of JSON values, and `Date`
244
- * instances. Rejects functions, class instances (other than `Date`),
245
- * `undefined`, `bigint`, `symbol`, and arrays/objects containing those.
246
- */
247
- type ColumnDefault = {
248
- readonly kind: 'literal';
249
- readonly value: ColumnDefaultLiteralInputValue;
250
- } | {
251
- readonly kind: 'function';
252
- readonly expression: string;
253
- };
254
- type ExecutionMutationDefaultValue = {
255
- readonly kind: 'generator';
256
- readonly id: GeneratedValueSpec['id'];
257
- readonly params?: Record<string, unknown>;
258
- };
259
- type ExecutionMutationDefault = {
260
- readonly ref: {
261
- readonly table: string;
262
- readonly column: string;
263
- };
264
- readonly onCreate?: ExecutionMutationDefaultValue;
265
- readonly onUpdate?: ExecutionMutationDefaultValue;
266
- };
267
- /**
268
- * `ExecutionMutationDefault` minus its `ref` — the per-field phases value
269
- * authoring layers attach to a column before the column ref is known.
270
- */
271
- //#endregion
272
277
  //#region src/contract-types.d.ts
273
278
  /**
274
279
  * Execution section for the unified contract (ADR 182).
@@ -318,6 +323,7 @@ interface Contract<TStorage extends StorageBase = StorageBase, TModels extends R
318
323
  readonly defaultControlPolicy?: ControlPolicy;
319
324
  }
320
325
  /** Model definitions union carried on a {@link Contract}'s `TModels` type parameter. */
326
+ type ContractModelDefinitions<TContract extends Contract> = TContract extends Contract<StorageBase, infer TModels> ? TModels : never;
321
327
  //#endregion
322
328
  //#region src/type-errors.d.ts
323
329
  /**
@@ -479,7 +485,7 @@ interface Namespace extends IRNode, StorageNamespace {
479
485
  * is honest at every layer.
480
486
  *
481
487
  * Extends `IRNode` so the framework's IR-walking surfaces (verifiers,
482
- * serializers) can dispatch on `Storage`-typed slots through the same
488
+ * serializers) can dispatch on `Storage`-typed fields through the same
483
489
  * IR-node alphabet as every other node — the structural dual already
484
490
  * holds in code (every concrete storage class extends an IR-node base);
485
491
  * the interface promotion makes the typing honest.
@@ -649,7 +655,7 @@ declare class ForeignKey extends SqlNode {
649
655
  constructor(input: ForeignKeyInput);
650
656
  } //#endregion
651
657
  //#endregion
652
- //#region ../../1-core/contract/dist/sql-storage-CXf9xjAL.d.mts
658
+ //#region ../../1-core/contract/dist/sql-storage-BCLmt-nS.d.mts
653
659
  //#region src/ir/check-constraint.d.ts
654
660
  /**
655
661
  * Hydration / construction input shape for {@link CheckConstraint}.
@@ -820,8 +826,8 @@ declare const CODEC_INSTANCE_KIND: "codec-instance";
820
826
  * in `SqlStorage.types`. These are plain object literals — there is no
821
827
  * runtime IR class, the JSON envelope round-trips through the slot
822
828
  * unchanged. The `kind: 'codec-instance'` discriminator is the dispatch
823
- * key that distinguishes codec-typed entries from class-instance entries
824
- * (e.g. `PostgresEnumType`) sharing the polymorphic slot.
829
+ * key that distinguishes codec-typed entries from any class-instance
830
+ * kinds a target pack contributes to the polymorphic slot.
825
831
  */
826
832
  interface StorageTypeInstance extends StorageType {
827
833
  readonly kind: typeof CODEC_INSTANCE_KIND;
@@ -854,9 +860,9 @@ interface StorageTypeInstanceInput {
854
860
  * walker can hand a validated literal straight to `new`.
855
861
  */
856
862
  interface StorageValueSetInput {
857
- readonly kind: 'value-set';
863
+ readonly kind: 'valueSet';
858
864
  /** Ordered permitted values, codec-encoded. Declaration order is preserved. */
859
- readonly values: readonly string[];
865
+ readonly values: readonly JsonValue[];
860
866
  }
861
867
  /**
862
868
  * SQL Contract IR node for a value-set entry in a namespace's `valueSet`
@@ -867,7 +873,7 @@ interface StorageValueSetInput {
867
873
  * column that references it already holds the codec; the value-set holds
868
874
  * only the permitted values.
869
875
  *
870
- * The node's `kind` is enumerable (`'value-set'`) so the JSON envelope
876
+ * The node's `kind` is enumerable (`'valueSet'`) so the JSON envelope
871
877
  * carries the discriminator and the serializer hydration walker can
872
878
  * dispatch on it. This follows the per-leaf enumerable-kind convention
873
879
  * established in the SQL-node comment (future polymorphic dispatch on
@@ -877,8 +883,8 @@ interface StorageValueSetInput {
877
883
  * the parent namespace's `valueSet: Record<string, StorageValueSet>` map.
878
884
  */
879
885
  declare class StorageValueSet extends SqlNode {
880
- readonly kind: "value-set";
881
- readonly values: readonly string[];
886
+ readonly kind: "valueSet";
887
+ readonly values: readonly JsonValue[];
882
888
  constructor(input: StorageValueSetInput);
883
889
  } //#endregion
884
890
  //#region src/ir/sql-storage.d.ts
@@ -916,11 +922,25 @@ interface SqlStorageInput<THash extends string = string> {
916
922
  * the per-target serializer's responsibility (so the family base does
917
923
  * not import target-specific subclasses).
918
924
  */
925
+ /**
926
+ * The typed `entries` shape for SQL family namespaces. The open dictionary
927
+ * is intersected with optional known-kind maps so that `ns.entries.table`
928
+ * and `ns.entries.valueSet` resolve without a cast, while unknown pack-
929
+ * contributed kinds remain valid (the `Record` part allows any string key).
930
+ */
931
+ type SqlNamespaceEntries = Readonly<Record<string, Readonly<Record<string, unknown>>>> & {
932
+ readonly table?: Readonly<Record<string, StorageTable>>;
933
+ readonly valueSet?: Readonly<Record<string, StorageValueSet>>;
934
+ };
935
+ /**
936
+ * SQL family namespace. `entries` is the open ADR 224 dictionary —
937
+ * `entries[entityKind][entityName]` addresses any entity. Emitted
938
+ * contract literals satisfy this structurally (no prototype getters
939
+ * needed). For typed access to specific kinds, use the class getters
940
+ * on the concretion or `ns.entries.table` / `ns.entries.valueSet` directly.
941
+ */
919
942
  type SqlNamespace = Namespace & {
920
- readonly entries: Readonly<{
921
- readonly table: Readonly<Record<string, StorageTable>>;
922
- readonly valueSet?: Readonly<Record<string, StorageValueSet>>;
923
- }>;
943
+ readonly entries: SqlNamespaceEntries;
924
944
  /**
925
945
  * Render a dialect-qualified table reference for runtime SQL emission.
926
946
  * Present on materialised target concretions (`PostgresSchema`,
@@ -934,9 +954,9 @@ declare class SqlStorage<THash extends string = string> extends SqlNode implemen
934
954
  readonly namespaces: Readonly<Record<string, SqlNamespace>>;
935
955
  readonly types?: Readonly<Record<string, StorageTypeInstance>>;
936
956
  constructor(input: SqlStorageInput<THash>);
937
- }
957
+ } //#endregion
938
958
  //#endregion
939
- //#region ../../1-core/contract/dist/types-DEnWD3xB.d.mts
959
+ //#region ../../1-core/contract/dist/types-CFpK1iC5.d.mts
940
960
  type CodecTypesOf<T> = [T] extends [never] ? Record<string, never> : T extends {
941
961
  readonly codecTypes: infer C;
942
962
  } ? C extends Record<string, {
@@ -951,25 +971,31 @@ type CodecTypesOf<T> = [T] extends [never] ? Record<string, never> : T extends {
951
971
  */
952
972
  type TypeMapsPhantomKey = '__@prisma-next/sql-contract/typeMaps@__';
953
973
  type ExtractTypeMapsFromContract<T> = TypeMapsPhantomKey extends keyof T ? NonNullable<T[TypeMapsPhantomKey & keyof T]> : never;
974
+ type FieldOutputTypesOf<T> = [T] extends [never] ? Record<string, never> : T extends {
975
+ readonly fieldOutputTypes: infer F;
976
+ } ? F extends Record<string, Record<string, unknown>> ? F : Record<string, never> : Record<string, never>;
954
977
  type ExtractCodecTypes<T> = CodecTypesOf<ExtractTypeMapsFromContract<T>>;
978
+ type ExtractFieldOutputTypes<T> = FieldOutputTypesOf<ExtractTypeMapsFromContract<T>>;
955
979
  //#endregion
956
- //#region ../sql-builder/dist/db-BdrQgIiw.d.mts
980
+ //#region ../sql-builder/dist/db-Ba99KmSZ.d.mts
957
981
  //#endregion
958
982
  //#region src/types/db.d.ts
959
983
  type CapabilitiesBase = Record<string, Record<string, boolean>>;
984
+ type NamespaceEntries = Readonly<Record<string, Readonly<Record<string, unknown>>>>;
960
985
  type TableProxyContract = {
961
986
  readonly storage: {
962
987
  readonly namespaces: Readonly<Record<string, {
963
- readonly entries: {
964
- readonly table: Readonly<Record<string, StorageTable>>;
965
- };
988
+ readonly entries: NamespaceEntries;
966
989
  }>>;
967
990
  };
968
991
  readonly capabilities: CapabilitiesBase;
969
992
  };
993
+ type TablesInNamespace<NS extends {
994
+ readonly entries: NamespaceEntries;
995
+ }> = NS['entries']['table'] extends Readonly<Record<string, StorageTable>> ? NS['entries']['table'] : Readonly<Record<string, StorageTable>>;
970
996
  type UnboundTables$1<C extends TableProxyContract> = { readonly [Name in TableNamesAcrossNamespaces<C>]: TableInAnyNamespace<C, Name> };
971
- type TableNamesAcrossNamespaces<C extends TableProxyContract> = { [NSId in keyof C['storage']['namespaces']]: keyof C['storage']['namespaces'][NSId]['entries']['table'] & string }[keyof C['storage']['namespaces']];
972
- type TableInAnyNamespace<C extends TableProxyContract, Name extends string> = { [NSId in keyof C['storage']['namespaces']]: Name extends keyof C['storage']['namespaces'][NSId]['entries']['table'] ? C['storage']['namespaces'][NSId]['entries']['table'][Name] : never }[keyof C['storage']['namespaces']];
997
+ type TableNamesAcrossNamespaces<C extends TableProxyContract> = { [NSId in keyof C['storage']['namespaces']]: keyof TablesInNamespace<C['storage']['namespaces'][NSId]> & string }[keyof C['storage']['namespaces']];
998
+ type TableInAnyNamespace<C extends TableProxyContract, Name extends string> = { [NSId in keyof C['storage']['namespaces']]: Name extends keyof TablesInNamespace<C['storage']['namespaces'][NSId]> ? TablesInNamespace<C['storage']['namespaces'][NSId]>[Name] : never }[keyof C['storage']['namespaces']];
973
999
  //#endregion
974
1000
  //#region src/type-atoms.d.ts
975
1001
  /**
@@ -1012,14 +1038,31 @@ type Simplify<TObject extends object> = DrainOuterGeneric<{ [K in keyof TObject]
1012
1038
  */
1013
1039
  type UnboundTables<TContract extends Contract<SqlStorage>> = UnboundTables$1<TContract & TableProxyContract>;
1014
1040
  /**
1015
- * A utility type to extract the output type of a referenced column from a contract.
1016
- * Uses the type-only codec channel (ExtractCodecTypes), not runtime mappings.
1041
+ * The field-output override (the enum value union) for a `table.column`, or
1042
+ * `never` when no model field maps to it. The emitted `FieldOutputTypes`
1043
+ * TypeMap is keyed by model/field, so one pass over the models matches both the
1044
+ * `storage.table` and the field's `storage.fields[*].column` to read the
1045
+ * already-narrowed type back out.
1046
+ */
1047
+ type FieldOutputOverride<TContract extends Contract, TTableName extends string, TColumnName extends string, Models = ContractModelDefinitions<TContract>, FOT = ExtractFieldOutputTypes<TContract>> = { [M in keyof Models & keyof FOT & string]: Models[M] extends {
1048
+ readonly storage: {
1049
+ readonly table: TTableName;
1050
+ readonly fields: infer Fields;
1051
+ };
1052
+ } ? { [F in keyof Fields & keyof FOT[M] & string]: Fields[F] extends {
1053
+ readonly column: TColumnName;
1054
+ } ? FOT[M][F] : never }[keyof Fields & keyof FOT[M] & string] : never }[keyof Models & keyof FOT & string];
1055
+ /**
1056
+ * The output type of a referenced column. Returns the enum value union from the
1057
+ * `FieldOutputTypes` TypeMap when the column is enum-typed (the override already
1058
+ * carries the correct nullability), otherwise the codec output type with column
1059
+ * nullability applied.
1017
1060
  *
1018
1061
  * @template TContract The contract that describes the database.
1019
1062
  * @template TTableName The name of the table containing the column.
1020
1063
  * @template TColumnName The name of the column whose output type is to be extracted.
1021
1064
  */
1022
- type ExtractOutputType<TContract extends Contract<SqlStorage>, TTableName extends keyof UnboundTables<TContract> & string, TColumnName extends keyof UnboundTables<TContract>[TTableName]['columns'] & string, _TColumn = UnboundTables<TContract>[TTableName]['columns'][TColumnName]> = _TColumn extends StorageColumn ? (_TColumn['nullable'] extends true ? null : never) | ExtractCodecTypes<TContract>[_TColumn['codecId']]['output'] : never;
1065
+ type ExtractOutputType<TContract extends Contract<SqlStorage>, TTableName extends keyof UnboundTables<TContract> & string, TColumnName extends keyof UnboundTables<TContract>[TTableName]['columns'] & string, _TColumn = UnboundTables<TContract>[TTableName]['columns'][TColumnName]> = [FieldOutputOverride<TContract, TTableName, TColumnName>] extends [never] ? _TColumn extends StorageColumn ? (_TColumn['nullable'] extends true ? null : never) | ExtractCodecTypes<TContract>[_TColumn['codecId']]['output'] : never : FieldOutputOverride<TContract, TTableName, TColumnName>;
1023
1066
  /**
1024
1067
  * A type representing a selection of columns in a SQL `select` query in the
1025
1068
  * most generic form.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":["__brand","value","NamespaceId","namespace","model","space","ObjectType","CrossReference","plane","namespaceId","entityKind","name","spaceId","kind","codecId","typeParams","Record","members","ReadonlyArray","ScalarFieldType","ValueObjectFieldType","UnionFieldType","nullable","type","ContractFieldType","many","dict","valueSet","ValueSetRef","localFields","targetFields","table","parentColumns","childColumns","targetColumns","to","cardinality","on","ContractRelationOn","through","ContractRelationThrough","ContractManyToManyRelation","ContractNonJunctionRelation","ContractReferenceRelation","ContractEmbedRelation","field","fields","ContractField","Readonly","TModelStorage","ModelStorageBase","relations","ContractRelation","storage","discriminator","ContractDiscriminator","variants","ContractVariantEntry","base","owner","ContractModelBase","TModels","ModelName","K","models","valueObjects","ContractValueObject","enum","ContractEnum","namespaces","ApplicationDomainNamespace","domain","ApplicationDomain","ControlPolicy","nodeControl","defaultControlPolicy","TKey","TValue","$","K","THash","Brand","T","value","ExecutionHashBase","StorageHashBase","ProfileHashBase","Readonly","Record","id","entries","StorageEntitySlot","storageHash","namespaces","StorageNamespace","type","nullable","items","FieldType","properties","params","JsonPrimitive","key","JsonValue","ColumnDefaultLiteralValue","Date","ColumnDefaultLiteralInputValue","kind","expression","ColumnDefault","GeneratedValueSpec","ExecutionMutationDefaultValue","ref","table","column","onCreate","onUpdate","Omit","ExecutionMutationDefault","executionHash","mutations","defaults","ReadonlyArray","readOnly","projection","origin","capabilities","name","keys","unique","where","Expr","path","strategy","fields","indexes","DocIndex","target","targetFamily","profileHash","lane","annotations","contractJson","canonicalVersion","updatedAt","appTag","meta","invariants","space","migrationName","migrationHash","from","to","appliedAt","operationCount","TStorage","StorageBase","TModels","ContractModelBase","roots","CrossReference","domain","ApplicationDomain","storage","extensionPacks","execution","ContractExecutionSection","TContract","Contract","Only","TNamespace","valueObjects","VO","ContractValueObject","NamespaceValueObjectsOf","ExactlyOneNamespace","Projected","kind","IRNode","T","node","StorageNamespace","entries","Readonly","Record","IRNodeBase","Namespace","id","plane","namespaceId","entityKind","entityName","Pick","StorageBase","storage","Generator","EntityCoordinate","namespaces","ApplicationDomain","domain","IRNodeBase","kind","constructor","namespaceId","tableName","columns","spaceId","SqlNode","NamespaceId","ForeignKeyReferenceInput","input","source","ForeignKeyReference","target","name","onDelete","ReferentialAction","onUpdate","constraint","index","ForeignKeyInput","name","column","valueSet","ValueSetRef","SqlNode","constructor","CheckConstraintInput","input","columns","PrimaryKeyInput","type","options","Record","IndexInput","nativeType","codecId","nullable","typeParams","typeRef","default","ColumnDefault","control","ControlPolicy","StorageColumnInput","UniqueConstraintInput","StorageColumn","primaryKey","PrimaryKey","uniques","ReadonlyArray","UniqueConstraint","indexes","Index","foreignKeys","ForeignKey","ForeignKeyInput","checks","CheckConstraint","Readonly","StorageTableInput","StorageType","kind","CODEC_INSTANCE_KIND","StorageTypeInstanceInput","StorageTypeInstance","value","values","StorageValueSetInput","id","entries","table","StorageTable","StorageValueSet","THash","storageHash","StorageHashBase","types","SqlStorageTypeEntry","namespaces","SqlNamespace","Namespace","qualifyTable","tableName","Storage","SqlStorageInput","SqlStorage","storage","namespaceId","SqlNamespaceTablesInput","input","SqlNamespace","Readonly","Record","Namespace","namespaces","StorageType","kind","POSTGRES_ENUM_KIND","name","nativeType","values","codecId","control","ControlPolicy","value","PostgresEnumStorageEntry","NamespaceBase","instance","SqlUnboundNamespace","id","entries","table","StorageTable","constructor","qualifyTable","tableName","T","ControlDriverInstance","query","Row","sql","params","Promise","rows","onDelete","ReferentialAction","onUpdate","column","nullable","namespaceId","fields","SqlModelFieldStorage","constraint","index","fk","overrideDefaults","TCodecTypes","output","TQueryOperationTypes","TFieldOutputTypes","TFieldInputTypes","codecTypes","queryOperationTypes","fieldOutputTypes","fieldInputTypes","C","traits","CodecTrait","returnType","self","QueryOperationSelfSpec","impl","args","QueryOperationReturn","_CT","QueryOperationTypeEntry","Q","TContract","TTypeMaps","K","TypeMapsPhantomKey","NonNullable","F","CodecTypesOf","ExtractTypeMapsFromContract","QueryOperationTypesOf","FieldOutputTypesOf","FieldInputTypesOf","ExtractCodecTypes","Capabilities","Required","Method","T","K","Record","ScopeField","topLevel","ScopeTable","namespaces","Row","Alias","JoinOuterScope","getJoinOuterScope","Scope","buildAst","AnyFromSource","Name","Table","StorageTable$1","StorageTableToScopeTable","codecId","nullable","A","B","Expand","Omit","S","OldKey","NewKey","NullableScopeTable","TableName","RowType","SubqueryMarker","SelectAst","getRowFields","codecTypes","CodecTypesBase","capabilities","queryOperationTypes","QueryOperationTypesBase","resolvedColumnOutputTypes","Source","Field","FromScope","Columns","Pick","Expression$1","F","AvailableScope","QC","QueryContext","FieldProxy","fields","Functions","fns","BooleanCodecType","direction","OrderByDirection","nulls","OrderByNulls","OT","CT","input","eq","CodecId","CodecExpression","a","b","ne","N","gt","gte","lt","lte","and","ands","or","ors","exists","Subquery","subquery","notExists","in","expr","Array","values","notIn","raw","RawSqlTag","BuiltinFunctions","DeriveExtFunctions","count","CountField","sum","avg","min","max","AggregateOnlyFunctions","CodecTypes","output","PreResolved","ResolveField","ApplyNullable","NonNullable","sql","returning","StorageTable","annotate","As","AnnotationValue","OperationKind","annotations","ValidAnnotations","InsertQuery","GatedMethod","ReturningCapability","columns","WithFields","EmptyRow","build","SqlQueryPlan","ResolveRow","UpdateQuery","where","ExpressionBuilder","DeleteQuery","WithSelect","WithJoin","WithPagination","WithDistinct","WithAlias","WithBuild","GroupedQuery","groupBy","OrderByScope","having","AggregateFunctions","orderBy","field","OrderByOptions","options","distinctOn","postgres","SelectQuery","ParentScope","from","Other","JoinSource","other","MergeScopes","select","alias","WithField","Result","callback","ExtractScopeFields","innerJoin","on","JoinedTables","outerLeftJoin","NullableScope","outerRightJoin","outerFullJoin","lateralJoin","lateral","LateralRow","LateralBuilder","builder","outerLateralJoin","TraitExpression","limit","PaginationValue","offset","distinct","as","newAlias","C","Contract","M","ContractModelDefinitions","storage","table","ModelName","ColumnName","column","FieldTypes","FindModelForTable","TableProxyContract","UnboundTables","Tables","ColName","FindFieldForColumn","FieldName","FieldInputs","InsertValues","ResolvedInsertValues","ExtractCodecTypes","ExtractQueryOperationTypes","ResolvedColumnTypes","ExtractFieldOutputTypes","DefaultScope","ContractToQC","NewAlias","TableProxy","RebindScope","insert","ReadonlyArray","ExtractFieldInputTypes","rows","update","ResolvedUpdateValues","set","ResolvedUpdateExpressions","delete","Readonly","entries","CapabilitiesBase","TableNamesAcrossNamespaces","TableInAnyNamespace","NSId","NsId","Ns","Namespace"],"sources":["../../../../1-framework/0-foundation/contract/dist/domain-envelope-OkWsysCY.d.mts","../../../../1-framework/0-foundation/contract/dist/contract-types-CBbD-VV1.d.mts","../src/type-errors.ts","../src/column-reference.ts","../../../../1-framework/1-core/framework-components/dist/ir.d.mts","../../../1-core/contract/dist/foreign-key-BATxB95l.d.mts","../../../1-core/contract/dist/sql-storage-CXf9xjAL.d.mts","../../../1-core/contract/dist/types-DEnWD3xB.d.mts","../../sql-builder/dist/db-BdrQgIiw.d.mts","../src/type-atoms.ts","../src/selection.ts","../src/table-reference.ts","../src/ref.ts","../src/select-builder.ts","../src/root.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":["__brand","value","NamespaceId","namespace","model","space","ObjectType","CrossReference","TKey","TValue","$","K","THash","Brand","T","ExecutionHashBase","StorageHashBase","ProfileHashBase","Readonly","Record","id","entries","StorageEntitySlot","storageHash","namespaces","StorageNamespace","type","nullable","items","FieldType","properties","params","JsonPrimitive","key","JsonValue","ColumnDefaultLiteralValue","Date","ColumnDefaultLiteralInputValue","kind","expression","ColumnDefault","GeneratedValueSpec","ExecutionMutationDefaultValue","ref","table","column","onCreate","onUpdate","Omit","ExecutionMutationDefault","executionHash","mutations","defaults","ReadonlyArray","readOnly","projection","origin","capabilities","name","keys","unique","where","Expr","path","strategy","fields","indexes","DocIndex","target","targetFamily","profileHash","lane","annotations","contractJson","canonicalVersion","updatedAt","appTag","meta","invariants","migrationName","migrationHash","from","to","appliedAt","operationCount","plane","namespaceId","entityKind","entityName","spaceId","codecId","typeParams","members","ScalarFieldType","ValueObjectFieldType","UnionFieldType","ContractFieldType","many","dict","valueSet","ValueSetRef","localFields","targetFields","parentColumns","childColumns","targetColumns","cardinality","on","ContractRelationOn","through","ContractRelationThrough","ContractManyToManyRelation","ContractNonJunctionRelation","ContractReferenceRelation","ContractEmbedRelation","field","ContractField","TModelStorage","ModelStorageBase","relations","ContractRelation","storage","discriminator","ContractDiscriminator","variants","ContractVariantEntry","base","owner","ContractModelBase","TModels","ModelName","models","valueObjects","ContractValueObject","enum","ContractEnum","ApplicationDomainNamespace","domain","ApplicationDomain","ControlPolicy","nodeControl","defaultControlPolicy","THash","executionHash","ExecutionHashBase","mutations","defaults","ReadonlyArray","ExecutionMutationDefault","TStorage","StorageBase","TModels","Record","ContractModelBase","target","targetFamily","roots","CrossReference","domain","ApplicationDomain","storage","capabilities","extensionPacks","execution","ContractExecutionSection","profileHash","ProfileHashBase","meta","TContract","Contract","T","Only","TNamespace","valueObjects","VO","ContractValueObject","NamespaceValueObjectsOf","ExactlyOneNamespace","Projected","kind","IRNode","T","node","StorageNamespace","entries","Readonly","Record","IRNodeBase","Namespace","id","plane","namespaceId","entityKind","entityName","Pick","StorageBase","storage","Generator","EntityCoordinate","coord","namespaces","ApplicationDomain","domain","IRNodeBase","kind","constructor","namespaceId","tableName","columns","spaceId","SqlNode","NamespaceId","ForeignKeyReferenceInput","input","source","ForeignKeyReference","target","name","onDelete","ReferentialAction","onUpdate","constraint","index","ForeignKeyInput","name","column","valueSet","ValueSetRef","SqlNode","constructor","CheckConstraintInput","input","columns","PrimaryKeyInput","type","options","Record","IndexInput","nativeType","codecId","nullable","typeParams","typeRef","default","ColumnDefault","control","ControlPolicy","StorageColumnInput","UniqueConstraintInput","StorageColumn","primaryKey","PrimaryKey","uniques","ReadonlyArray","UniqueConstraint","indexes","Index","foreignKeys","ForeignKey","ForeignKeyInput","checks","CheckConstraint","Readonly","StorageTableInput","StorageType","kind","CODEC_INSTANCE_KIND","StorageTypeInstanceInput","StorageTypeInstance","value","values","JsonValue","StorageValueSetInput","id","entries","THash","storageHash","StorageHashBase","types","SqlStorageTypeEntry","namespaces","SqlNamespace","table","StorageTable","StorageValueSet","Namespace","SqlNamespaceEntries","qualifyTable","tableName","Storage","SqlStorageInput","SqlNamespaceTablesInput","input","SqlNamespace","Readonly","Record","Namespace","namespaces","NamespaceBase","instance","SqlUnboundNamespace","id","entries","SqlNamespaceEntries","kind","constructor","table","StorageTable","qualifyTable","tableName","T","ControlDriverInstance","query","Row","sql","params","Promise","rows","name","onDelete","ReferentialAction","onUpdate","column","codecId","nullable","namespaceId","fields","SqlModelFieldStorage","constraint","index","fk","overrideDefaults","TCodecTypes","output","TQueryOperationTypes","TFieldOutputTypes","TFieldInputTypes","codecTypes","queryOperationTypes","fieldOutputTypes","fieldInputTypes","C","traits","CodecTrait","returnType","self","QueryOperationSelfSpec","impl","args","QueryOperationReturn","_CT","QueryOperationTypeEntry","Q","TContract","TTypeMaps","K","TypeMapsPhantomKey","NonNullable","F","CodecTypesOf","ExtractTypeMapsFromContract","QueryOperationTypesOf","FieldOutputTypesOf","FieldInputTypesOf","ExtractCodecTypes","Capabilities","Required","Method","T","K","Record","ScopeField","topLevel","ScopeTable","namespaces","Row","Alias","JoinOuterScope","getJoinOuterScope","Scope","buildAst","AnyFromSource","Name","Table","StorageTable$1","StorageTableToScopeTable","codecId","nullable","A","B","Expand","Omit","S","OldKey","NewKey","NullableScopeTable","TableName","RowType","SubqueryMarker","SelectAst","getRowFields","codecTypes","CodecTypesBase","capabilities","queryOperationTypes","QueryOperationTypesBase","resolvedColumnOutputTypes","Source","Field","FromScope","Columns","Pick","Expression$1","F","AvailableScope","QC","QueryContext","FieldProxy","fields","Functions","fns","BooleanCodecType","direction","OrderByDirection","nulls","OrderByNulls","OT","CT","input","eq","CodecId","CodecExpression","a","b","ne","N","gt","gte","lt","lte","and","ands","or","ors","exists","Subquery","subquery","notExists","in","expr","Array","values","notIn","raw","RawSqlTag","BuiltinFunctions","DeriveExtFunctions","count","CountField","sum","avg","min","max","AggregateOnlyFunctions","CodecTypes","output","PreResolved","ResolveField","ApplyNullable","NonNullable","sql","returning","StorageTable","annotate","As","AnnotationValue","OperationKind","annotations","ValidAnnotations","InsertQuery","GatedMethod","ReturningCapability","columns","WithFields","EmptyRow","build","SqlQueryPlan","ResolveRow","UpdateQuery","where","ExpressionBuilder","DeleteQuery","WithSelect","WithJoin","WithPagination","WithDistinct","WithAlias","WithBuild","GroupedQuery","groupBy","OrderByScope","having","AggregateFunctions","orderBy","field","OrderByOptions","options","distinctOn","postgres","SelectQuery","ParentScope","from","Other","JoinSource","other","MergeScopes","select","alias","WithField","Result","callback","ExtractScopeFields","innerJoin","on","JoinedTables","outerLeftJoin","NullableScope","outerRightJoin","outerFullJoin","lateralJoin","lateral","LateralRow","LateralBuilder","builder","outerLateralJoin","TraitExpression","limit","PaginationValue","offset","distinct","as","newAlias","C","Contract","M","ContractModelDefinitions","storage","table","ModelName","ColumnName","column","FieldTypes","FindModelForTable","TableProxyContract","UnboundTables","Tables","ColName","FindFieldForColumn","FieldName","FieldInputs","InsertValues","ResolvedInsertValues","ExtractCodecTypes","ExtractQueryOperationTypes","ResolvedColumnTypes","ExtractFieldOutputTypes","DefaultScope","ContractToQC","NewAlias","TableProxy","RebindScope","insert","ReadonlyArray","ExtractFieldInputTypes","rows","update","ResolvedUpdateValues","set","ResolvedUpdateExpressions","delete","Readonly","entries","NamespaceEntries","CapabilitiesBase","NS","TableNamesAcrossNamespaces","TableInAnyNamespace","NSId","TablesInNamespace","NsId","Ns","Namespace"],"sources":["../../../../1-framework/0-foundation/contract/dist/domain-envelope-Czz8UMhU.d.mts","../../../../1-framework/0-foundation/contract/dist/contract-types-ci3TUzpo.d.mts","../src/type-errors.ts","../src/column-reference.ts","../../../../1-framework/1-core/framework-components/dist/ir.d.mts","../../../1-core/contract/dist/foreign-key-BATxB95l.d.mts","../../../1-core/contract/dist/sql-storage-BCLmt-nS.d.mts","../../../1-core/contract/dist/types-CFpK1iC5.d.mts","../../sql-builder/dist/db-Ba99KmSZ.d.mts","../src/type-atoms.ts","../src/selection.ts","../src/table-reference.ts","../src/ref.ts","../src/select-builder.ts","../src/root.ts"],"mappings":"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"}
package/package.json CHANGED
@@ -1,16 +1,16 @@
1
1
  {
2
2
  "name": "@prisma-next/sql-lane-query-builder",
3
- "version": "0.13.0-dev.3",
3
+ "version": "0.13.0-dev.30",
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.13.0-dev.3",
10
- "@prisma-next/sql-builder": "0.13.0-dev.3",
11
- "@prisma-next/sql-contract": "0.13.0-dev.3",
12
- "@prisma-next/tsconfig": "0.13.0-dev.3",
13
- "@prisma-next/tsdown": "0.13.0-dev.3",
9
+ "@prisma-next/contract": "0.13.0-dev.30",
10
+ "@prisma-next/sql-builder": "0.13.0-dev.30",
11
+ "@prisma-next/sql-contract": "0.13.0-dev.30",
12
+ "@prisma-next/tsconfig": "0.13.0-dev.30",
13
+ "@prisma-next/tsdown": "0.13.0-dev.30",
14
14
  "tsdown": "0.22.1",
15
15
  "typescript": "5.9.3",
16
16
  "vitest": "4.1.8"
package/src/selection.ts CHANGED
@@ -1,9 +1,14 @@
1
- import type { Contract } from '@prisma-next/contract/types';
1
+ import type { Contract, ContractModelDefinitions } from '@prisma-next/contract/types';
2
2
  import type {
3
3
  UnboundTables as SqlBuilderUnboundTables,
4
4
  TableProxyContract,
5
5
  } from '@prisma-next/sql-builder/types';
6
- import type { ExtractCodecTypes, SqlStorage, StorageColumn } from '@prisma-next/sql-contract/types';
6
+ import type {
7
+ ExtractCodecTypes,
8
+ ExtractFieldOutputTypes,
9
+ SqlStorage,
10
+ StorageColumn,
11
+ } from '@prisma-next/sql-contract/types';
7
12
  import type { DrainOuterGeneric } from './type-atoms';
8
13
 
9
14
  /**
@@ -16,8 +21,37 @@ export type UnboundTables<TContract extends Contract<SqlStorage>> = SqlBuilderUn
16
21
  >;
17
22
 
18
23
  /**
19
- * A utility type to extract the output type of a referenced column from a contract.
20
- * Uses the type-only codec channel (ExtractCodecTypes), not runtime mappings.
24
+ * The field-output override (the enum value union) for a `table.column`, or
25
+ * `never` when no model field maps to it. The emitted `FieldOutputTypes`
26
+ * TypeMap is keyed by model/field, so one pass over the models matches both the
27
+ * `storage.table` and the field's `storage.fields[*].column` to read the
28
+ * already-narrowed type back out.
29
+ */
30
+ type FieldOutputOverride<
31
+ TContract extends Contract,
32
+ TTableName extends string,
33
+ TColumnName extends string,
34
+ Models = ContractModelDefinitions<TContract>,
35
+ FOT = ExtractFieldOutputTypes<TContract>,
36
+ > = {
37
+ [M in keyof Models & keyof FOT & string]: Models[M] extends {
38
+ readonly storage: { readonly table: TTableName; readonly fields: infer Fields };
39
+ }
40
+ ? {
41
+ [F in keyof Fields & keyof FOT[M] & string]: Fields[F] extends {
42
+ readonly column: TColumnName;
43
+ }
44
+ ? FOT[M][F]
45
+ : never;
46
+ }[keyof Fields & keyof FOT[M] & string]
47
+ : never;
48
+ }[keyof Models & keyof FOT & string];
49
+
50
+ /**
51
+ * The output type of a referenced column. Returns the enum value union from the
52
+ * `FieldOutputTypes` TypeMap when the column is enum-typed (the override already
53
+ * carries the correct nullability), otherwise the codec output type with column
54
+ * nullability applied.
21
55
  *
22
56
  * @template TContract The contract that describes the database.
23
57
  * @template TTableName The name of the table containing the column.
@@ -28,11 +62,13 @@ export type ExtractOutputType<
28
62
  TTableName extends keyof UnboundTables<TContract> & string,
29
63
  TColumnName extends keyof UnboundTables<TContract>[TTableName]['columns'] & string,
30
64
  _TColumn = UnboundTables<TContract>[TTableName]['columns'][TColumnName],
31
- > = _TColumn extends StorageColumn
32
- ?
33
- | (_TColumn['nullable'] extends true ? null : never)
34
- | ExtractCodecTypes<TContract>[_TColumn['codecId']]['output']
35
- : never;
65
+ > = [FieldOutputOverride<TContract, TTableName, TColumnName>] extends [never]
66
+ ? _TColumn extends StorageColumn
67
+ ?
68
+ | (_TColumn['nullable'] extends true ? null : never)
69
+ | ExtractCodecTypes<TContract>[_TColumn['codecId']]['output']
70
+ : never
71
+ : FieldOutputOverride<TContract, TTableName, TColumnName>;
36
72
 
37
73
  /**
38
74
  * A type representing a selection of columns in a SQL `select` query in the