@nkzw/fate 0.1.2 → 1.0.0-rc.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 (170) hide show
  1. package/README.md +810 -129
  2. package/docs/api/classes/FateClient.md +832 -0
  3. package/docs/api/functions/clientRoot.md +27 -0
  4. package/docs/api/functions/createClient.md +21 -0
  5. package/docs/api/functions/createHTTPTransport.md +51 -0
  6. package/docs/api/functions/createTRPCTransport.md +46 -0
  7. package/docs/api/functions/getListEntries.md +15 -0
  8. package/docs/api/functions/getSelectionPlan.md +36 -0
  9. package/docs/api/functions/isRecord.md +15 -0
  10. package/docs/api/functions/isViewTag.md +17 -0
  11. package/docs/api/functions/liveConnectionTopic.md +19 -0
  12. package/docs/api/functions/liveEntityTopic.md +19 -0
  13. package/docs/api/functions/liveGlobalConnectionTopic.md +15 -0
  14. package/docs/api/functions/mutation.md +32 -0
  15. package/docs/api/functions/toEntityId.md +21 -0
  16. package/docs/api/functions/view.md +26 -0
  17. package/docs/api/index.md +81 -0
  18. package/docs/api/interfaces/FateThenable.md +31 -0
  19. package/docs/api/interfaces/Transport.md +199 -0
  20. package/docs/api/server/classes/FateRequestError.md +67 -0
  21. package/docs/api/server/drizzle/functions/createDrizzleFate.md +431 -0
  22. package/docs/api/server/drizzle/functions/createDrizzleSourceAdapter.md +21 -0
  23. package/docs/api/server/drizzle/functions/createDrizzleSourceRegistry.md +21 -0
  24. package/docs/api/server/drizzle/index.md +23 -0
  25. package/docs/api/server/drizzle/type-aliases/DrizzleManyToManyConfig.md +15 -0
  26. package/docs/api/server/drizzle/type-aliases/DrizzleManyToManyInput.md +5 -0
  27. package/docs/api/server/drizzle/type-aliases/DrizzleQueryExtra.md +21 -0
  28. package/docs/api/server/drizzle/type-aliases/DrizzleSourceAdapter.md +337 -0
  29. package/docs/api/server/drizzle/type-aliases/DrizzleViewConfig.md +29 -0
  30. package/docs/api/server/functions/bindSourceProcedures.md +32 -0
  31. package/docs/api/server/functions/computed.md +43 -0
  32. package/docs/api/server/functions/count.md +21 -0
  33. package/docs/api/server/functions/createFateFetchHandler.md +21 -0
  34. package/docs/api/server/functions/createFateServer.md +41 -0
  35. package/docs/api/server/functions/createHonoFateHandler.md +21 -0
  36. package/docs/api/server/functions/createLiveEventBus.md +17 -0
  37. package/docs/api/server/functions/createNestedSourcePlan.md +103 -0
  38. package/docs/api/server/functions/createResolver.md +74 -0
  39. package/docs/api/server/functions/createSourcePlan.md +95 -0
  40. package/docs/api/server/functions/createSourceProcedures.md +46 -0
  41. package/docs/api/server/functions/dataView.md +32 -0
  42. package/docs/api/server/functions/field.md +15 -0
  43. package/docs/api/server/functions/getNestedSelection.md +19 -0
  44. package/docs/api/server/functions/getScopedArgs.md +21 -0
  45. package/docs/api/server/functions/hasNestedSelection.md +19 -0
  46. package/docs/api/server/functions/list.md +28 -0
  47. package/docs/api/server/functions/refetchSourceById.md +55 -0
  48. package/docs/api/server/functions/resolveSourceById.md +55 -0
  49. package/docs/api/server/functions/resolveSourceByIds.md +55 -0
  50. package/docs/api/server/functions/resolveSourceConnection.md +67 -0
  51. package/docs/api/server/functions/resolver.md +42 -0
  52. package/docs/api/server/functions/toPrismaSelect.md +25 -0
  53. package/docs/api/server/functions/withConnection.md +24 -0
  54. package/docs/api/server/index.md +109 -0
  55. package/docs/api/server/prisma/functions/createPrismaFate.md +435 -0
  56. package/docs/api/server/prisma/functions/createPrismaSourceAdapter.md +21 -0
  57. package/docs/api/server/prisma/functions/createPrismaSourceRegistry.md +21 -0
  58. package/docs/api/server/prisma/functions/prismaConnectionArgs.md +57 -0
  59. package/docs/api/server/prisma/index.md +23 -0
  60. package/docs/api/server/prisma/type-aliases/PrismaDelegate.md +59 -0
  61. package/docs/api/server/prisma/type-aliases/PrismaQueryExtra.md +5 -0
  62. package/docs/api/server/prisma/type-aliases/PrismaSourceAdapter.md +343 -0
  63. package/docs/api/server/prisma/type-aliases/PrismaViewConfig.md +31 -0
  64. package/docs/api/server/type-aliases/ComputedField.md +55 -0
  65. package/docs/api/server/type-aliases/ComputedSelection.md +5 -0
  66. package/docs/api/server/type-aliases/ConnectionItem.md +29 -0
  67. package/docs/api/server/type-aliases/ConnectionPagination.md +39 -0
  68. package/docs/api/server/type-aliases/ConnectionResult.md +29 -0
  69. package/docs/api/server/type-aliases/CountSelection.md +29 -0
  70. package/docs/api/server/type-aliases/CountWhere.md +5 -0
  71. package/docs/api/server/type-aliases/DataViewListOptions.md +13 -0
  72. package/docs/api/server/type-aliases/DataViewOrderBy.md +5 -0
  73. package/docs/api/server/type-aliases/DataViewOrderDirection.md +5 -0
  74. package/docs/api/server/type-aliases/DataViewResult.md +11 -0
  75. package/docs/api/server/type-aliases/Entity.md +21 -0
  76. package/docs/api/server/type-aliases/FateServer.md +75 -0
  77. package/docs/api/server/type-aliases/FateServerManifest.md +5 -0
  78. package/docs/api/server/type-aliases/FieldSelection.md +21 -0
  79. package/docs/api/server/type-aliases/LiveConnectionEventType.md +5 -0
  80. package/docs/api/server/type-aliases/LiveConnectionSourceEvent.md +5 -0
  81. package/docs/api/server/type-aliases/LiveEventBus.md +5 -0
  82. package/docs/api/server/type-aliases/LiveEventType.md +5 -0
  83. package/docs/api/server/type-aliases/LiveSourceEvent.md +5 -0
  84. package/docs/api/server/type-aliases/NativeFateAPI.md +47 -0
  85. package/docs/api/server/type-aliases/OrderDirection.md +5 -0
  86. package/docs/api/server/type-aliases/SourceConfig.md +55 -0
  87. package/docs/api/server/type-aliases/SourceDefinition.md +55 -0
  88. package/docs/api/server/type-aliases/SourceOrder.md +5 -0
  89. package/docs/api/server/type-aliases/SourceOrderField.md +21 -0
  90. package/docs/api/server/type-aliases/SourcePlan.md +29 -0
  91. package/docs/api/server/type-aliases/SourcePlanNode.md +29 -0
  92. package/docs/api/server/type-aliases/SourceRegistry.md +11 -0
  93. package/docs/api/server/type-aliases/SourceRelation.md +15 -0
  94. package/docs/api/server/type-aliases/SourceRelationConfig.md +23 -0
  95. package/docs/api/server/variables/byIdInput.md +5 -0
  96. package/docs/api/server/variables/connectionArgs.md +7 -0
  97. package/docs/api/type-aliases/ConnectionMetadata.md +7 -0
  98. package/docs/api/type-aliases/ConnectionRef.md +13 -0
  99. package/docs/api/type-aliases/Entity.md +15 -0
  100. package/docs/api/type-aliases/EntityId.md +7 -0
  101. package/docs/api/type-aliases/FateLiveConnectionEvent.md +5 -0
  102. package/docs/api/type-aliases/FateLiveEvent.md +5 -0
  103. package/docs/api/type-aliases/FateMutations.md +7 -0
  104. package/docs/api/type-aliases/FateOperation.md +5 -0
  105. package/docs/api/type-aliases/FateProtocolRequest.md +5 -0
  106. package/docs/api/type-aliases/FateProtocolResponse.md +5 -0
  107. package/docs/api/type-aliases/FateRecord.md +7 -0
  108. package/docs/api/type-aliases/FateRoots.md +7 -0
  109. package/docs/api/type-aliases/InferFateAPI.md +11 -0
  110. package/docs/api/type-aliases/List.md +5 -0
  111. package/docs/api/type-aliases/ListEntry.md +5 -0
  112. package/docs/api/type-aliases/ListItem.md +13 -0
  113. package/docs/api/type-aliases/Mask.md +15 -0
  114. package/docs/api/type-aliases/MutationDefinition.md +21 -0
  115. package/docs/api/type-aliases/MutationEntity.md +13 -0
  116. package/docs/api/type-aliases/MutationIdentifier.md +19 -0
  117. package/docs/api/type-aliases/MutationInput.md +13 -0
  118. package/docs/api/type-aliases/MutationResult.md +13 -0
  119. package/docs/api/type-aliases/NodesItem.md +13 -0
  120. package/docs/api/type-aliases/Pagination.md +39 -0
  121. package/docs/api/type-aliases/Request.md +7 -0
  122. package/docs/api/type-aliases/RequestMode.md +7 -0
  123. package/docs/api/type-aliases/RequestOptions.md +7 -0
  124. package/docs/api/type-aliases/RequestResult.md +18 -0
  125. package/docs/api/type-aliases/Selection.md +13 -0
  126. package/docs/api/type-aliases/Snapshot.md +7 -0
  127. package/docs/api/type-aliases/TypeConfig.md +41 -0
  128. package/docs/api/type-aliases/View.md +17 -0
  129. package/docs/api/type-aliases/ViewData.md +18 -0
  130. package/docs/api/type-aliases/ViewEntity.md +13 -0
  131. package/docs/api/type-aliases/ViewEntityName.md +13 -0
  132. package/docs/api/type-aliases/ViewRef.md +13 -0
  133. package/docs/api/type-aliases/ViewSelection.md +13 -0
  134. package/docs/api/type-aliases/ViewSnapshot.md +18 -0
  135. package/docs/api/type-aliases/ViewTag.md +7 -0
  136. package/docs/api/variables/ConnectionTag.md +7 -0
  137. package/docs/guide/actions.md +263 -0
  138. package/docs/guide/core-concepts.md +22 -0
  139. package/docs/guide/getting-started.md +57 -0
  140. package/docs/guide/list-views.md +86 -0
  141. package/docs/guide/live-views.md +245 -0
  142. package/docs/guide/requests.md +130 -0
  143. package/docs/guide/server-integration.md +630 -0
  144. package/docs/guide/views.md +278 -0
  145. package/docs/guide/void-integration.md +167 -0
  146. package/docs/index.md +4 -0
  147. package/lib/cli.mjs +17 -250
  148. package/lib/clientStub.d.mts +6 -0
  149. package/lib/clientStub.mjs +6 -0
  150. package/lib/executor-BqwHdN3n.d.mts +468 -0
  151. package/lib/index.d.mts +64 -3
  152. package/lib/index.mjs +1965 -559
  153. package/lib/list-4wRNSVgI.d.mts +10 -0
  154. package/lib/list-C_mi6GnE.mjs +16 -0
  155. package/lib/list.d.mts +2 -0
  156. package/lib/list.mjs +2 -0
  157. package/lib/liveTopics-DzNtJaBD.mjs +197 -0
  158. package/lib/{record-DnhZuvUe.mjs → record-AeZJC9fd.mjs} +1 -2
  159. package/lib/record-ENh92gyb.d.mts +315 -0
  160. package/lib/server/drizzle.d.mts +304 -0
  161. package/lib/server/drizzle.mjs +688 -0
  162. package/lib/server/prisma.d.mts +309 -0
  163. package/lib/server/prisma.mjs +345 -0
  164. package/lib/server.d.mts +82 -184
  165. package/lib/server.mjs +870 -416
  166. package/lib/sourceRouter-Bwpkr062.mjs +972 -0
  167. package/lib/{types-Djlh7mMH.d.mts → types-Dz46PXr3.d.mts} +327 -197
  168. package/lib/vite.d.mts +17 -0
  169. package/lib/vite.mjs +592 -0
  170. package/package.json +44 -6
