@soda-gql/core 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/README.md +70 -135
  2. package/dist/adapter.cjs +35 -0
  3. package/dist/adapter.cjs.map +1 -0
  4. package/dist/adapter.d.cts +35 -0
  5. package/dist/adapter.d.cts.map +1 -0
  6. package/dist/adapter.d.ts +35 -0
  7. package/dist/adapter.d.ts.map +1 -0
  8. package/dist/adapter.js +34 -0
  9. package/dist/adapter.js.map +1 -0
  10. package/dist/index-B-erotAZ.d.cts +657 -0
  11. package/dist/index-B-erotAZ.d.cts.map +1 -0
  12. package/dist/index-Djr9A4KL.d.ts +657 -0
  13. package/dist/index-Djr9A4KL.d.ts.map +1 -0
  14. package/dist/index.cjs +430 -416
  15. package/dist/index.cjs.map +1 -0
  16. package/dist/index.d.cts +88 -3
  17. package/dist/index.d.cts.map +1 -0
  18. package/dist/index.d.ts +88 -3
  19. package/dist/index.d.ts.map +1 -0
  20. package/dist/index.js +399 -386
  21. package/dist/index.js.map +1 -1
  22. package/dist/runtime.cjs +85 -0
  23. package/dist/runtime.cjs.map +1 -0
  24. package/dist/runtime.d.cts +40 -0
  25. package/dist/runtime.d.cts.map +1 -0
  26. package/dist/runtime.d.ts +40 -0
  27. package/dist/runtime.d.ts.map +1 -0
  28. package/dist/runtime.js +82 -0
  29. package/dist/runtime.js.map +1 -0
  30. package/dist/schema-Bip7o0g3.cjs +128 -0
  31. package/dist/schema-Bip7o0g3.cjs.map +1 -0
  32. package/dist/{index-zGZ61WLt.d.cts → schema-BygZwEX8.d.ts} +246 -117
  33. package/dist/schema-BygZwEX8.d.ts.map +1 -0
  34. package/dist/schema-D9wIW5Dl.js +86 -0
  35. package/dist/schema-D9wIW5Dl.js.map +1 -0
  36. package/dist/{index-Db9ogofS.d.ts → schema-DRkKucYe.d.cts} +246 -117
  37. package/dist/schema-DRkKucYe.d.cts.map +1 -0
  38. package/dist/schema-builder-8zadflz-.d.cts +40 -0
  39. package/dist/schema-builder-8zadflz-.d.cts.map +1 -0
  40. package/dist/schema-builder-vwQtCGYI.d.ts +40 -0
  41. package/dist/schema-builder-vwQtCGYI.d.ts.map +1 -0
  42. package/package.json +34 -14
  43. package/dist/index-DYwkqPzd.d.ts +0 -1015
  44. package/dist/index-DYwkqPzd.d.ts.map +0 -1
  45. package/dist/index-Db9ogofS.d.ts.map +0 -1
  46. package/dist/index-Dth0NSJt.d.cts +0 -1015
  47. package/dist/index-Dth0NSJt.d.cts.map +0 -1
  48. package/dist/index-zGZ61WLt.d.cts.map +0 -1
  49. package/dist/merge-CeMx09is.js +0 -74
  50. package/dist/merge-CeMx09is.js.map +0 -1
  51. package/dist/merge-ZxKV1syS.cjs +0 -85
  52. package/dist/metadata/index.cjs +0 -62
  53. package/dist/metadata/index.d.cts +0 -71
  54. package/dist/metadata/index.d.cts.map +0 -1
  55. package/dist/metadata/index.d.ts +0 -71
  56. package/dist/metadata/index.d.ts.map +0 -1
  57. package/dist/metadata/index.js +0 -59
  58. package/dist/metadata/index.js.map +0 -1
  59. package/dist/runtime/index.cjs +0 -107
  60. package/dist/runtime/index.d.cts +0 -72
  61. package/dist/runtime/index.d.cts.map +0 -1
  62. package/dist/runtime/index.d.ts +0 -72
  63. package/dist/runtime/index.d.ts.map +0 -1
  64. package/dist/runtime/index.js +0 -104
  65. package/dist/runtime/index.js.map +0 -1
  66. package/dist/slice-BuSNc8vw.js +0 -278
  67. package/dist/slice-BuSNc8vw.js.map +0 -1
  68. package/dist/slice-C-FIQK-f.cjs +0 -373