@@ -0,0 +1,304 @@
1
+ import { q as QueryProcedure, t as AnyRecord } from "../types-Dz46PXr3.mjs";
2
+ import { S as ConnectionResult, c as SourceConfig, f as SourcePlan, k as DataView, l as SourceDefinition, o as DataViewModule, p as SourcePlanNode, t as SourceRegistry } from "../executor-BqwHdN3n.mjs";
3
+ import * as _$zod from "zod";
4
+ import { AnyColumn, SQLWrapper, Table } from "drizzle-orm";
5
+ import * as _$zod_v4_core0 from "zod/v4/core";
6
+
7
+ //#region src/server/drizzle.d.ts
8
+ type SourceTarget<Item extends AnyRecord = AnyRecord> = DataView<Item> | SourceDefinition<Item, unknown>;
9
+ type ViewTarget<Item extends AnyRecord = AnyRecord> = DataView<Item>;
10
+ type ListConfig = {
11
+ defaultSize?: number;
12
+ };
13
+ type ViewProcedureInput<Item extends AnyRecord, ById extends boolean | undefined, List extends boolean | ListConfig | undefined> = ViewTarget<Item> | {
14
+ byId?: ById;
15
+ list?: List;
16
+ view: ViewTarget<Item>;
17
+ };
18
+ type ColumnMap = Record<string, AnyColumn>;
19
+ type DrizzleTable = Table;
20
+ type DrizzleDatabase = {
21
+ select: (fields?: Record<string, unknown>) => any;
22
+ };
23
+ type DrizzleDatabaseInput<Context> = DrizzleDatabase | ((ctx: Context) => DrizzleDatabase);
24
+ type DrizzleQueryExtra = {
25
+ extraFields?: Array<string>;
26
+ where?: SQLWrapper;
27
+ };
28
+ type DrizzleManyToManyColumns = {
29
+ foreignColumn: AnyColumn;
30
+ localColumn: AnyColumn;
31
+ } | {
32
+ foreignColumn?: never;
33
+ localColumn?: never;
34
+ };
35
+ type DrizzleManyToManyConfig = DrizzleManyToManyColumns & {
36
+ columns?: ColumnMap;
37
+ table: DrizzleTable;
38
+ };
39
+ type DrizzleManyToManyInput = DrizzleManyToManyConfig | DrizzleTable;
40
+ type DrizzleViewConfig<Item extends AnyRecord = AnyRecord, TTable extends DrizzleTable = DrizzleTable> = SourceConfig<Item, unknown> & {
41
+ columns?: ColumnMap;
42
+ manyToMany?: Record<string, DrizzleManyToManyInput>;
43
+ table: TTable;
44
+ };
45
+ type DrizzleViewsInput = Array<DataView<AnyRecord> | DrizzleViewConfig<AnyRecord>> | DataViewModule;
46
+ type DrizzleSourceAdapterOptions<Context> = {
47
+ db: DrizzleDatabaseInput<Context>;
48
+ schema?: Record<string, unknown>;
49
+ views: DrizzleViewsInput;
50
+ };
51
+ type DrizzleSourceAdapter<Context> = {
52
+ fetchById: <Item extends AnyRecord = AnyRecord>({
53
+ ctx,
54
+ extra,
55
+ id,
56
+ plan
57
+ }: {
58
+ ctx?: Context;
59
+ extra?: DrizzleQueryExtra;
60
+ id: string;
61
+ plan: SourcePlan<Item, Context>;
62
+ }) => Promise<Item | null>;
63
+ fetchByIds: <Item extends AnyRecord = AnyRecord>({
64
+ ctx,
65
+ extra,
66
+ ids,
67
+ plan
68
+ }: {
69
+ ctx?: Context;
70
+ extra?: DrizzleQueryExtra;
71
+ ids: Array<string>;
72
+ plan: SourcePlan<Item, Context>;
73
+ }) => Promise<Array<Item>>;
74
+ fetchConnection: <Item extends AnyRecord = AnyRecord>({
75
+ ctx,
76
+ cursor,
77
+ direction,
78
+ extra,
79
+ plan,
80
+ take
81
+ }: {
82
+ ctx?: Context;
83
+ cursor?: string;
84
+ direction: 'backward' | 'forward';
85
+ extra?: DrizzleQueryExtra;
86
+ plan: SourcePlan<Item, Context>;
87
+ take: number;
88
+ }) => Promise<Array<Item>>;
89
+ getSource: <Item extends AnyRecord = AnyRecord>(target: SourceTarget<Item>) => SourceDefinition<Item, unknown>;
90
+ registry: SourceRegistry<Context>;
91
+ resolveById: <Item extends AnyRecord = AnyRecord>(options: {
92
+ ctx: Context;
93
+ extra?: DrizzleQueryExtra;
94
+ id: string;
95
+ input: SourceInput;
96
+ view: ViewTarget<Item>;
97
+ }) => Promise<AnyRecord | null>;
98
+ resolveByIds: <Item extends AnyRecord = AnyRecord>(options: {
99
+ ctx: Context;
100
+ extra?: DrizzleQueryExtra;
101
+ ids: Array<string>;
102
+ input: SourceInput;
103
+ view: ViewTarget<Item>;
104
+ }) => Promise<Array<AnyRecord>>;
105
+ resolveConnection: <Item extends AnyRecord = AnyRecord>(options: {
106
+ ctx: Context;
107
+ cursor?: string;
108
+ direction: 'backward' | 'forward';
109
+ extra?: DrizzleQueryExtra;
110
+ input: SourceInput;
111
+ skip?: number;
112
+ take: number;
113
+ view: ViewTarget<Item>;
114
+ }) => Promise<Array<AnyRecord>>;
115
+ };
116
+ type ProcedureLike = {
117
+ input: (schema: any) => {
118
+ query: (resolver: (options: any) => unknown) => any;
119
+ };
120
+ };
121
+ type SourceInput = {
122
+ args?: Record<string, unknown>;
123
+ select: Iterable<string>;
124
+ };
125
+ declare function createDrizzleSourceAdapter<Context>({
126
+ db,
127
+ schema,
128
+ views
129
+ }: DrizzleSourceAdapterOptions<Context>): DrizzleSourceAdapter<Context>;
130
+ declare const createDrizzleSourceRegistry: <Context>(options: Parameters<typeof createDrizzleSourceAdapter<Context>>[0]) => SourceRegistry<Context>;
131
+ declare function createDrizzleFate<Context, Procedure extends ProcedureLike>({
132
+ procedure,
133
+ ...options
134
+ }: Parameters<typeof createDrizzleSourceAdapter<Context>>[0] & {
135
+ procedure: Procedure;
136
+ }): {
137
+ connection: <TItem, TNode = TItem, TAdditionalInput extends _$zod.ZodObject<Record<string, _$zod.ZodType<unknown, unknown, _$zod_v4_core0.$ZodTypeInternals<unknown, unknown>>>, _$zod_v4_core0.$strip> | undefined = undefined>(options: {
138
+ defaultSize?: number;
139
+ getCursor?: ((node: TNode) => string) | undefined;
140
+ input?: TAdditionalInput | undefined;
141
+ map?: ((options: {
142
+ ctx: Procedure extends {
143
+ input: (schema: any) => {
144
+ query: (resolver: (options: {
145
+ ctx: infer TContext;
146
+ }) => unknown) => unknown;
147
+ };
148
+ } ? TContext : unknown;
149
+ input: {
150
+ select: string[];
151
+ args?: Record<string, unknown> | undefined;
152
+ } & {
153
+ args?: ((Record<string, unknown> | undefined) & (TAdditionalInput extends _$zod.ZodObject<Record<string, _$zod.ZodType<unknown, unknown, _$zod_v4_core0.$ZodTypeInternals<unknown, unknown>>>, _$zod_v4_core0.$strip> ? _$zod.infer<TAdditionalInput> : object)) | undefined;
154
+ };
155
+ items: TItem[];
156
+ }) => TNode[] | Promise<TNode[]>) | undefined;
157
+ query: (options: {
158
+ ctx: Procedure extends {
159
+ input: (schema: any) => {
160
+ query: (resolver: (options: {
161
+ ctx: infer TContext;
162
+ }) => unknown) => unknown;
163
+ };
164
+ } ? TContext : unknown;
165
+ cursor?: string;
166
+ direction: "forward" | "backward";
167
+ input: {
168
+ select: string[];
169
+ args?: Record<string, unknown> | undefined;
170
+ } & {
171
+ args?: ((Record<string, unknown> | undefined) & (TAdditionalInput extends _$zod.ZodObject<Record<string, _$zod.ZodType<unknown, unknown, _$zod_v4_core0.$ZodTypeInternals<unknown, unknown>>>, _$zod_v4_core0.$strip> ? _$zod.infer<TAdditionalInput> : object)) | undefined;
172
+ };
173
+ skip?: number;
174
+ take: number;
175
+ }) => Promise<TItem[]>;
176
+ }) => QueryProcedure<{
177
+ input: {
178
+ select: string[];
179
+ args?: Record<string, unknown> | undefined;
180
+ } & {
181
+ args?: ((Record<string, unknown> | undefined) & (TAdditionalInput extends _$zod.ZodObject<Record<string, _$zod.ZodType<unknown, unknown, _$zod_v4_core0.$ZodTypeInternals<unknown, unknown>>>, _$zod_v4_core0.$strip> ? _$zod.infer<TAdditionalInput> : object)) | undefined;
182
+ };
183
+ meta: unknown;
184
+ output: ConnectionResult<TNode>;
185
+ }>;
186
+ createPlan: <Item extends AnyRecord = AnyRecord>({
187
+ args,
188
+ ctx,
189
+ select,
190
+ view
191
+ }: SourceInput & {
192
+ ctx?: Context;
193
+ view: ViewTarget<Item>;
194
+ }) => {
195
+ root: SourcePlanNode<unknown, unknown>;
196
+ source: SourceDefinition<Item, unknown>;
197
+ args: AnyRecord | undefined;
198
+ ctx: Context | undefined;
199
+ resolve: (item: Item) => Promise<AnyRecord>;
200
+ resolveMany: (items: Array<AnyRecord>) => Promise<Array<AnyRecord>>;
201
+ selectedPaths: Set<string>;
202
+ view: DataView<Item>;
203
+ };
204
+ procedures: <Item extends AnyRecord, ById extends boolean | undefined = undefined, List extends boolean | ListConfig | undefined = undefined>(input: ViewProcedureInput<Item, ById, List>) => (ById extends false ? Record<never, never> : {
205
+ byId: ReturnType<ReturnType<Procedure["input"]>["query"]>;
206
+ }) & (List extends false ? Record<never, never> : {
207
+ list: QueryProcedure<{
208
+ input: {
209
+ select: string[];
210
+ args?: Record<string, unknown> | undefined;
211
+ } & {
212
+ args?: Record<string, unknown> | (Record<string, unknown> & object) | undefined;
213
+ };
214
+ meta: unknown;
215
+ output: ConnectionResult<unknown>;
216
+ }>;
217
+ });
218
+ resolveById: <Item extends AnyRecord = AnyRecord>({
219
+ ctx,
220
+ extra,
221
+ id,
222
+ input,
223
+ view
224
+ }: {
225
+ ctx: Context;
226
+ extra?: DrizzleQueryExtra;
227
+ id: string;
228
+ input: SourceInput;
229
+ view: ViewTarget<Item>;
230
+ }) => Promise<AnyRecord | null>;
231
+ resolveByIds: <Item extends AnyRecord = AnyRecord>({
232
+ ctx,
233
+ extra,
234
+ ids,
235
+ input,
236
+ view
237
+ }: {
238
+ ctx: Context;
239
+ extra?: DrizzleQueryExtra;
240
+ ids: Array<string>;
241
+ input: SourceInput;
242
+ view: ViewTarget<Item>;
243
+ }) => Promise<AnyRecord[]>;
244
+ resolveConnection: <Item extends AnyRecord = AnyRecord>({
245
+ ctx,
246
+ cursor,
247
+ direction,
248
+ extra,
249
+ input,
250
+ skip,
251
+ take,
252
+ view
253
+ }: {
254
+ ctx: Context;
255
+ cursor?: string;
256
+ direction: "backward" | "forward";
257
+ extra?: DrizzleQueryExtra;
258
+ input: SourceInput;
259
+ skip?: number;
260
+ take: number;
261
+ view: ViewTarget<Item>;
262
+ }) => Promise<AnyRecord[]>;
263
+ fetchById: <Item extends AnyRecord = AnyRecord>({
264
+ ctx,
265
+ extra,
266
+ id,
267
+ plan
268
+ }: {
269
+ ctx?: Context | undefined;
270
+ extra?: DrizzleQueryExtra;
271
+ id: string;
272
+ plan: SourcePlan<Item, Context>;
273
+ }) => Promise<Item | null>;
274
+ fetchByIds: <Item extends AnyRecord = AnyRecord>({
275
+ ctx,
276
+ extra,
277
+ ids,
278
+ plan
279
+ }: {
280
+ ctx?: Context | undefined;
281
+ extra?: DrizzleQueryExtra;
282
+ ids: Array<string>;
283
+ plan: SourcePlan<Item, Context>;
284
+ }) => Promise<Item[]>;
285
+ fetchConnection: <Item extends AnyRecord = AnyRecord>({
286
+ ctx,
287
+ cursor,
288
+ direction,
289
+ extra,
290
+ plan,
291
+ take
292
+ }: {
293
+ ctx?: Context | undefined;
294
+ cursor?: string;
295
+ direction: "backward" | "forward";
296
+ extra?: DrizzleQueryExtra;
297
+ plan: SourcePlan<Item, Context>;
298
+ take: number;
299
+ }) => Promise<Item[]>;
300
+ getSource: <Item extends AnyRecord = AnyRecord>(target: SourceTarget<Item>) => SourceDefinition<Item, unknown>;
301
+ registry: SourceRegistry<Context>;
302
+ };
303
+ //#endregion
304
+ export { DrizzleManyToManyConfig, DrizzleManyToManyInput, DrizzleQueryExtra, DrizzleSourceAdapter, DrizzleViewConfig, createDrizzleFate, createDrizzleSourceAdapter, createDrizzleSourceRegistry };