@@ -1,1015 +0,0 @@
1
- import { A as AnyDefaultValue, B as OutputInferrableTypeSpecifier, C as OperationRoots, D as UnionDefinition, E as ScalarDefinition, H as OutputScalarSpecifier, J as AnyVarRef, K as OutputTypenameSpecifier, L as InputTypeSpecifier, O as UnionMemberName, R as InputTypeSpecifiers, S as ObjectFieldRecord, T as PickTypeSpecifierByFieldName, V as OutputObjectSpecifier, W as OutputTypeSpecifier, X as VarRef, Z as VarRefInner, _ as InferInputProfile, at as GetConstAssignableType, ct as TypeProfile, d as SliceMetadataBuilder, dt as ValidTypeModifier, ft as ConstValue, g as EnumDefinition, h as AnyTypeName, it as GetAssigningType, l as OperationMetadata, lt as ApplyTypeModifier, m as AnyGraphqlSchema, ot as GetModifiedType, p as AnyFieldName, q as OutputUnionSpecifier, r as AnyMetadataAdapter, s as MetadataBuilder, u as SliceMetadata, ut as TypeModifier, v as InferOutputProfile, w as OperationType, x as ObjectDefinition, y as InputDefinition, z as OutputEnumSpecifier } from "./index-zGZ61WLt.cjs";
2
- import { TypedDocumentNode } from "@graphql-typed-document-node/core";
3
- import { ConstValueNode, FormattedExecutionResult, GraphQLFormattedError, NamedTypeNode, OperationTypeNode, TypeNode, ValueNode } from "graphql";
4
-
5
- //#region packages/core/src/types/type-foundation/modified-type-name.d.ts
6
- type ModifiedTypeName<TNameCandidate extends [string], TName extends TNameCandidate[0], TModifier extends TypeModifier> = [string] extends TNameCandidate ? `${TName}:${TModifier}` : TNameCandidate extends [TName] ?
7
- // First, user inputs TName based on TNameCandidate
8
- NoInfer<`${TNameCandidate[0]}`> | (TName & NoInfer<TypeModifier extends TModifier ? never : string>) : `${TName}:${TModifier & ValidTypeModifier}`;
9
- declare function parseModifiedTypeName<TNameCandidate extends [string], TName extends string, TModifier extends TypeModifier>(nameAndModifier: ModifiedTypeName<TNameCandidate, TName, TModifier>): {
10
- name: TName;
11
- modifier: TModifier;
12
- };
13
- //#endregion
14
- //#region packages/core/src/types/type-foundation/type-modifier-extension.generated.d.ts
15
- interface Op<T> {
16
- readonly 0: T[];
17
- readonly 1: T[] | null | undefined;
18
- }
19
- type Ref<TProfile extends TypeProfile.WithMeta> = VarRef<TypeProfile.AssignableVarRefMeta<TProfile>>;
20
- type Assignable_0<T extends TypeProfile.WithMeta> = TypeProfile.AssignableType<[T[0], "!", T[2]]>;
21
- type Assignable_1<T extends TypeProfile.WithMeta> = TypeProfile.AssignableType<[T[0], "?", T[2]]>;
22
- type Assignable_00<T extends TypeProfile.WithMeta> = Ref<[T[0], "![]!", T[2]]> | Op<Assignable_0<[T[0], "!"]>>[0];
23
- type Assignable_01<T extends TypeProfile.WithMeta> = Ref<[T[0], "![]?", T[2]]> | Op<Assignable_0<[T[0], "!"]>>[1];
24
- type Assignable_10<T extends TypeProfile.WithMeta> = Ref<[T[0], "?[]!", T[2]]> | Op<Assignable_1<[T[0], "?"]>>[0];
25
- type Assignable_11<T extends TypeProfile.WithMeta> = Ref<[T[0], "?[]?", T[2]]> | Op<Assignable_1<[T[0], "?"]>>[1];
26
- type Assignable_000<T extends TypeProfile.WithMeta> = Ref<[T[0], "![]![]!", T[2]]> | Op<Assignable_00<[T[0], "!"]>>[0];
27
- type Assignable_001<T extends TypeProfile.WithMeta> = Ref<[T[0], "![]![]?", T[2]]> | Op<Assignable_00<[T[0], "!"]>>[1];
28
- type Assignable_010<T extends TypeProfile.WithMeta> = Ref<[T[0], "![]?[]!", T[2]]> | Op<Assignable_01<[T[0], "!"]>>[0];
29
- type Assignable_011<T extends TypeProfile.WithMeta> = Ref<[T[0], "![]?[]?", T[2]]> | Op<Assignable_01<[T[0], "!"]>>[1];
30
- type Assignable_100<T extends TypeProfile.WithMeta> = Ref<[T[0], "?[]![]!", T[2]]> | Op<Assignable_10<[T[0], "?"]>>[0];
31
- type Assignable_101<T extends TypeProfile.WithMeta> = Ref<[T[0], "?[]![]?", T[2]]> | Op<Assignable_10<[T[0], "?"]>>[1];
32
- type Assignable_110<T extends TypeProfile.WithMeta> = Ref<[T[0], "?[]?[]!", T[2]]> | Op<Assignable_11<[T[0], "?"]>>[0];
33
- type Assignable_111<T extends TypeProfile.WithMeta> = Ref<[T[0], "?[]?[]?", T[2]]> | Op<Assignable_11<[T[0], "?"]>>[1];
34
- type Assignable_0000<T extends TypeProfile.WithMeta> = Ref<[T[0], "![]![]![]!", T[2]]> | Op<Assignable_000<[T[0], "!"]>>[0];
35
- type Assignable_0001<T extends TypeProfile.WithMeta> = Ref<[T[0], "![]![]![]?", T[2]]> | Op<Assignable_000<[T[0], "!"]>>[1];
36
- type Assignable_0010<T extends TypeProfile.WithMeta> = Ref<[T[0], "![]![]?[]!", T[2]]> | Op<Assignable_001<[T[0], "!"]>>[0];
37
- type Assignable_0011<T extends TypeProfile.WithMeta> = Ref<[T[0], "![]![]?[]?", T[2]]> | Op<Assignable_001<[T[0], "!"]>>[1];
38
- type Assignable_0100<T extends TypeProfile.WithMeta> = Ref<[T[0], "![]?[]![]!", T[2]]> | Op<Assignable_010<[T[0], "!"]>>[0];
39
- type Assignable_0101<T extends TypeProfile.WithMeta> = Ref<[T[0], "![]?[]![]?", T[2]]> | Op<Assignable_010<[T[0], "!"]>>[1];
40
- type Assignable_0110<T extends TypeProfile.WithMeta> = Ref<[T[0], "![]?[]?[]!", T[2]]> | Op<Assignable_011<[T[0], "!"]>>[0];
41
- type Assignable_0111<T extends TypeProfile.WithMeta> = Ref<[T[0], "![]?[]?[]?", T[2]]> | Op<Assignable_011<[T[0], "!"]>>[1];
42
- type Assignable_1000<T extends TypeProfile.WithMeta> = Ref<[T[0], "?[]![]![]!", T[2]]> | Op<Assignable_100<[T[0], "?"]>>[0];
43
- type Assignable_1001<T extends TypeProfile.WithMeta> = Ref<[T[0], "?[]![]![]?", T[2]]> | Op<Assignable_100<[T[0], "?"]>>[1];
44
- type Assignable_1010<T extends TypeProfile.WithMeta> = Ref<[T[0], "?[]![]?[]!", T[2]]> | Op<Assignable_101<[T[0], "?"]>>[0];
45
- type Assignable_1011<T extends TypeProfile.WithMeta> = Ref<[T[0], "?[]![]?[]?", T[2]]> | Op<Assignable_101<[T[0], "?"]>>[1];
46
- type Assignable_1100<T extends TypeProfile.WithMeta> = Ref<[T[0], "?[]?[]![]!", T[2]]> | Op<Assignable_110<[T[0], "?"]>>[0];
47
- type Assignable_1101<T extends TypeProfile.WithMeta> = Ref<[T[0], "?[]?[]![]?", T[2]]> | Op<Assignable_110<[T[0], "?"]>>[1];
48
- type Assignable_1110<T extends TypeProfile.WithMeta> = Ref<[T[0], "?[]?[]?[]!", T[2]]> | Op<Assignable_111<[T[0], "?"]>>[0];
49
- type Assignable_1111<T extends TypeProfile.WithMeta> = Ref<[T[0], "?[]?[]?[]?", T[2]]> | Op<Assignable_111<[T[0], "?"]>>[1];
50
- type GetAssignableType<T extends TypeProfile.WithMeta> = T[1] extends "!" ? Assignable_0<T> : T[1] extends "?" ? Assignable_1<T> : T[1] extends "![]!" ? Assignable_00<T> : T[1] extends "![]?" ? Assignable_01<T> : T[1] extends "?[]!" ? Assignable_10<T> : T[1] extends "?[]?" ? Assignable_11<T> : T[1] extends "![]![]!" ? Assignable_000<T> : T[1] extends "![]![]?" ? Assignable_001<T> : T[1] extends "![]?[]!" ? Assignable_010<T> : T[1] extends "![]?[]?" ? Assignable_011<T> : T[1] extends "?[]![]!" ? Assignable_100<T> : T[1] extends "?[]![]?" ? Assignable_101<T> : T[1] extends "?[]?[]!" ? Assignable_110<T> : T[1] extends "?[]?[]?" ? Assignable_111<T> : T[1] extends "![]![]![]!" ? Assignable_0000<T> : T[1] extends "![]![]![]?" ? Assignable_0001<T> : T[1] extends "![]![]?[]!" ? Assignable_0010<T> : T[1] extends "![]![]?[]?" ? Assignable_0011<T> : T[1] extends "![]?[]![]!" ? Assignable_0100<T> : T[1] extends "![]?[]![]?" ? Assignable_0101<T> : T[1] extends "![]?[]?[]!" ? Assignable_0110<T> : T[1] extends "![]?[]?[]?" ? Assignable_0111<T> : T[1] extends "?[]![]![]!" ? Assignable_1000<T> : T[1] extends "?[]![]![]?" ? Assignable_1001<T> : T[1] extends "?[]![]?[]!" ? Assignable_1010<T> : T[1] extends "?[]![]?[]?" ? Assignable_1011<T> : T[1] extends "?[]?[]![]!" ? Assignable_1100<T> : T[1] extends "?[]?[]![]?" ? Assignable_1101<T> : T[1] extends "?[]?[]?[]!" ? Assignable_1110<T> : T[1] extends "?[]?[]?[]?" ? Assignable_1111<T> : never;
51
- //#endregion
52
- //#region packages/core/src/types/fragment/assignable-input.d.ts
53
- type AnyAssignableInputValue = ConstValue | AnyVarRef | {
54
- [key: string]: AnyAssignableInputValue;
55
- } | AnyAssignableInputValue[] | undefined | null;
56
- type AnyAssignableInput = {
57
- readonly [key: string]: AnyAssignableInputValue;
58
- };
59
- type AnyAssigningInput = {
60
- readonly [key: string]: AnyVarRef;
61
- };
62
- type IsOptional$1<TSpecifier$1 extends InputTypeSpecifier> = TSpecifier$1["modifier"] extends `${string}?` ? true : TSpecifier$1["defaultValue"] extends AnyDefaultValue ? true : false;
63
- type AssignableInput<TSchema extends AnyGraphqlSchema, TSpecifiers extends InputTypeSpecifiers> = { readonly [K in keyof TSpecifiers as IsOptional$1<TSpecifiers[K]> extends true ? K : never]+?: AssignableInputValue<TSchema, TSpecifiers[K]> } & { readonly [K in keyof TSpecifiers as IsOptional$1<TSpecifiers[K]> extends false ? K : never]-?: AssignableInputValue<TSchema, TSpecifiers[K]> };
64
- type AssignableInputValue<TSchema extends AnyGraphqlSchema, TSpecifier$1 extends InputTypeSpecifier> = GetAssignableType<InferInputProfile<TSchema, TSpecifier$1>>;
65
- type AssigningInput<TSchema extends AnyGraphqlSchema, TSpecifiers extends InputTypeSpecifiers> = { readonly [K in keyof TSpecifiers]-?: GetAssigningType<InferInputProfile<TSchema, TSpecifiers[K]>> };
66
- type AssignableInputByFieldName<TSchema extends AnyGraphqlSchema, TTypeName$1 extends keyof TSchema["object"], TFieldName$1 extends keyof TSchema["object"][TTypeName$1]["fields"]> = AssignableInput<TSchema, TSchema["object"][TTypeName$1]["fields"][TFieldName$1]["arguments"]>;
67
- //#endregion
68
- //#region packages/core/src/types/fragment/directives.d.ts
69
- type AnyDirectiveAttachments = {
70
- readonly [key: string]: AnyAssignableInput;
71
- };
72
- //#endregion
73
- //#region packages/core/src/types/schema/const-assignable-input.d.ts
74
- type AnyConstAssignableInputValue = ConstValue;
75
- type AnyConstAssignableInput = {
76
- readonly [key: string]: AnyConstAssignableInputValue;
77
- };
78
- type IsOptional<TSpecifier$1 extends InputTypeSpecifier> = TSpecifier$1["modifier"] extends `${string}?` ? true : TSpecifier$1["defaultValue"] extends AnyDefaultValue ? true : false;
79
- type ConstAssignableInput<TSchema extends AnyGraphqlSchema, TSpecifiers extends InputTypeSpecifiers> = { readonly [K in keyof TSpecifiers as IsOptional<TSpecifiers[K]> extends true ? K : never]+?: ConstAssignableInputValue<TSchema, TSpecifiers[K]> } & { readonly [K in keyof TSpecifiers as IsOptional<TSpecifiers[K]> extends false ? K : never]-?: ConstAssignableInputValue<TSchema, TSpecifiers[K]> };
80
- type ConstAssignableInputValue<TSchema extends AnyGraphqlSchema, TSpecifier$1 extends InputTypeSpecifier> = GetConstAssignableType<InferInputProfile<TSchema, TSpecifier$1>> & {};
81
- //#endregion
82
- //#region packages/core/src/types/schema/const-directives.d.ts
83
- type AnyConstDirectiveAttachments = {
84
- readonly [key: string]: AnyConstAssignableInputValue;
85
- };
86
- //#endregion
87
- //#region packages/core/src/types/fragment/field-selection.d.ts
88
- /**
89
- * Canonical representation of the field selections we collect during model and
90
- * slice definition. Each alias maps to a typed field reference that still
91
- * remembers its parent type, arguments, directives, and nested selections.
92
- */
93
- type AnyFieldSelection = {
94
- readonly parent: AnyTypeName;
95
- readonly field: AnyFieldName;
96
- readonly type: OutputTypeSpecifier;
97
- readonly args: AnyAssignableInput;
98
- readonly directives: AnyDirectiveAttachments;
99
- readonly object: AnyNestedObject | null;
100
- readonly union: AnyNestedUnion | null;
101
- };
102
- /** Nested selection produced when resolving an object field. */
103
- type AnyNestedObject = {
104
- readonly [alias: string]: AnyFieldSelection;
105
- };
106
- /** Nested selection produced when resolving a union field. */
107
- type AnyNestedUnion = {
108
- readonly [typeName: string]: AnyNestedObject | undefined;
109
- };
110
- /** Map of alias → field reference used by builders and inference. */
111
- type AnyFields = {
112
- readonly [alias: string]: AnyFieldSelection;
113
- };
114
- /** Strongly typed field reference produced for concrete schema members. */
115
- type AbstractFieldSelection<TTypeName$1 extends AnyTypeName, TFieldName$1 extends AnyFieldName, TSpecifier$1 extends OutputTypeSpecifier, TArgs extends AnyAssignableInput, TDirectives extends AnyDirectiveAttachments, TExtras extends {
116
- object: AnyNestedObject;
117
- } | {
118
- union: AnyNestedUnion;
119
- } | {
120
- _?: never;
121
- }> = {
122
- readonly parent: TTypeName$1;
123
- readonly field: TFieldName$1;
124
- readonly type: TSpecifier$1;
125
- readonly args: TArgs;
126
- readonly directives: TDirectives;
127
- readonly object: TExtras extends {
128
- object: infer TObject;
129
- } ? TObject : null;
130
- readonly union: TExtras extends {
131
- union: infer TUnion;
132
- } ? TUnion : null;
133
- };
134
- /** Convenience alias to obtain a typed field reference from the schema. */
135
- type FieldSelectionTemplateOf<TSchema extends AnyGraphqlSchema, TTypeName$1 extends keyof TSchema["object"] & string, TFieldName$1 extends keyof TSchema["object"][TTypeName$1]["fields"] & string> = PickTypeSpecifierByFieldName<TSchema, TTypeName$1, TFieldName$1> extends infer TRef extends OutputTypeSpecifier ? AbstractFieldSelection<TTypeName$1, TFieldName$1, TRef, AssignableInputByFieldName<TSchema, TTypeName$1, TFieldName$1>, AnyDirectiveAttachments, (TRef extends OutputObjectSpecifier ? {
136
- object: AnyNestedObject;
137
- } : never) | (TRef extends OutputUnionSpecifier ? {
138
- union: AnyNestedUnion;
139
- } : never)> : never;
140
- /** Resolve the data shape produced by a set of field selections. */
141
- type InferFields<TSchema extends AnyGraphqlSchema, TFields$1 extends AnyFields> = { [_ in TSchema["label"]]: { [TAliasName in keyof TFields$1]: InferField<TSchema, TFields$1[TAliasName]> } & {} }[TSchema["label"]];
142
- /** Resolve the data shape for a single field reference, including nested objects/unions. */
143
- type InferField<TSchema extends AnyGraphqlSchema, TSelection extends AnyFieldSelection> = (TSelection extends {
144
- type: infer TSpecifier extends OutputObjectSpecifier;
145
- object: infer TNested extends AnyNestedObject;
146
- } ? ApplyTypeModifier<InferFields<TSchema, TNested>, TSpecifier["modifier"]> : never) | (TSelection extends {
147
- type: infer TSpecifier extends OutputUnionSpecifier;
148
- union: infer TNested extends AnyNestedUnion;
149
- } ? ApplyTypeModifier<{ [TTypename in keyof TNested]: undefined extends TNested[TTypename] ? never : InferFields<TSchema, NonNullable<TNested[TTypename]>> }[keyof TNested], TSpecifier["modifier"]> : never) | (TSelection extends {
150
- type: infer TSpecifier extends OutputInferrableTypeSpecifier;
151
- } ? GetModifiedType<InferOutputProfile<TSchema, TSpecifier>, TSpecifier["modifier"]> : never);
152
- //#endregion
153
- //#region packages/core/src/types/fragment/field-path.d.ts
154
- type AnyFieldPath = string;
155
- /**
156
- * Computes strongly typed "$.foo.bar" style selectors for a set of fields so
157
- * slice result transforms can reference response paths safely.
158
- */
159
- type AvailableFieldPathOf<TSchema extends AnyGraphqlSchema, TFields$1 extends AnyFields> = AvailableFieldPathsInner<TSchema, TFields$1, "$">;
160
- /** Recursive helper used to build path strings for nested selections. */
161
- type AvailableFieldPathsInner<TSchema extends AnyGraphqlSchema, TFields$1 extends AnyFields, TCurr extends AnyFieldPath> = { readonly [TAliasName in keyof TFields$1 & string]: `${TCurr}.${TAliasName}` | (TFields$1[TAliasName] extends {
162
- object: infer TNested extends AnyNestedObject;
163
- } ? AvailableFieldPathsInner<TSchema, TNested, `${TCurr}.${TAliasName}`> : never) }[keyof TFields$1 & string];
164
- /** Resolve the TypeScript type located at a given field path. */
165
- type InferByFieldPath<TSchema extends AnyGraphqlSchema, TFields$1 extends AnyFields, TPath extends AnyFieldPath> = string extends keyof TFields$1 ? any : TPath extends "$" ? never : InferByFieldPathInner<TSchema, TFields$1, TPath, "$">;
166
- /** Internal helper that walks a field tree while matching a path literal. */
167
- type InferByFieldPathInner<TSchema extends AnyGraphqlSchema, TFields$1 extends AnyFields, TPathTarget extends AnyFieldPath, TPathCurrent extends AnyFieldPath> = { readonly [TAliasName in keyof TFields$1]: TAliasName extends string ? `${TPathCurrent}.${TAliasName}` extends TPathTarget ? InferField<TSchema, TFields$1[TAliasName]> : TFields$1[TAliasName] extends {
168
- object: infer TNested extends AnyNestedObject;
169
- } ? InferByFieldPathInner<TSchema, TNested, TPathTarget, `${TPathCurrent}.${TAliasName}`> : never : never }[keyof TFields$1];
170
- //#endregion
171
- //#region packages/core/src/composer/build-document.d.ts
172
- declare const buildArgumentValue: (value: AnyAssignableInputValue) => ValueNode | null;
173
- declare const buildConstValueNode: (value: ConstValue) => ConstValueNode | null;
174
- declare const buildWithTypeModifier: (modifier: TypeModifier, buildType: () => NamedTypeNode) => TypeNode;
175
- declare const buildOperationTypeNode: (operation: OperationType) => OperationTypeNode;
176
- declare const buildDocument: <TSchema extends AnyGraphqlSchema, TFields$1 extends AnyFields, TVarDefinitions extends InputTypeSpecifiers>(options: {
177
- operationName: string;
178
- operationType: OperationType;
179
- variables: TVarDefinitions;
180
- fields: TFields$1;
181
- }) => TypedDocumentNode<InferFields<TSchema, TFields$1>, ConstAssignableInput<TSchema, TVarDefinitions>>;
182
- //#endregion
183
- //#region packages/core/src/types/element/gql-element.d.ts
184
- declare const GQL_ELEMENT_FACTORY: unique symbol;
185
- declare const GQL_ELEMENT_CONTEXT: unique symbol;
186
- type GqlElementContext = {
187
- canonicalId: string;
188
- };
189
- type GqlElementDefinitionFactory<T> = (context: GqlElementContext | null) => T | Promise<T>;
190
- declare abstract class GqlElement<TDefinition extends object, TInfer extends object = object> {
191
- readonly $infer: TInfer;
192
- private [GQL_ELEMENT_FACTORY];
193
- private [GQL_ELEMENT_CONTEXT];
194
- protected constructor(define: GqlElementDefinitionFactory<TDefinition>, getDeps?: () => GqlElement<any>[]);
195
- static setContext<TElement extends GqlElement<any>>(element: TElement, context: GqlElementContext): void;
196
- static createEvaluationGenerator(element: GqlElement<any>): Generator<Promise<void>, void, void>;
197
- private static evaluateInstantly;
198
- static evaluateSync(element: GqlElement<any>): void;
199
- static get<TValue extends object>(element: GqlElement<TValue>): TValue;
200
- }
201
- //#endregion
202
- //#region packages/core/src/utils/hidden.d.ts
203
- declare const hidden: <T>() => (() => T);
204
- type Hidden<T> = () => T;
205
- //#endregion
206
- //#region packages/core/src/utils/type-utils.d.ts
207
- type UnionToIntersection<U> = (U extends any ? (x: U) => void : never) extends ((x: infer I) => void) ? I : never;
208
- type Tuple<T> = [T, ...T[]];
209
- type StripFunctions<T extends object> = { [K in keyof T as K extends "$infer" ? never : T[K] extends ((...args: any[]) => any) ? never : K]: T[K] };
210
- type StripSymbols<T extends object> = { [K in keyof T as K extends symbol | "$infer" ? never : K]: T[K] };
211
- //#endregion
212
- //#region packages/core/src/types/runtime/runtime-adapter.d.ts
213
- /**
214
- * Defines the runtime surface that the typed layer depends on. Implementations
215
- * adapt framework-specific error payloads without leaking those types into the
216
- * generated code.
217
- */
218
- type AnyGraphqlRuntimeAdapter = {
219
- nonGraphqlErrorType: Hidden<any>;
220
- };
221
- //#endregion
222
- //#region packages/core/src/types/runtime/execution-result.d.ts
223
- type NormalizedExecutionResult<TRuntimeAdapter extends AnyGraphqlRuntimeAdapter, TData, TExtensions> = EmptyResult | GraphqlExecutionResult<TData, TExtensions> | NonGraphqlErrorResult<TRuntimeAdapter>;
224
- type EmptyResult = {
225
- type: "empty";
226
- };
227
- type GraphqlExecutionResult<TData, TExtensions> = {
228
- type: "graphql";
229
- body: FormattedExecutionResult<TData, TExtensions>;
230
- };
231
- type NonGraphqlErrorResult<TRuntimeAdapter extends AnyGraphqlRuntimeAdapter> = {
232
- type: "non-graphql-error";
233
- error: ReturnType<TRuntimeAdapter["nonGraphqlErrorType"]>;
234
- };
235
- type NormalizedError<TRuntimeAdapter extends AnyGraphqlRuntimeAdapter> = {
236
- type: "graphql-error";
237
- errors: GraphQLFormattedError[];
238
- } | {
239
- type: "non-graphql-error";
240
- error: ReturnType<TRuntimeAdapter["nonGraphqlErrorType"]>;
241
- } | {
242
- type: "parse-error";
243
- errors: Error[];
244
- };
245
- //#endregion
246
- //#region packages/core/src/types/runtime/sliced-execution-result.d.ts
247
- type AnySlicedExecutionResult = SlicedExecutionResult<any, AnyGraphqlRuntimeAdapter>;
248
- /**
249
- * Internal discriminated union describing the Result-like wrapper exposed to
250
- * slice selection callbacks. The adapter decides how raw errors are
251
- * materialized.
252
- */
253
- type AnySlicedExecutionResultRecord = {
254
- [path: string]: AnySlicedExecutionResult;
255
- };
256
- type SafeUnwrapResult<TTransformed, TError> = {
257
- data?: never;
258
- error?: never;
259
- } | {
260
- data: TTransformed;
261
- error?: never;
262
- } | {
263
- data?: never;
264
- error: TError;
265
- };
266
- /** Utility signature returned by the safe unwrap helper. */
267
- type SlicedExecutionResultCommon<TData, TError> = {
268
- safeUnwrap<TTransformed>(transform: (data: TData) => TTransformed): SafeUnwrapResult<TTransformed, TError>;
269
- };
270
- /** Public union used by selection callbacks to inspect data, empty, or error states. */
271
- type SlicedExecutionResult<TData, TRuntimeAdapter extends AnyGraphqlRuntimeAdapter> = SlicedExecutionResultEmpty<TData, TRuntimeAdapter> | SlicedExecutionResultSuccess<TData, TRuntimeAdapter> | SlicedExecutionResultError<TData, TRuntimeAdapter>;
272
- /** Runtime guard interface shared by all slice result variants. */
273
- declare class SlicedExecutionResultGuards<TData, TRuntimeAdapter extends AnyGraphqlRuntimeAdapter> {
274
- private readonly type;
275
- isSuccess(): this is SlicedExecutionResultSuccess<TData, TRuntimeAdapter>;
276
- isError(): this is SlicedExecutionResultError<TData, TRuntimeAdapter>;
277
- isEmpty(): this is SlicedExecutionResultEmpty<TData, TRuntimeAdapter>;
278
- constructor(type: "success" | "error" | "empty");
279
- }
280
- /** Variant representing an empty payload (no data, no error). */
281
- declare class SlicedExecutionResultEmpty<TData, TRuntimeAdapter extends AnyGraphqlRuntimeAdapter> extends SlicedExecutionResultGuards<TData, TRuntimeAdapter> implements SlicedExecutionResultCommon<TData, NormalizedError<TRuntimeAdapter>> {
282
- constructor();
283
- unwrap(): null;
284
- safeUnwrap(): {
285
- data: undefined;
286
- error: undefined;
287
- };
288
- }
289
- /** Variant representing a successful payload. */
290
- declare class SlicedExecutionResultSuccess<TData, TRuntimeAdapter extends AnyGraphqlRuntimeAdapter> extends SlicedExecutionResultGuards<TData, TRuntimeAdapter> implements SlicedExecutionResultCommon<TData, NormalizedError<TRuntimeAdapter>> {
291
- readonly data: TData;
292
- readonly extensions?: unknown | undefined;
293
- constructor(data: TData, extensions?: unknown | undefined);
294
- unwrap(): TData;
295
- safeUnwrap<TTransformed>(transform: (data: TData) => TTransformed): {
296
- data: TTransformed;
297
- error: undefined;
298
- };
299
- }
300
- /** Variant representing an error payload created by the adapter. */
301
- declare class SlicedExecutionResultError<TData, TRuntimeAdapter extends AnyGraphqlRuntimeAdapter> extends SlicedExecutionResultGuards<TData, TRuntimeAdapter> implements SlicedExecutionResultCommon<TData, NormalizedError<TRuntimeAdapter>> {
302
- readonly error: NormalizedError<TRuntimeAdapter>;
303
- readonly extensions?: unknown | undefined;
304
- constructor(error: NormalizedError<TRuntimeAdapter>, extensions?: unknown | undefined);
305
- unwrap(): never;
306
- safeUnwrap(): {
307
- data: undefined;
308
- error: NormalizedError<TRuntimeAdapter>;
309
- };
310
- }
311
- //#endregion
312
- //#region packages/core/src/types/runtime/projection.d.ts
313
- /** Shape of a single selection slice projection. */
314
- type AnyProjection = Projection<any>;
315
- declare const __PROJECTION_BRAND__: unique symbol;
316
- /**
317
- * Nominal type representing any slice selection regardless of schema specifics.
318
- * Encodes how individual slices map a concrete field path to a projection
319
- * function. Multiple selections allow slices to expose several derived values.
320
- */
321
- declare class Projection<TProjected> {
322
- readonly projector: (result: AnySlicedExecutionResult) => TProjected;
323
- readonly [__PROJECTION_BRAND__]: Hidden<never>;
324
- constructor(paths: Tuple<string>, projector: (result: AnySlicedExecutionResult) => TProjected);
325
- readonly paths: ProjectionPath[];
326
- }
327
- type ProjectionPath = {
328
- full: string;
329
- segments: Tuple<string>;
330
- };
331
- type InferExecutionResultProjection<TProjection extends AnyProjection> = ReturnType<TProjection["projector"]>;
332
- //#endregion
333
- //#region packages/core/src/utils/empty-object.d.ts
334
- declare const __EMPTY_SYMBOL__: unique symbol;
335
- type EmptyObject = {
336
- readonly [__EMPTY_SYMBOL__]: never;
337
- };
338
- type IsEmptyObject<T> = keyof (T & EmptyObject) extends keyof EmptyObject ? true : false;
339
- type IfEmpty<TTarget, TType> = IsEmptyObject<TTarget> extends true ? TType : never;
340
- type SwitchIfEmpty<TTarget, TTrue, TFalse> = IsEmptyObject<TTarget> extends true ? TTrue : TFalse;
341
- declare const empty: () => EmptyObject;
342
- //#endregion
343
- //#region packages/core/src/types/element/slice.d.ts
344
- type AnySlice = AnySliceOf<"query"> | AnySliceOf<"mutation"> | AnySliceOf<"subscription">;
345
- type AnySliceOf<TOperationType extends OperationType> = Slice<TOperationType, any, AnyFields, AnyProjection>;
346
- type SliceInferMeta<TVariables, TProjected> = {
347
- readonly input: TVariables;
348
- readonly output: TProjected;
349
- };
350
- type SliceDefinition<TOperationType extends OperationType, TVariables extends Partial<AnyAssignableInput> | void, TFields$1 extends Partial<AnyFields>, TProjection extends AnyProjection> = {
351
- readonly operationType: TOperationType;
352
- readonly embed: (variables: TVariables) => SlicePayload<TVariables, TFields$1, TProjection>;
353
- };
354
- declare const __OPERATION_SLICE_BRAND__: unique symbol;
355
- declare class Slice<TOperationType extends OperationType, TVariables extends Partial<AnyAssignableInput> | void, TFields$1 extends Partial<AnyFields>, TProjection extends AnyProjection> extends GqlElement<SliceDefinition<TOperationType, TVariables, TFields$1, TProjection>, SliceInferMeta<TVariables, InferExecutionResultProjection<TProjection>>> implements SliceDefinition<TOperationType, TVariables, TFields$1, TProjection> {
356
- readonly [__OPERATION_SLICE_BRAND__]: Hidden<{
357
- operationType: TOperationType;
358
- output: InferExecutionResultProjection<TProjection>;
359
- }>;
360
- private constructor();
361
- get operationType(): TOperationType;
362
- get embed(): (variables: TVariables) => SlicePayload<TVariables, TFields$1, TProjection>;
363
- static create<TSchema extends AnyGraphqlSchema, TOperationType extends OperationType, TVariableDefinitions extends InputTypeSpecifiers, TFields$1 extends AnyFields, TProjection extends AnyProjection>(define: () => {
364
- operationType: TOperationType;
365
- embed: (variables: SwitchIfEmpty<TVariableDefinitions, void, AssignableInput<TSchema, TVariableDefinitions>>) => SlicePayload<SwitchIfEmpty<TVariableDefinitions, void, AssignableInput<TSchema, TVariableDefinitions>>, TFields$1, TProjection>;
366
- }): Slice<TOperationType, SwitchIfEmpty<TVariableDefinitions, void, AssignableInput<TSchema, TVariableDefinitions>>, TFields$1 & {
367
- [key: symbol]: never;
368
- }, TProjection>;
369
- }
370
- type AnySlicePayloads = {
371
- [key: string]: AnySlicePayload;
372
- };
373
- type AnySlicePayload = SlicePayload<AnyAssignableInput | void, AnyFields, AnyProjection>;
374
- type SlicePayload<TVariables extends Partial<AnyAssignableInput> | void, TFields$1 extends Partial<AnyFields>, TProjection extends AnyProjection> = {
375
- variables: TVariables;
376
- getFields: () => TFields$1;
377
- projection: TProjection;
378
- metadata?: SliceMetadata | Promise<SliceMetadata>;
379
- };
380
- type InferOutputOfSlice<TSlice extends AnySliceOf<any>> = ReturnType<TSlice[typeof __OPERATION_SLICE_BRAND__]>["output"];
381
- //#endregion
382
- //#region packages/core/src/types/element/composed-operation.d.ts
383
- type AnyComposedOperation = AnyComposedOperationOf<"query"> | AnyComposedOperationOf<"mutation"> | AnyComposedOperationOf<"subscription">;
384
- type AnyComposedOperationOf<TOperationType extends OperationType> = ComposedOperation<AnyGraphqlRuntimeAdapter, TOperationType, string, string[], any, any, any>;
385
- type ComposedOperationInferMeta<TVariables, TRawData extends object, TProjectedData extends object> = {
386
- readonly input: TVariables;
387
- readonly output: {
388
- readonly raw: TRawData;
389
- readonly projected: TProjectedData;
390
- };
391
- };
392
- declare const __COMPOSED_OPERATION_BRAND__: unique symbol;
393
- type ComposedOperationDefinition<TRuntimeAdapter extends AnyGraphqlRuntimeAdapter, TOperationType extends OperationType, TOperationName extends string, TVariableNames extends string[], TVariables extends AnyConstAssignableInput, TRawData extends object, TProjectedData extends object> = {
394
- readonly operationType: TOperationType;
395
- readonly operationName: TOperationName;
396
- readonly variableNames: TVariableNames;
397
- readonly projectionPathGraph: ProjectionPathGraphNode;
398
- readonly document: TypedDocumentNode<TRawData, TVariables>;
399
- readonly parse: (result: NormalizedExecutionResult<TRuntimeAdapter, TRawData, any>) => TProjectedData;
400
- readonly metadata?: OperationMetadata;
401
- };
402
- declare class ComposedOperation<TRuntimeAdapter extends AnyGraphqlRuntimeAdapter, TOperationType extends OperationType, TOperationName extends string, TVariableNames extends string[], TVariables extends AnyConstAssignableInput, TRawData extends object, TProjectedData extends object> extends GqlElement<ComposedOperationDefinition<TRuntimeAdapter, TOperationType, TOperationName, TVariableNames, TVariables, TRawData, TProjectedData>, ComposedOperationInferMeta<TVariables, TRawData, TProjectedData>> implements ComposedOperationDefinition<TRuntimeAdapter, TOperationType, TOperationName, TVariableNames, TVariables, TRawData, TProjectedData> {
403
- readonly [__COMPOSED_OPERATION_BRAND__]: Hidden<{
404
- operationType: TOperationType;
405
- }>;
406
- private constructor();
407
- get operationType(): TOperationType;
408
- get operationName(): TOperationName;
409
- get variableNames(): TVariableNames;
410
- get projectionPathGraph(): ProjectionPathGraphNode;
411
- get document(): TypedDocumentNode<TRawData, TVariables>;
412
- get parse(): (result: NormalizedExecutionResult<TRuntimeAdapter, TRawData, any>) => TProjectedData;
413
- get metadata(): OperationMetadata | undefined;
414
- static create<TSchema extends AnyGraphqlSchema, TRuntimeAdapter extends AnyGraphqlRuntimeAdapter, TOperationType extends OperationType, TOperationName extends string, TVariableDefinitions extends InputTypeSpecifiers, TSliceFragments extends AnySlicePayloads>(define: (context: GqlElementContext | null) => {
415
- operationType: TOperationType;
416
- operationName: TOperationName;
417
- variableNames: (keyof TVariableDefinitions & string)[];
418
- projectionPathGraph: ProjectionPathGraphNode;
419
- document: TypedDocumentNode<InferComposedOperationRawData<TSchema, TSliceFragments>, ConstAssignableInput<TSchema, TVariableDefinitions>>;
420
- parse: (result: NormalizedExecutionResult<TRuntimeAdapter, InferComposedOperationRawData<TSchema, TSliceFragments>, any>) => { [K in keyof TSliceFragments]: InferExecutionResultProjection<TSliceFragments[K]["projection"]> };
421
- metadata?: OperationMetadata;
422
- } | Promise<{
423
- operationType: TOperationType;
424
- operationName: TOperationName;
425
- variableNames: (keyof TVariableDefinitions & string)[];
426
- projectionPathGraph: ProjectionPathGraphNode;
427
- document: TypedDocumentNode<InferComposedOperationRawData<TSchema, TSliceFragments>, ConstAssignableInput<TSchema, TVariableDefinitions>>;
428
- parse: (result: NormalizedExecutionResult<TRuntimeAdapter, InferComposedOperationRawData<TSchema, TSliceFragments>, any>) => { [K in keyof TSliceFragments]: InferExecutionResultProjection<TSliceFragments[K]["projection"]> };
429
- metadata?: OperationMetadata;
430
- }>): ComposedOperation<TRuntimeAdapter, TOperationType, TOperationName, (keyof TVariableDefinitions & string)[], ConstAssignableInput<TSchema, TVariableDefinitions>, InferComposedOperationRawData<TSchema, TSliceFragments>, { [K in keyof TSliceFragments]: InferExecutionResultProjection<TSliceFragments[K]["projection"]> }>;
431
- }
432
- type ProjectionPathGraphNode = {
433
- readonly matches: {
434
- label: string;
435
- path: string;
436
- exact: boolean;
437
- }[];
438
- readonly children: {
439
- readonly [segment: string]: ProjectionPathGraphNode;
440
- };
441
- };
442
- type ConcatSlicePayloads<TSlicePayloads extends AnySlicePayloads> = UnionToIntersection<{ [TLabel in keyof TSlicePayloads & string]: TSlicePayloads[TLabel] extends {
443
- getFields: () => infer TFields;
444
- } ? { [K in keyof TFields & string as `${TLabel}_${K}`]: TFields[K] } : {} }[keyof TSlicePayloads & string]> & AnyFields;
445
- type InferComposedOperationRawData<TSchema extends AnyGraphqlSchema, TSlicePayloads extends AnySlicePayloads> = InferFields<TSchema, ConcatSlicePayloads<TSlicePayloads>>;
446
- type ComposedOperationDefinitionBuilder<TSchema extends AnyGraphqlSchema, TVarDefinitions extends InputTypeSpecifiers, TSliceContents extends AnySlicePayloads> = (tools: {
447
- $: NoInfer<AssigningInput<TSchema, TVarDefinitions>>;
448
- }) => TSliceContents;
449
- //#endregion
450
- //#region packages/core/src/types/element/execution-result-projection-builder.d.ts
451
- type AnyExecutionResultProjectionsBuilder = ExecutionResultProjectionsBuilder<AnyGraphqlSchema, AnyGraphqlRuntimeAdapter, any, any>;
452
- type ExecutionResultProjectionsBuilder<TSchema extends AnyGraphqlSchema, TRuntimeAdapter extends AnyGraphqlRuntimeAdapter, TFields$1 extends AnyFields, TProjection extends AnyProjection> = (tools: {
453
- select: ResultSelector<TSchema, TRuntimeAdapter, TFields$1>;
454
- }) => TProjection;
455
- type ResultSelector<TSchema extends AnyGraphqlSchema, TRuntimeAdapter extends AnyGraphqlRuntimeAdapter, TFields$1 extends AnyFields> = <TPaths extends Tuple<AvailableFieldPathOf<TSchema, TFields$1>>, TProjected>(paths: TPaths, projector: (result: NoInfer<SlicedExecutionResult<InferByResultSelectorPaths<TSchema, TFields$1, TPaths>, TRuntimeAdapter>>) => TProjected) => NoInfer<Projection<TProjected>>;
456
- type InferByResultSelectorPaths<TSchema extends AnyGraphqlSchema, TFields$1 extends AnyFields, TPaths extends Tuple<AvailableFieldPathOf<TSchema, TFields$1>>> = TPaths extends string[] ? { [K in keyof TPaths]: TPaths[K] extends string ? InferByFieldPath<TSchema, TFields$1, TPaths[K]> : never } : never;
457
- //#endregion
458
- //#region packages/core/src/types/element/fields-builder.d.ts
459
- declare const mergeFields: <TFieldEntries extends AnyFields[]>(fields: TFieldEntries) => MergeFields<TFieldEntries>;
460
- type MergeFields<TFieldEntries extends AnyFields[]> = UnionToIntersection<TFieldEntries[number]> extends infer TFieldsIntersection ? { [TFieldName in keyof TFieldsIntersection]: TFieldsIntersection[TFieldName] extends AnyFieldSelection ? TFieldsIntersection[TFieldName] : never } & {} : never;
461
- /**
462
- * Builder signature exposed to userland `model` and `slice` helpers. The
463
- * tooling `f`/`fields`/`_` aliases provide ergonomic access to GraphQL fields
464
- * while preserving the original schema information for inference.
465
- */
466
- type FieldsBuilder<TSchema extends AnyGraphqlSchema, TTypeName$1 extends keyof TSchema["object"] & string, TVariableDefinitions extends InputTypeSpecifiers, TFields$1 extends AnyFields[]> = (tools: NoInfer<FieldsBuilderTools<TSchema, TTypeName$1, TVariableDefinitions>>) => TFields$1;
467
- type FieldsBuilderTools<TSchema extends AnyGraphqlSchema, TTypeName$1 extends keyof TSchema["object"] & string, TVariableDefinitions extends InputTypeSpecifiers> = {
468
- f: FieldSelectionFactories<TSchema, TTypeName$1>;
469
- $: AssigningInput<TSchema, TVariableDefinitions>;
470
- };
471
- /** Narrow builder used when a field resolves to an object and we need nested selections. */
472
- type NestedObjectFieldsBuilder<TSchema extends AnyGraphqlSchema, TTypeName$1 extends keyof TSchema["object"] & string, TFields$1 extends AnyNestedObject[]> = (tools: NoInfer<NestedObjectFieldsBuilderTools<TSchema, TTypeName$1>>) => TFields$1;
473
- type NestedObjectFieldsBuilderTools<TSchema extends AnyGraphqlSchema, TTypeName$1 extends keyof TSchema["object"] & string> = {
474
- f: FieldSelectionFactories<TSchema, TTypeName$1>;
475
- };
476
- type NestedUnionFieldsBuilder<TSchema extends AnyGraphqlSchema, TMemberName extends string, TUnionFields extends AnyNestedUnion> = { [TTypename in keyof TUnionFields & TMemberName]?: NestedObjectFieldsBuilder<TSchema, TTypename, NonNullable<TUnionFields[TTypename]>[]> };
477
- /** Map each field to a factory capable of emitting fully-typed references. */
478
- type FieldSelectionFactories<TSchema extends AnyGraphqlSchema, TTypeName$1 extends keyof TSchema["object"] & string> = { [TFieldName in keyof ObjectFieldRecord<TSchema, TTypeName$1>]: TFieldName extends string ? FieldSelectionFactory<TSchema, FieldSelectionTemplateOf<TSchema, TTypeName$1, TFieldName>> : never };
479
- type AnyFieldSelectionFactory = <TAlias extends string | null = null>(fieldArgs: AnyAssignableInput | void, extras?: {
480
- alias?: TAlias;
481
- directives?: AnyDirectiveAttachments;
482
- }) => AnyFieldSelectionFactoryReturn<TAlias>;
483
- type FieldSelectionFactory<TSchema extends AnyGraphqlSchema, TSelection extends AnyFieldSelection> = <TAlias extends string | null = null>(fieldArgs: TSelection["args"] | IfEmpty<TSelection["args"], void | null>, extras?: {
484
- alias?: TAlias;
485
- directives?: TSelection["directives"];
486
- }) => FieldSelectionFactoryReturn<TSchema, TSelection, TAlias>;
487
- type AnyFieldSelectionFactoryReturn<TAlias extends string | null> = FieldSelectionFactoryReturn<AnyGraphqlSchema, AnyFieldSelection & {
488
- type: OutputObjectSpecifier;
489
- }, TAlias> | FieldSelectionFactoryReturn<AnyGraphqlSchema, AnyFieldSelection & {
490
- type: OutputUnionSpecifier;
491
- }, TAlias> | FieldSelectionFactoryReturn<AnyGraphqlSchema, AnyFieldSelection & {
492
- type: OutputTypenameSpecifier | OutputScalarSpecifier | OutputEnumSpecifier;
493
- }, TAlias>;
494
- type FieldSelectionFactoryReturn<TSchema extends AnyGraphqlSchema, TSelection extends AnyFieldSelection, TAlias extends string | null> = TSelection extends {
495
- type: OutputObjectSpecifier;
496
- } ? FieldSelectionFactoryObjectReturn<TSchema, TSelection, TAlias> : TSelection extends {
497
- type: OutputUnionSpecifier;
498
- } ? FieldSelectionFactoryUnionReturn<TSchema, TSelection, TAlias> : TSelection extends {
499
- type: OutputTypenameSpecifier | OutputScalarSpecifier | OutputEnumSpecifier;
500
- } ? FieldSelectionFactoryPrimitiveReturn<TSelection, TAlias> : never;
501
- type FieldSelectionFactoryObjectReturn<TSchema extends AnyGraphqlSchema, TSelection extends AnyFieldSelection & {
502
- type: OutputObjectSpecifier;
503
- }, TAlias extends string | null> = <TNested$1 extends AnyNestedObject[]>(nest: NestedObjectFieldsBuilder<TSchema, TSelection["type"]["name"], TNested$1>) => { [_ in TAlias extends null ? TSelection["field"] : TAlias]: AbstractFieldSelection<TSelection["parent"], TSelection["field"], TSelection["type"], TSelection["args"], TSelection["directives"], {
504
- object: MergeFields<TNested$1>;
505
- }> };
506
- type FieldSelectionFactoryUnionReturn<TSchema extends AnyGraphqlSchema, TSelection extends AnyFieldSelection & {
507
- type: OutputUnionSpecifier;
508
- }, TAlias extends string | null> = <TNested$1 extends AnyNestedUnion>(nest: NestedUnionFieldsBuilder<TSchema, UnionMemberName<TSchema, TSelection["type"]>, TNested$1>) => { [_ in TAlias extends null ? TSelection["field"] : TAlias]: AbstractFieldSelection<TSelection["parent"], TSelection["field"], TSelection["type"], TSelection["args"], TSelection["directives"], {
509
- union: TNested$1;
510
- }> };
511
- type FieldSelectionFactoryPrimitiveReturn<TSelection extends AnyFieldSelection & {
512
- type: OutputTypenameSpecifier | OutputScalarSpecifier | OutputEnumSpecifier;
513
- }, TAlias extends string | null> = { [_ in TAlias extends null ? TSelection["field"] : TAlias]: AbstractFieldSelection<TSelection["parent"], TSelection["field"], TSelection["type"], TSelection["args"], TSelection["directives"], {}> };
514
- type FieldSelectionFactoryFieldArguments<TFieldSelectionTemplate extends AnyFieldSelection> = TFieldSelectionTemplate["args"] | IfEmpty<TFieldSelectionTemplate["args"], void | null>;
515
- //#endregion
516
- //#region packages/core/src/types/element/inline-operation.d.ts
517
- type AnyInlineOperation = AnyInlineOperationOf<"query"> | AnyInlineOperationOf<"mutation"> | AnyInlineOperationOf<"subscription">;
518
- type AnyInlineOperationOf<TOperationType extends OperationType> = InlineOperation<TOperationType, string, string[], any, AnyFields, any>;
519
- type InlineOperationInferMeta<TVariables, TData extends object> = {
520
- readonly input: TVariables;
521
- readonly output: TData;
522
- };
523
- declare const __INLINE_OPERATION_BRAND__: unique symbol;
524
- type InlineOperationArtifact<TOperationType extends OperationType, TOperationName extends string, TVariableNames extends string[], TVariables extends AnyConstAssignableInput, TFields$1 extends Partial<AnyFields>, TData extends object> = {
525
- readonly operationType: TOperationType;
526
- readonly operationName: TOperationName;
527
- readonly variableNames: TVariableNames;
528
- readonly documentSource: () => TFields$1;
529
- readonly document: TypedDocumentNode<TData, TVariables>;
530
- readonly metadata?: OperationMetadata;
531
- };
532
- declare class InlineOperation<TOperationType extends OperationType, TOperationName extends string, TVariableNames extends string[], TVariables extends AnyConstAssignableInput, TFields$1 extends Partial<AnyFields>, TData extends object> extends GqlElement<InlineOperationArtifact<TOperationType, TOperationName, TVariableNames, TVariables, TFields$1, TData>, InlineOperationInferMeta<TVariables, TData>> implements InlineOperationArtifact<TOperationType, TOperationName, TVariableNames, TVariables, TFields$1, TData> {
533
- readonly [__INLINE_OPERATION_BRAND__]: Hidden<{
534
- operationType: TOperationType;
535
- }>;
536
- private constructor();
537
- get operationType(): TOperationType;
538
- get operationName(): TOperationName;
539
- get variableNames(): TVariableNames;
540
- get documentSource(): () => TFields$1;
541
- get document(): TypedDocumentNode<TData, TVariables>;
542
- get metadata(): OperationMetadata | undefined;
543
- static create<TSchema extends AnyGraphqlSchema, TOperationType extends OperationType, TOperationName extends string, TVariableDefinitions extends InputTypeSpecifiers, TFields$1 extends AnyFields>(define: (context: GqlElementContext | null) => {
544
- operationType: TOperationType;
545
- operationName: TOperationName;
546
- variableNames: (keyof TVariableDefinitions & string)[];
547
- documentSource: () => TFields$1;
548
- document: TypedDocumentNode<InferFields<TSchema, TFields$1>, ConstAssignableInput<TSchema, TVariableDefinitions>>;
549
- metadata?: OperationMetadata;
550
- } | Promise<{
551
- operationType: TOperationType;
552
- operationName: TOperationName;
553
- variableNames: (keyof TVariableDefinitions & string)[];
554
- documentSource: () => TFields$1;
555
- document: TypedDocumentNode<InferFields<TSchema, TFields$1>, ConstAssignableInput<TSchema, TVariableDefinitions>>;
556
- metadata?: OperationMetadata;
557
- }>): InlineOperation<TOperationType, TOperationName, (keyof TVariableDefinitions & string)[], ConstAssignableInput<TSchema, TVariableDefinitions>, TFields$1, InferFields<TSchema, TFields$1>>;
558
- }
559
- //#endregion
560
- //#region packages/core/src/types/element/model.d.ts
561
- type AnyModel = Model<string, any, AnyFields, any, any>;
562
- type ModelInferMeta<TVariables, TRaw extends object, TNormalized extends object> = {
563
- readonly input: TVariables;
564
- readonly output: {
565
- readonly raw: TRaw;
566
- readonly normalized: TNormalized;
567
- };
568
- };
569
- interface ModelArtifact<TTypeName$1 extends string, TVariables extends Partial<AnyAssignableInput> | void, TFields$1 extends Partial<AnyFields>, TRaw extends object, TNormalized extends object> {
570
- readonly typename: TTypeName$1;
571
- readonly fragment: (variables: TVariables) => TFields$1;
572
- readonly normalize: (raw: TRaw) => TNormalized;
573
- }
574
- declare const __MODEL_BRAND__: unique symbol;
575
- declare class Model<TTypeName$1 extends string, TVariables extends Partial<AnyAssignableInput> | void, TFields$1 extends Partial<AnyFields>, TRaw extends object, TNormalized extends object> extends GqlElement<ModelArtifact<TTypeName$1, TVariables, TFields$1, TRaw, TNormalized>, ModelInferMeta<TVariables, TRaw, TNormalized>> implements ModelArtifact<TTypeName$1, TVariables, TFields$1, TRaw, TNormalized> {
576
- readonly [__MODEL_BRAND__]: Hidden<{
577
- input: TVariables;
578
- output: TNormalized;
579
- }>;
580
- private constructor();
581
- get typename(): TTypeName$1;
582
- get fragment(): (variables: TVariables) => TFields$1;
583
- get normalize(): (raw: TRaw) => TNormalized;
584
- static create<TSchema extends AnyGraphqlSchema, TTypeName$1 extends keyof TSchema["object"] & string, TVariableDefinitions extends InputTypeSpecifiers, TFields$1 extends AnyFields, TNormalized extends object>(define: () => {
585
- typename: TTypeName$1;
586
- fragment: (variables: SwitchIfEmpty<TVariableDefinitions, void, AssignableInput<TSchema, TVariableDefinitions>>) => TFields$1;
587
- normalize: (raw: NoInfer<InferFields<TSchema, TFields$1>>) => TNormalized;
588
- }): Model<TTypeName$1, SwitchIfEmpty<TVariableDefinitions, void, AssignableInput<TSchema, TVariableDefinitions>>, TFields$1 & {
589
- [key: symbol]: never;
590
- }, InferFields<TSchema, TFields$1> & {
591
- [key: symbol]: never;
592
- }, TNormalized>;
593
- }
594
- //#endregion
595
- //#region packages/core/src/composer/input.d.ts
596
- declare const mergeVarDefinitions: <TVarDefinitions extends InputTypeSpecifiers[]>(definitions: TVarDefinitions) => MergeVarDefinitions<TVarDefinitions>;
597
- type MergeVarDefinitions<TVarDefinitions extends InputTypeSpecifiers[]> = UnionToIntersection<TVarDefinitions[number]> extends infer TDefinitions ? { readonly [K in keyof TDefinitions]: TDefinitions[K] } : never;
598
- declare const createVarAssignments: <TSchema extends AnyGraphqlSchema, TVariableDefinitions extends InputTypeSpecifiers>(definitions: TVariableDefinitions, providedValues: AnyAssignableInput | void) => AssigningInput<TSchema, TVariableDefinitions>;
599
- declare const createVarRefs: <TSchema extends AnyGraphqlSchema, TVarDefinitions extends InputTypeSpecifiers>(definitions: TVarDefinitions) => AssigningInput<TSchema, TVarDefinitions>;
600
- //#endregion
601
- //#region packages/core/src/composer/composed-operation.d.ts
602
- type ComposedOperationComposerOptions = {
603
- metadataAdapter?: AnyMetadataAdapter;
604
- };
605
- declare const createComposedOperationComposerFactory: <TSchema extends AnyGraphqlSchema, TRuntimeAdapter extends AnyGraphqlRuntimeAdapter>(options?: ComposedOperationComposerOptions) => <TOperationType extends OperationType>(operationType: TOperationType) => <TOperationName extends string, TSliceFragments extends AnySlicePayloads, TVarDefinitions extends InputTypeSpecifiers[] = [{}]>(options: {
606
- operationName: TOperationName;
607
- variables?: TVarDefinitions;
608
- metadata?: MetadataBuilder<ReturnType<typeof createVarRefs<TSchema, MergeVarDefinitions<TVarDefinitions>>>, OperationMetadata>;
609
- }, builder: ComposedOperationDefinitionBuilder<TSchema, MergeVarDefinitions<TVarDefinitions>, TSliceFragments>) => ComposedOperation<TRuntimeAdapter, TOperationType, TOperationName, (keyof MergeVarDefinitions<TVarDefinitions> & string)[], ConstAssignableInput<TSchema, MergeVarDefinitions<TVarDefinitions>>, InferComposedOperationRawData<TSchema, TSliceFragments>, { [K in keyof TSliceFragments]: ReturnType<TSliceFragments[K]["projection"]["projector"]> }>;
610
- //#endregion
611
- //#region packages/core/src/composer/fields-builder.d.ts
612
- declare const createFieldFactories: <TSchema extends AnyGraphqlSchema, TTypeName$1 extends keyof TSchema["object"] & string>(schema: TSchema, typeName: TTypeName$1) => FieldSelectionFactories<TSchema, TTypeName$1>;
613
- //#endregion
614
- //#region packages/core/src/composer/gql-composer.d.ts
615
- type GqlElementComposer<TComposers, THelper> = <TResult extends AnyModel | AnySlice | AnyComposedOperation | AnyInlineOperation>(composeElement: (composers: TComposers, helper: THelper) => TResult) => TResult;
616
- type GqlElementComposerOptions<THelpers extends object = object> = {
617
- metadataAdapter?: AnyMetadataAdapter;
618
- helpers?: THelpers;
619
- };
620
- declare const createGqlElementComposer: <TSchema extends AnyGraphqlSchema, TRuntimeAdapter extends AnyGraphqlRuntimeAdapter, THelpers extends object = object>(schema: NoInfer<TSchema>, options?: GqlElementComposerOptions<NoInfer<THelpers>>) => GqlElementComposer<{
621
- model: Omit<{ readonly [TTypeName in keyof TSchema["object"]]: TTypeName extends string ? <TFieldEntries extends AnyFields[], TNormalized extends object, TVarDefinitions extends InputTypeSpecifiers[] = [{}]>(options: {
622
- variables?: TVarDefinitions | undefined;
623
- }, builder: FieldsBuilder<TSchema, TTypeName, MergeVarDefinitions<TVarDefinitions>, TFieldEntries>, normalize: (raw: NoInfer<InferFields<TSchema, MergeFields<TFieldEntries>>>) => TNormalized) => Model<TTypeName, SwitchIfEmpty<MergeVarDefinitions<TVarDefinitions>, void, AssignableInput<TSchema, MergeVarDefinitions<TVarDefinitions>>>, MergeFields<TFieldEntries> & {
624
- [key: symbol]: never;
625
- }, InferFields<TSchema, MergeFields<TFieldEntries>> & {
626
- [key: symbol]: never;
627
- }, TNormalized> : never }, TSchema["operations"][keyof OperationRoots] & keyof TSchema["object"]>;
628
- query: {
629
- slice: <TFieldEntries extends AnyFields[], TProjection extends AnyProjection, TVarDefinitions_1 extends InputTypeSpecifiers[] = [{}]>(options: {
630
- variables?: TVarDefinitions_1 | undefined;
631
- metadata?: SliceMetadataBuilder<AssigningInput<TSchema, MergeVarDefinitions<TVarDefinitions_1>>> | undefined;
632
- }, fieldBuilder: FieldsBuilder<TSchema, TSchema["operations"]["query"] & keyof TSchema["object"] & string, MergeVarDefinitions<TVarDefinitions_1>, TFieldEntries>, projectionBuilder: ExecutionResultProjectionsBuilder<TSchema, TRuntimeAdapter, MergeFields<TFieldEntries>, TProjection>) => Slice<"query", SwitchIfEmpty<MergeVarDefinitions<TVarDefinitions_1>, void, AssignableInput<TSchema, MergeVarDefinitions<TVarDefinitions_1>>>, MergeFields<TFieldEntries> & {
633
- [key: symbol]: never;
634
- }, TProjection>;
635
- composed: <TOperationName extends string, TSliceFragments extends AnySlicePayloads, TVarDefinitions_2 extends InputTypeSpecifiers[] = [{}]>(options: {
636
- operationName: TOperationName;
637
- variables?: TVarDefinitions_2 | undefined;
638
- metadata?: MetadataBuilder<AssigningInput<TSchema, MergeVarDefinitions<TVarDefinitions_2>>, OperationMetadata> | undefined;
639
- }, builder: ComposedOperationDefinitionBuilder<TSchema, MergeVarDefinitions<TVarDefinitions_2>, TSliceFragments>) => ComposedOperation<TRuntimeAdapter, "query", TOperationName, (keyof MergeVarDefinitions<TVarDefinitions_2> & string)[], ConstAssignableInput<TSchema, MergeVarDefinitions<TVarDefinitions_2>>, InferComposedOperationRawData<TSchema, TSliceFragments>, { [K in keyof TSliceFragments]: ReturnType<TSliceFragments[K]["projection"]["projector"]> }>;
640
- inline: <TOperationName extends string, TFields$1 extends AnyFields[], TVarDefinitions_3 extends InputTypeSpecifiers[] = [{}]>(options: {
641
- operationName: TOperationName;
642
- variables?: TVarDefinitions_3 | undefined;
643
- metadata?: MetadataBuilder<AssigningInput<TSchema, MergeVarDefinitions<TVarDefinitions_3>>, OperationMetadata> | undefined;
644
- }, fieldBuilder: FieldsBuilder<TSchema, TSchema["operations"]["query"] & keyof TSchema["object"] & string, MergeVarDefinitions<TVarDefinitions_3>, TFields$1>) => InlineOperation<"query", TOperationName, (keyof MergeVarDefinitions<TVarDefinitions_3> & string)[], ConstAssignableInput<TSchema, MergeVarDefinitions<TVarDefinitions_3>>, MergeFields<TFields$1>, InferFields<TSchema, MergeFields<TFields$1>>>;
645
- };
646
- mutation: {
647
- slice: <TFieldEntries extends AnyFields[], TProjection extends AnyProjection, TVarDefinitions_1 extends InputTypeSpecifiers[] = [{}]>(options: {
648
- variables?: TVarDefinitions_1 | undefined;
649
- metadata?: SliceMetadataBuilder<AssigningInput<TSchema, MergeVarDefinitions<TVarDefinitions_1>>> | undefined;
650
- }, fieldBuilder: FieldsBuilder<TSchema, TSchema["operations"]["mutation"] & keyof TSchema["object"] & string, MergeVarDefinitions<TVarDefinitions_1>, TFieldEntries>, projectionBuilder: ExecutionResultProjectionsBuilder<TSchema, TRuntimeAdapter, MergeFields<TFieldEntries>, TProjection>) => Slice<"mutation", SwitchIfEmpty<MergeVarDefinitions<TVarDefinitions_1>, void, AssignableInput<TSchema, MergeVarDefinitions<TVarDefinitions_1>>>, MergeFields<TFieldEntries> & {
651
- [key: symbol]: never;
652
- }, TProjection>;
653
- composed: <TOperationName extends string, TSliceFragments extends AnySlicePayloads, TVarDefinitions_2 extends InputTypeSpecifiers[] = [{}]>(options: {
654
- operationName: TOperationName;
655
- variables?: TVarDefinitions_2 | undefined;
656
- metadata?: MetadataBuilder<AssigningInput<TSchema, MergeVarDefinitions<TVarDefinitions_2>>, OperationMetadata> | undefined;
657
- }, builder: ComposedOperationDefinitionBuilder<TSchema, MergeVarDefinitions<TVarDefinitions_2>, TSliceFragments>) => ComposedOperation<TRuntimeAdapter, "mutation", TOperationName, (keyof MergeVarDefinitions<TVarDefinitions_2> & string)[], ConstAssignableInput<TSchema, MergeVarDefinitions<TVarDefinitions_2>>, InferComposedOperationRawData<TSchema, TSliceFragments>, { [K in keyof TSliceFragments]: ReturnType<TSliceFragments[K]["projection"]["projector"]> }>;
658
- inline: <TOperationName extends string, TFields$1 extends AnyFields[], TVarDefinitions_3 extends InputTypeSpecifiers[] = [{}]>(options: {
659
- operationName: TOperationName;
660
- variables?: TVarDefinitions_3 | undefined;
661
- metadata?: MetadataBuilder<AssigningInput<TSchema, MergeVarDefinitions<TVarDefinitions_3>>, OperationMetadata> | undefined;
662
- }, fieldBuilder: FieldsBuilder<TSchema, TSchema["operations"]["mutation"] & keyof TSchema["object"] & string, MergeVarDefinitions<TVarDefinitions_3>, TFields$1>) => InlineOperation<"mutation", TOperationName, (keyof MergeVarDefinitions<TVarDefinitions_3> & string)[], ConstAssignableInput<TSchema, MergeVarDefinitions<TVarDefinitions_3>>, MergeFields<TFields$1>, InferFields<TSchema, MergeFields<TFields$1>>>;
663
- };
664
- subscription: {
665
- slice: <TFieldEntries extends AnyFields[], TProjection extends AnyProjection, TVarDefinitions_1 extends InputTypeSpecifiers[] = [{}]>(options: {
666
- variables?: TVarDefinitions_1 | undefined;
667
- metadata?: SliceMetadataBuilder<AssigningInput<TSchema, MergeVarDefinitions<TVarDefinitions_1>>> | undefined;
668
- }, fieldBuilder: FieldsBuilder<TSchema, TSchema["operations"]["subscription"] & keyof TSchema["object"] & string, MergeVarDefinitions<TVarDefinitions_1>, TFieldEntries>, projectionBuilder: ExecutionResultProjectionsBuilder<TSchema, TRuntimeAdapter, MergeFields<TFieldEntries>, TProjection>) => Slice<"subscription", SwitchIfEmpty<MergeVarDefinitions<TVarDefinitions_1>, void, AssignableInput<TSchema, MergeVarDefinitions<TVarDefinitions_1>>>, MergeFields<TFieldEntries> & {
669
- [key: symbol]: never;
670
- }, TProjection>;
671
- composed: <TOperationName extends string, TSliceFragments extends AnySlicePayloads, TVarDefinitions_2 extends InputTypeSpecifiers[] = [{}]>(options: {
672
- operationName: TOperationName;
673
- variables?: TVarDefinitions_2 | undefined;
674
- metadata?: MetadataBuilder<AssigningInput<TSchema, MergeVarDefinitions<TVarDefinitions_2>>, OperationMetadata> | undefined;
675
- }, builder: ComposedOperationDefinitionBuilder<TSchema, MergeVarDefinitions<TVarDefinitions_2>, TSliceFragments>) => ComposedOperation<TRuntimeAdapter, "subscription", TOperationName, (keyof MergeVarDefinitions<TVarDefinitions_2> & string)[], ConstAssignableInput<TSchema, MergeVarDefinitions<TVarDefinitions_2>>, InferComposedOperationRawData<TSchema, TSliceFragments>, { [K in keyof TSliceFragments]: ReturnType<TSliceFragments[K]["projection"]["projector"]> }>;
676
- inline: <TOperationName extends string, TFields$1 extends AnyFields[], TVarDefinitions_3 extends InputTypeSpecifiers[] = [{}]>(options: {
677
- operationName: TOperationName;
678
- variables?: TVarDefinitions_3 | undefined;
679
- metadata?: MetadataBuilder<AssigningInput<TSchema, MergeVarDefinitions<TVarDefinitions_3>>, OperationMetadata> | undefined;
680
- }, fieldBuilder: FieldsBuilder<TSchema, TSchema["operations"]["subscription"] & keyof TSchema["object"] & string, MergeVarDefinitions<TVarDefinitions_3>, TFields$1>) => InlineOperation<"subscription", TOperationName, (keyof MergeVarDefinitions<TVarDefinitions_3> & string)[], ConstAssignableInput<TSchema, MergeVarDefinitions<TVarDefinitions_3>>, MergeFields<TFields$1>, InferFields<TSchema, MergeFields<TFields$1>>>;
681
- };
682
- }, {
683
- $var: (<TVarName extends string>(varName: TVarName) => {
684
- scalar: <const TTypeName_1 extends keyof TSchema["scalar"] & string, const TModifier extends TypeModifier, const TDefaultFn extends (() => GetConstAssignableType<InferInputProfile<TSchema, {
685
- kind: "scalar";
686
- name: TTypeName_1;
687
- modifier: TModifier;
688
- directives: {};
689
- defaultValue: null;
690
- }>> & {}) | null = null, const TDirectives extends AnyConstDirectiveAttachments = {}>(type: ModifiedTypeName<[keyof TSchema["scalar"] & string], TTypeName_1, TModifier>, extras?: {
691
- default?: (TDefaultFn & (() => GetConstAssignableType<InferInputProfile<TSchema, {
692
- kind: "scalar";
693
- name: TTypeName_1;
694
- modifier: TModifier;
695
- directives: {};
696
- defaultValue: null;
697
- }>> & {})) | (NoInfer<TDefaultFn> extends null ? () => GetConstAssignableType<InferInputProfile<TSchema, {
698
- kind: "scalar";
699
- name: TTypeName_1;
700
- modifier: TModifier;
701
- directives: {};
702
- defaultValue: null;
703
- }>> & {} : never) | undefined;
704
- directives?: TDirectives | undefined;
705
- } | undefined) => { [K in TVarName]: {
706
- kind: "scalar";
707
- name: TTypeName_1;
708
- modifier: TModifier;
709
- defaultValue: TDefaultFn extends null ? null : {
710
- default: ReturnType<NonNullable<TDefaultFn>>;
711
- };
712
- directives: TDirectives;
713
- } };
714
- enum: <const TTypeName_1 extends keyof TSchema["enum"] & string, const TModifier extends TypeModifier, const TDefaultFn extends (() => GetConstAssignableType<InferInputProfile<TSchema, {
715
- kind: "enum";
716
- name: TTypeName_1;
717
- modifier: TModifier;
718
- directives: {};
719
- defaultValue: null;
720
- }>> & {}) | null = null, const TDirectives extends AnyConstDirectiveAttachments = {}>(type: ModifiedTypeName<[keyof TSchema["enum"] & string], TTypeName_1, TModifier>, extras?: {
721
- default?: (TDefaultFn & (() => GetConstAssignableType<InferInputProfile<TSchema, {
722
- kind: "enum";
723
- name: TTypeName_1;
724
- modifier: TModifier;
725
- directives: {};
726
- defaultValue: null;
727
- }>> & {})) | (NoInfer<TDefaultFn> extends null ? () => GetConstAssignableType<InferInputProfile<TSchema, {
728
- kind: "enum";
729
- name: TTypeName_1;
730
- modifier: TModifier;
731
- directives: {};
732
- defaultValue: null;
733
- }>> & {} : never) | undefined;
734
- directives?: TDirectives | undefined;
735
- } | undefined) => { [K in TVarName]: {
736
- kind: "enum";
737
- name: TTypeName_1;
738
- modifier: TModifier;
739
- defaultValue: TDefaultFn extends null ? null : {
740
- default: ReturnType<NonNullable<TDefaultFn>>;
741
- };
742
- directives: TDirectives;
743
- } };
744
- input: <const TTypeName_1 extends keyof TSchema["input"] & string, const TModifier extends TypeModifier, const TDefaultFn extends (() => GetConstAssignableType<InferInputProfile<TSchema, {
745
- kind: "input";
746
- name: TTypeName_1;
747
- modifier: TModifier;
748
- directives: {};
749
- defaultValue: null;
750
- }>> & {}) | null = null, const TDirectives extends AnyConstDirectiveAttachments = {}>(type: ModifiedTypeName<[keyof TSchema["input"] & string], TTypeName_1, TModifier>, extras?: {
751
- default?: (TDefaultFn & (() => GetConstAssignableType<InferInputProfile<TSchema, {
752
- kind: "input";
753
- name: TTypeName_1;
754
- modifier: TModifier;
755
- directives: {};
756
- defaultValue: null;
757
- }>> & {})) | (NoInfer<TDefaultFn> extends null ? () => GetConstAssignableType<InferInputProfile<TSchema, {
758
- kind: "input";
759
- name: TTypeName_1;
760
- modifier: TModifier;
761
- directives: {};
762
- defaultValue: null;
763
- }>> & {} : never) | undefined;
764
- directives?: TDirectives | undefined;
765
- } | undefined) => { [K in TVarName]: {
766
- kind: "input";
767
- name: TTypeName_1;
768
- modifier: TModifier;
769
- defaultValue: TDefaultFn extends null ? null : {
770
- default: ReturnType<NonNullable<TDefaultFn>>;
771
- };
772
- directives: TDirectives;
773
- } };
774
- byField: <const TTypeName_1 extends keyof TSchema["object"] & string, const TFieldName$1 extends keyof TSchema["object"][TTypeName_1]["fields"] & string, const TArgName extends keyof TSchema["object"][TTypeName_1]["fields"][TFieldName$1]["arguments"] & string>(typeName: TTypeName_1, fieldName: TFieldName$1, argName: TArgName) => TSchema["object"][TTypeName_1]["fields"][TFieldName$1]["arguments"][TArgName];
775
- }) & {
776
- getName: (varRef: AnyVarRef) => string;
777
- getValue: (varRef: AnyVarRef) => ConstValue;
778
- getInner: (varRef: AnyVarRef) => VarRefInner;
779
- };
780
- } & THelpers>;
781
- //#endregion
782
- //#region packages/core/src/composer/helpers.d.ts
783
- /**
784
- * Helper function for defining typed helpers with better inference.
785
- * Use this when you need explicit typing or when type inference needs assistance.
786
- *
787
- * @example
788
- * ```typescript
789
- * const gql = createGqlElementComposer(schema, {
790
- * helpers: defineHelpers({
791
- * auth: {
792
- * requiresLogin: () => ({ requiresAuth: true }),
793
- * adminOnly: () => ({ requiresAuth: true, role: 'admin' }),
794
- * },
795
- * }),
796
- * });
797
- * ```
798
- */
799
- declare const defineHelpers: <T extends object>(helpers: T) => T;
800
- //#endregion
801
- //#region packages/core/src/composer/model.d.ts
802
- declare const createGqlModelComposers: <TSchema extends AnyGraphqlSchema>(schema: NoInfer<TSchema>) => Omit<{ readonly [TTypeName in keyof TSchema["object"]]: TTypeName extends string ? <TFieldEntries extends AnyFields[], TNormalized extends object, TVarDefinitions extends InputTypeSpecifiers[] = [{}]>(options: {
803
- variables?: TVarDefinitions | undefined;
804
- }, builder: FieldsBuilder<TSchema, TTypeName, MergeVarDefinitions<TVarDefinitions>, TFieldEntries>, normalize: (raw: NoInfer<InferFields<TSchema, MergeFields<TFieldEntries>>>) => TNormalized) => Model<TTypeName, SwitchIfEmpty<MergeVarDefinitions<TVarDefinitions>, void, AssignableInput<TSchema, MergeVarDefinitions<TVarDefinitions>>>, MergeFields<TFieldEntries> & {
805
- [key: symbol]: never;
806
- }, InferFields<TSchema, MergeFields<TFieldEntries>> & {
807
- [key: symbol]: never;
808
- }, TNormalized> : never }, TSchema["operations"][keyof OperationRoots] & keyof TSchema["object"]>;
809
- //#endregion
810
- //#region packages/core/src/composer/projection-path-graph.d.ts
811
- declare function createPathGraphFromSliceEntries(fragments: {
812
- [key: string]: AnySlicePayload;
813
- }): ProjectionPathGraphNode;
814
- //#endregion
815
- //#region packages/core/src/composer/slice.d.ts
816
- declare const createSliceComposerFactory: <TSchema extends AnyGraphqlSchema, TRuntimeAdapter extends AnyGraphqlRuntimeAdapter>(schema: NoInfer<TSchema>) => <TOperationType extends OperationType>(operationType: TOperationType) => <TFieldEntries extends AnyFields[], TProjection extends AnyProjection, TVarDefinitions extends InputTypeSpecifiers[] = [{}]>(options: {
817
- variables?: TVarDefinitions;
818
- metadata?: SliceMetadataBuilder<AssigningInput<TSchema, MergeVarDefinitions<TVarDefinitions>>>;
819
- }, fieldBuilder: FieldsBuilder<TSchema, TSchema["operations"][TOperationType] & keyof TSchema["object"] & string, MergeVarDefinitions<TVarDefinitions>, TFieldEntries>, projectionBuilder: ExecutionResultProjectionsBuilder<TSchema, TRuntimeAdapter, MergeFields<TFieldEntries>, TProjection>) => Slice<TOperationType, SwitchIfEmpty<MergeVarDefinitions<TVarDefinitions>, void, AssignableInput<TSchema, MergeVarDefinitions<TVarDefinitions>>>, MergeFields<TFieldEntries> & {
820
- [key: symbol]: never;
821
- }, TProjection>;
822
- //#endregion
823
- //#region packages/core/src/composer/var-builder.d.ts
824
- type AssignableDefaultValue<TSchema extends AnyGraphqlSchema, TKind extends "scalar" | "enum" | "input", TName extends keyof TSchema[TKind] & string, TModifier extends TypeModifier> = ConstAssignableInputValue<TSchema, {
825
- scalar: {
826
- kind: "scalar";
827
- name: TName;
828
- modifier: TModifier;
829
- directives: {};
830
- defaultValue: null;
831
- };
832
- enum: {
833
- kind: "enum";
834
- name: TName;
835
- modifier: TModifier;
836
- directives: {};
837
- defaultValue: null;
838
- };
839
- input: {
840
- kind: "input";
841
- name: TName;
842
- modifier: TModifier;
843
- directives: {};
844
- defaultValue: null;
845
- };
846
- }[TKind]>;
847
- declare const createVarBuilder: <TSchema extends AnyGraphqlSchema>(schema: TSchema) => {
848
- $var: (<TVarName extends string>(varName: TVarName) => {
849
- scalar: <const TTypeName$1 extends keyof TSchema["scalar"] & string, const TModifier extends TypeModifier, const TDefaultFn extends (() => AssignableDefaultValue<TSchema, "scalar", TTypeName$1, TModifier>) | null = null, const TDirectives extends AnyConstDirectiveAttachments = {}>(type: ModifiedTypeName<[keyof TSchema["scalar"] & string], TTypeName$1, TModifier>, extras?: {
850
- default?: (TDefaultFn & (() => AssignableDefaultValue<TSchema, "scalar", TTypeName$1, TModifier>)) | (NoInfer<TDefaultFn> extends null ? () => AssignableDefaultValue<TSchema, "scalar", TTypeName$1, TModifier> : never) | undefined;
851
- directives?: TDirectives | undefined;
852
- } | undefined) => { [K in TVarName]: {
853
- kind: "scalar";
854
- name: TTypeName$1;
855
- modifier: TModifier;
856
- defaultValue: TDefaultFn extends null ? null : {
857
- default: ReturnType<NonNullable<TDefaultFn>>;
858
- };
859
- directives: TDirectives;
860
- } };
861
- enum: <const TTypeName$1 extends keyof TSchema["enum"] & string, const TModifier extends TypeModifier, const TDefaultFn extends (() => AssignableDefaultValue<TSchema, "enum", TTypeName$1, TModifier>) | null = null, const TDirectives extends AnyConstDirectiveAttachments = {}>(type: ModifiedTypeName<[keyof TSchema["enum"] & string], TTypeName$1, TModifier>, extras?: {
862
- default?: (TDefaultFn & (() => AssignableDefaultValue<TSchema, "enum", TTypeName$1, TModifier>)) | (NoInfer<TDefaultFn> extends null ? () => AssignableDefaultValue<TSchema, "enum", TTypeName$1, TModifier> : never) | undefined;
863
- directives?: TDirectives | undefined;
864
- } | undefined) => { [K in TVarName]: {
865
- kind: "enum";
866
- name: TTypeName$1;
867
- modifier: TModifier;
868
- defaultValue: TDefaultFn extends null ? null : {
869
- default: ReturnType<NonNullable<TDefaultFn>>;
870
- };
871
- directives: TDirectives;
872
- } };
873
- input: <const TTypeName$1 extends keyof TSchema["input"] & string, const TModifier extends TypeModifier, const TDefaultFn extends (() => AssignableDefaultValue<TSchema, "input", TTypeName$1, TModifier>) | null = null, const TDirectives extends AnyConstDirectiveAttachments = {}>(type: ModifiedTypeName<[keyof TSchema["input"] & string], TTypeName$1, TModifier>, extras?: {
874
- default?: (TDefaultFn & (() => AssignableDefaultValue<TSchema, "input", TTypeName$1, TModifier>)) | (NoInfer<TDefaultFn> extends null ? () => AssignableDefaultValue<TSchema, "input", TTypeName$1, TModifier> : never) | undefined;
875
- directives?: TDirectives | undefined;
876
- } | undefined) => { [K in TVarName]: {
877
- kind: "input";
878
- name: TTypeName$1;
879
- modifier: TModifier;
880
- defaultValue: TDefaultFn extends null ? null : {
881
- default: ReturnType<NonNullable<TDefaultFn>>;
882
- };
883
- directives: TDirectives;
884
- } };
885
- byField: <const TTypeName$1 extends keyof TSchema["object"] & string, const TFieldName$1 extends keyof TSchema["object"][TTypeName$1]["fields"] & string, const TArgName extends keyof TSchema["object"][TTypeName$1]["fields"][TFieldName$1]["arguments"] & string>(typeName: TTypeName$1, fieldName: TFieldName$1, argName: TArgName) => TSchema["object"][TTypeName$1]["fields"][TFieldName$1]["arguments"][TArgName];
886
- }) & {
887
- getName: (varRef: AnyVarRef) => string;
888
- getValue: (varRef: AnyVarRef) => ConstValue;
889
- getInner: (varRef: AnyVarRef) => VarRefInner;
890
- };
891
- };
892
- //#endregion
893
- //#region packages/core/src/schema/schema-builder.d.ts
894
- declare const defineScalar: <const TName extends string, TInput, TOutput>(name: NoInfer<TName>) => { [K in TName]: ScalarDefinition<{
895
- name: TName;
896
- input: TInput;
897
- output: TOutput;
898
- }> };
899
- declare const define: <const TName extends string>(name: TName) => {
900
- enum: <const TValues extends EnumDefinition<{
901
- name: TName;
902
- values: string;
903
- }>["values"]>(values: TValues) => EnumDefinition<{
904
- name: TName;
905
- values: Extract<keyof TValues, string>;
906
- }>;
907
- input: <TFields$1 extends InputDefinition["fields"]>(fields: TFields$1) => {
908
- name: TName;
909
- fields: TFields$1;
910
- };
911
- object: <TFields$1 extends ObjectDefinition["fields"]>(fields: TFields$1) => {
912
- name: TName;
913
- fields: {
914
- __typename: {
915
- kind: "typename";
916
- name: `${TName}`;
917
- modifier: "!";
918
- arguments: {};
919
- };
920
- } & TFields$1;
921
- };
922
- union: <TTypes extends UnionDefinition["types"]>(types: TTypes) => {
923
- name: TName;
924
- types: TTypes;
925
- };
926
- };
927
- declare const defineOperationRoots: <const TOperationRoots extends OperationRoots>(operationRoots: TOperationRoots) => TOperationRoots;
928
- //#endregion
929
- //#region packages/core/src/schema/type-specifier-builder.d.ts
930
- declare const unsafeInputType: {
931
- scalar: <const TName extends string, const TModifier extends TypeModifier, const TDefaultFactory extends (() => ConstValue) | null = null, const TDirectives extends AnyConstDirectiveAttachments = {}>(type: `${TName}:${TModifier}`, extras: {
932
- default?: TDefaultFactory | undefined;
933
- directives?: TDirectives | undefined;
934
- }) => {
935
- kind: "scalar";
936
- name: TName;
937
- modifier: TModifier;
938
- defaultValue: TDefaultFactory extends null ? null : {
939
- default: ReturnType<NonNullable<TDefaultFactory>>;
940
- };
941
- directives: TDirectives;
942
- };
943
- enum: <const TName extends string, const TModifier extends TypeModifier, const TDefaultFactory extends (() => ConstValue) | null = null, const TDirectives extends AnyConstDirectiveAttachments = {}>(type: `${TName}:${TModifier}`, extras: {
944
- default?: TDefaultFactory | undefined;
945
- directives?: TDirectives | undefined;
946
- }) => {
947
- kind: "enum";
948
- name: TName;
949
- modifier: TModifier;
950
- defaultValue: TDefaultFactory extends null ? null : {
951
- default: ReturnType<NonNullable<TDefaultFactory>>;
952
- };
953
- directives: TDirectives;
954
- };
955
- input: <const TName extends string, const TModifier extends TypeModifier, const TDefaultFactory extends (() => ConstValue) | null = null, const TDirectives extends AnyConstDirectiveAttachments = {}>(type: `${TName}:${TModifier}`, extras: {
956
- default?: TDefaultFactory | undefined;
957
- directives?: TDirectives | undefined;
958
- }) => {
959
- kind: "input";
960
- name: TName;
961
- modifier: TModifier;
962
- defaultValue: TDefaultFactory extends null ? null : {
963
- default: ReturnType<NonNullable<TDefaultFactory>>;
964
- };
965
- directives: TDirectives;
966
- };
967
- };
968
- declare const unsafeOutputType: {
969
- scalar: <const TName extends string, const TModifier extends TypeModifier, const TArguments extends InputTypeSpecifiers = {}>(type: `${TName}:${TModifier}`, extras: {
970
- arguments?: TArguments | undefined;
971
- }) => {
972
- kind: "scalar";
973
- name: TName;
974
- modifier: TModifier;
975
- arguments: InputTypeSpecifiers extends TArguments ? {} : TArguments;
976
- };
977
- enum: <const TName extends string, const TModifier extends TypeModifier, const TArguments extends InputTypeSpecifiers = {}>(type: `${TName}:${TModifier}`, extras: {
978
- arguments?: TArguments | undefined;
979
- }) => {
980
- kind: "enum";
981
- name: TName;
982
- modifier: TModifier;
983
- arguments: InputTypeSpecifiers extends TArguments ? {} : TArguments;
984
- };
985
- object: <const TName extends string, const TModifier extends TypeModifier, const TArguments extends InputTypeSpecifiers = {}>(type: `${TName}:${TModifier}`, extras: {
986
- arguments?: TArguments | undefined;
987
- }) => {
988
- kind: "object";
989
- name: TName;
990
- modifier: TModifier;
991
- arguments: InputTypeSpecifiers extends TArguments ? {} : TArguments;
992
- };
993
- union: <const TName extends string, const TModifier extends TypeModifier, const TArguments extends InputTypeSpecifiers = {}>(type: `${TName}:${TModifier}`, extras: {
994
- arguments?: TArguments | undefined;
995
- }) => {
996
- kind: "union";
997
- name: TName;
998
- modifier: TModifier;
999
- arguments: InputTypeSpecifiers extends TArguments ? {} : TArguments;
1000
- };
1001
- typename: <const TName extends string, const TModifier extends TypeModifier, const TArguments extends InputTypeSpecifiers = {}>(type: `${TName}:${TModifier}`, extras: {
1002
- arguments?: TArguments | undefined;
1003
- }) => {
1004
- kind: "typename";
1005
- name: TName;
1006
- modifier: TModifier;
1007
- arguments: InputTypeSpecifiers extends TArguments ? {} : TArguments;
1008
- };
1009
- };
1010
- //#endregion
1011
- //#region packages/core/src/utils/wrap-by-key.d.ts
1012
- declare function wrapByKey<TName extends string, TValue>(name: TName, value: TValue): { [K in TName]: TValue };
1013
- //#endregion
1014
- export { InferComposedOperationRawData as $, InferField as $t, AnyFieldSelectionFactoryReturn as A, StripFunctions as At, MergeFields as B, buildConstValueNode as Bt, Model as C, SlicedExecutionResultSuccess as Ct, InlineOperation as D, NormalizedError as Dt, AnyInlineOperationOf as E, NonGraphqlErrorResult as Et, FieldSelectionFactoryPrimitiveReturn as F, hidden as Ft, AnyExecutionResultProjectionsBuilder as G, AvailableFieldPathOf as Gt, NestedObjectFieldsBuilderTools as H, buildOperationTypeNode as Ht, FieldSelectionFactoryReturn as I, GqlElement as It, AnyComposedOperationOf as J, AnyFieldSelection as Jt, ExecutionResultProjectionsBuilder as K, InferByFieldPath as Kt, FieldSelectionFactoryUnionReturn as L, GqlElementContext as Lt, FieldSelectionFactory as M, Tuple as Mt, FieldSelectionFactoryFieldArguments as N, UnionToIntersection as Nt, InlineOperationInferMeta as O, NormalizedExecutionResult as Ot, FieldSelectionFactoryObjectReturn as P, Hidden as Pt, ConcatSlicePayloads as Q, FieldSelectionTemplateOf as Qt, FieldsBuilder as R, GqlElementDefinitionFactory as Rt, AnyModel as S, SlicedExecutionResultError as St, AnyInlineOperation as T, GraphqlExecutionResult as Tt, NestedUnionFieldsBuilder as U, buildWithTypeModifier as Ut, NestedObjectFieldsBuilder as V, buildDocument as Vt, mergeFields as W, AnyFieldPath as Wt, ComposedOperationDefinitionBuilder as X, AnyNestedObject as Xt, ComposedOperation as Y, AnyFields as Yt, ComposedOperationInferMeta as Z, AnyNestedUnion as Zt, createComposedOperationComposerFactory as _, AnySlicedExecutionResult as _t, defineOperationRoots as a, ConstAssignableInputValue as an, InferOutputOfSlice as at, createVarRefs as b, SlicedExecutionResult as bt, createSliceComposerFactory as c, AnyAssignableInputValue as cn, SlicePayload as ct, defineHelpers as d, AssignableInputByFieldName as dn, SwitchIfEmpty as dt, InferFields as en, ProjectionPathGraphNode as et, GqlElementComposer as f, AssignableInputValue as fn, empty as ft, ComposedOperationComposerOptions as g, parseModifiedTypeName as gn, ProjectionPath as gt, createFieldFactories as h, ModifiedTypeName as hn, Projection as ht, define as i, ConstAssignableInput as in, AnySlicePayloads as it, FieldSelectionFactories as j, StripSymbols as jt, AnyFieldSelectionFactory as k, AnyGraphqlRuntimeAdapter as kt, createPathGraphFromSliceEntries as l, AnyAssigningInput as ln, EmptyObject as lt, createGqlElementComposer as m, GetAssignableType as mn, InferExecutionResultProjection as mt, unsafeInputType as n, AnyConstAssignableInput as nn, AnySliceOf as nt, defineScalar as o, AnyDirectiveAttachments as on, Slice as ot, GqlElementComposerOptions as p, AssigningInput as pn, AnyProjection as pt, AnyComposedOperation as q, AbstractFieldSelection as qt, unsafeOutputType as r, AnyConstAssignableInputValue as rn, AnySlicePayload as rt, createVarBuilder as s, AnyAssignableInput as sn, SliceInferMeta as st, wrapByKey as t, AnyConstDirectiveAttachments as tn, AnySlice as tt, createGqlModelComposers as u, AssignableInput as un, IfEmpty as ut, MergeVarDefinitions as v, AnySlicedExecutionResultRecord as vt, ModelInferMeta as w, EmptyResult as wt, mergeVarDefinitions as x, SlicedExecutionResultEmpty as xt, createVarAssignments as y, SafeUnwrapResult as yt, FieldsBuilderTools as z, buildArgumentValue as zt };
1015
- //# sourceMappingURL=index-Dth0NSJt.d.cts.map