springnext 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,969 @@
1
+ import z from 'zod';
2
+ import { Pagination } from '../value-objects/pagination.value-object';
3
+ import type { CRUD, Types } from './store.shared-models.utils';
4
+ import { type Contract, type Metadata } from './store.zod.utils';
5
+ export declare const InRAM: <T extends Metadata>(schemas: T, options?: {
6
+ searchLogic?: {
7
+ list?: (entity: Types<Contract<T>>["details"], pattern: Types<Contract<T>>["findListPayload"]) => boolean;
8
+ specific?: (entity: Types<Contract<T>>["details"], pattern: Types<Contract<T>>["findOnePayload"]) => boolean;
9
+ };
10
+ mappers?: {
11
+ detailToList?: (details: Types<Contract<T>>["details"]) => Types<Contract<T>>["listModel"];
12
+ createPayloadToDetail?: (details: Types<Contract<T>>["createPayload"]) => Types<Contract<T>>["details"];
13
+ updatePayloadToDetail?: (prevValue: Types<Contract<T>>["details"], update: Types<Contract<T>>["updatePayload"]) => Types<Contract<T>>["details"];
14
+ };
15
+ initialData?: Array<Types<Contract<T>>["details"]>;
16
+ }) => {
17
+ new (): {
18
+ ___data: Array<Types<Contract<T>>["details"]>;
19
+ method: <Method extends "details" | "list" | "create" | "updateOne" | "deleteOne" | Exclude<keyof (T["customOperations"] extends Record<string, {
20
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
21
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
22
+ }> ? { [operation in keyof T["customOperations"]]: {
23
+ payload: T["customOperations"][operation]["payload"];
24
+ response: T["customOperations"][operation]["response"];
25
+ }; } : {}), keyof CRUD<any, any, any>>>(methodName: Method, handler: (payload: z.core.output<(Record<Exclude<keyof (T["customOperations"] extends Record<string, {
26
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
27
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
28
+ }> ? { [operation in keyof T["customOperations"]]: {
29
+ payload: T["customOperations"][operation]["payload"];
30
+ response: T["customOperations"][operation]["response"];
31
+ }; } : {}), keyof CRUD<any, any, any>>, {
32
+ payload: (CRUD<{
33
+ list: T["models"]["list"];
34
+ detail: T["models"]["details"];
35
+ }, {
36
+ list: T["searchPayload"]["list"];
37
+ specific: T["searchPayload"]["specific"];
38
+ }, {
39
+ create: T["actionsPayload"]["create"];
40
+ update: T["actionsPayload"]["update"];
41
+ }> & (T["customOperations"] extends Record<string, {
42
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
43
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
44
+ }> ? { [operation in keyof T["customOperations"]]: {
45
+ payload: T["customOperations"][operation]["payload"];
46
+ response: T["customOperations"][operation]["response"];
47
+ }; } : {}))[Exclude<keyof (T["customOperations"] extends Record<string, {
48
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
49
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
50
+ }> ? { [operation in keyof T["customOperations"]]: {
51
+ payload: T["customOperations"][operation]["payload"];
52
+ response: T["customOperations"][operation]["response"];
53
+ }; } : {}), keyof CRUD<any, any, any>>]["payload"];
54
+ response: (CRUD<{
55
+ list: T["models"]["list"];
56
+ detail: T["models"]["details"];
57
+ }, {
58
+ list: T["searchPayload"]["list"];
59
+ specific: T["searchPayload"]["specific"];
60
+ }, {
61
+ create: T["actionsPayload"]["create"];
62
+ update: T["actionsPayload"]["update"];
63
+ }> & (T["customOperations"] extends Record<string, {
64
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
65
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
66
+ }> ? { [operation in keyof T["customOperations"]]: {
67
+ payload: T["customOperations"][operation]["payload"];
68
+ response: T["customOperations"][operation]["response"];
69
+ }; } : {}))[Exclude<keyof (T["customOperations"] extends Record<string, {
70
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
71
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
72
+ }> ? { [operation in keyof T["customOperations"]]: {
73
+ payload: T["customOperations"][operation]["payload"];
74
+ response: T["customOperations"][operation]["response"];
75
+ }; } : {}), keyof CRUD<any, any, any>>]["response"];
76
+ }> & {
77
+ list: {
78
+ payload: z.ZodObject<Parameters<(CRUD<{
79
+ list: T["models"]["list"];
80
+ detail: T["models"]["details"];
81
+ }, {
82
+ list: T["searchPayload"]["list"];
83
+ specific: T["searchPayload"]["specific"];
84
+ }, {
85
+ create: T["actionsPayload"]["create"];
86
+ update: T["actionsPayload"]["update"];
87
+ }> & (T["customOperations"] extends Record<string, {
88
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
89
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
90
+ }> ? { [operation in keyof T["customOperations"]]: {
91
+ payload: T["customOperations"][operation]["payload"];
92
+ response: T["customOperations"][operation]["response"];
93
+ }; } : {}))["list"]>[0] & {
94
+ pagination: ReturnType<typeof Pagination.schema.optional>;
95
+ }, z.core.$strip>;
96
+ response: z.ZodArray<Awaited<ReturnType<(CRUD<{
97
+ list: T["models"]["list"];
98
+ detail: T["models"]["details"];
99
+ }, {
100
+ list: T["searchPayload"]["list"];
101
+ specific: T["searchPayload"]["specific"];
102
+ }, {
103
+ create: T["actionsPayload"]["create"];
104
+ update: T["actionsPayload"]["update"];
105
+ }> & (T["customOperations"] extends Record<string, {
106
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
107
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
108
+ }> ? { [operation in keyof T["customOperations"]]: {
109
+ payload: T["customOperations"][operation]["payload"];
110
+ response: T["customOperations"][operation]["response"];
111
+ }; } : {}))["list"]>>[number]>;
112
+ };
113
+ details: {
114
+ payload: z.ZodObject<Parameters<(CRUD<{
115
+ list: T["models"]["list"];
116
+ detail: T["models"]["details"];
117
+ }, {
118
+ list: T["searchPayload"]["list"];
119
+ specific: T["searchPayload"]["specific"];
120
+ }, {
121
+ create: T["actionsPayload"]["create"];
122
+ update: T["actionsPayload"]["update"];
123
+ }> & (T["customOperations"] extends Record<string, {
124
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
125
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
126
+ }> ? { [operation in keyof T["customOperations"]]: {
127
+ payload: T["customOperations"][operation]["payload"];
128
+ response: T["customOperations"][operation]["response"];
129
+ }; } : {}))["details"]>[0], z.core.$strip>;
130
+ response: z.ZodNullable<T["models"]["details"]>;
131
+ };
132
+ create: {
133
+ payload: z.ZodObject<Parameters<(CRUD<{
134
+ list: T["models"]["list"];
135
+ detail: T["models"]["details"];
136
+ }, {
137
+ list: T["searchPayload"]["list"];
138
+ specific: T["searchPayload"]["specific"];
139
+ }, {
140
+ create: T["actionsPayload"]["create"];
141
+ update: T["actionsPayload"]["update"];
142
+ }> & (T["customOperations"] extends Record<string, {
143
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
144
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
145
+ }> ? { [operation in keyof T["customOperations"]]: {
146
+ payload: T["customOperations"][operation]["payload"];
147
+ response: T["customOperations"][operation]["response"];
148
+ }; } : {}))["create"]>[0], z.core.$strip>;
149
+ response: z.ZodObject<{
150
+ id: z.ZodString;
151
+ }, z.core.$strip>;
152
+ };
153
+ updateOne: {
154
+ payload: z.ZodObject<Parameters<(CRUD<{
155
+ list: T["models"]["list"];
156
+ detail: T["models"]["details"];
157
+ }, {
158
+ list: T["searchPayload"]["list"];
159
+ specific: T["searchPayload"]["specific"];
160
+ }, {
161
+ create: T["actionsPayload"]["create"];
162
+ update: T["actionsPayload"]["update"];
163
+ }> & (T["customOperations"] extends Record<string, {
164
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
165
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
166
+ }> ? { [operation in keyof T["customOperations"]]: {
167
+ payload: T["customOperations"][operation]["payload"];
168
+ response: T["customOperations"][operation]["response"];
169
+ }; } : {}))["updateOne"]>[0], z.core.$strip>;
170
+ response: z.ZodObject<{
171
+ success: z.ZodBoolean;
172
+ }, z.core.$strip>;
173
+ };
174
+ deleteOne: {
175
+ payload: z.ZodObject<Parameters<(CRUD<{
176
+ list: T["models"]["list"];
177
+ detail: T["models"]["details"];
178
+ }, {
179
+ list: T["searchPayload"]["list"];
180
+ specific: T["searchPayload"]["specific"];
181
+ }, {
182
+ create: T["actionsPayload"]["create"];
183
+ update: T["actionsPayload"]["update"];
184
+ }> & (T["customOperations"] extends Record<string, {
185
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
186
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
187
+ }> ? { [operation in keyof T["customOperations"]]: {
188
+ payload: T["customOperations"][operation]["payload"];
189
+ response: T["customOperations"][operation]["response"];
190
+ }; } : {}))["deleteOne"]>[0], z.core.$strip>;
191
+ response: z.ZodObject<{
192
+ success: z.ZodBoolean;
193
+ }, z.core.$strip>;
194
+ };
195
+ })[Method]["payload"]>, config: {
196
+ methodError: (payload: string | import("../errors.utils").ErrorBaseCreatingPayload, cause?: unknown) => import("../errors.utils").ModuleErrorModel;
197
+ }) => Promise<z.core.output<(Record<Exclude<keyof (T["customOperations"] extends Record<string, {
198
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
199
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
200
+ }> ? { [operation in keyof T["customOperations"]]: {
201
+ payload: T["customOperations"][operation]["payload"];
202
+ response: T["customOperations"][operation]["response"];
203
+ }; } : {}), keyof CRUD<any, any, any>>, {
204
+ payload: (CRUD<{
205
+ list: T["models"]["list"];
206
+ detail: T["models"]["details"];
207
+ }, {
208
+ list: T["searchPayload"]["list"];
209
+ specific: T["searchPayload"]["specific"];
210
+ }, {
211
+ create: T["actionsPayload"]["create"];
212
+ update: T["actionsPayload"]["update"];
213
+ }> & (T["customOperations"] extends Record<string, {
214
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
215
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
216
+ }> ? { [operation in keyof T["customOperations"]]: {
217
+ payload: T["customOperations"][operation]["payload"];
218
+ response: T["customOperations"][operation]["response"];
219
+ }; } : {}))[Exclude<keyof (T["customOperations"] extends Record<string, {
220
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
221
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
222
+ }> ? { [operation in keyof T["customOperations"]]: {
223
+ payload: T["customOperations"][operation]["payload"];
224
+ response: T["customOperations"][operation]["response"];
225
+ }; } : {}), keyof CRUD<any, any, any>>]["payload"];
226
+ response: (CRUD<{
227
+ list: T["models"]["list"];
228
+ detail: T["models"]["details"];
229
+ }, {
230
+ list: T["searchPayload"]["list"];
231
+ specific: T["searchPayload"]["specific"];
232
+ }, {
233
+ create: T["actionsPayload"]["create"];
234
+ update: T["actionsPayload"]["update"];
235
+ }> & (T["customOperations"] extends Record<string, {
236
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
237
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
238
+ }> ? { [operation in keyof T["customOperations"]]: {
239
+ payload: T["customOperations"][operation]["payload"];
240
+ response: T["customOperations"][operation]["response"];
241
+ }; } : {}))[Exclude<keyof (T["customOperations"] extends Record<string, {
242
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
243
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
244
+ }> ? { [operation in keyof T["customOperations"]]: {
245
+ payload: T["customOperations"][operation]["payload"];
246
+ response: T["customOperations"][operation]["response"];
247
+ }; } : {}), keyof CRUD<any, any, any>>]["response"];
248
+ }> & {
249
+ list: {
250
+ payload: z.ZodObject<Parameters<(CRUD<{
251
+ list: T["models"]["list"];
252
+ detail: T["models"]["details"];
253
+ }, {
254
+ list: T["searchPayload"]["list"];
255
+ specific: T["searchPayload"]["specific"];
256
+ }, {
257
+ create: T["actionsPayload"]["create"];
258
+ update: T["actionsPayload"]["update"];
259
+ }> & (T["customOperations"] extends Record<string, {
260
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
261
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
262
+ }> ? { [operation in keyof T["customOperations"]]: {
263
+ payload: T["customOperations"][operation]["payload"];
264
+ response: T["customOperations"][operation]["response"];
265
+ }; } : {}))["list"]>[0] & {
266
+ pagination: ReturnType<typeof Pagination.schema.optional>;
267
+ }, z.core.$strip>;
268
+ response: z.ZodArray<Awaited<ReturnType<(CRUD<{
269
+ list: T["models"]["list"];
270
+ detail: T["models"]["details"];
271
+ }, {
272
+ list: T["searchPayload"]["list"];
273
+ specific: T["searchPayload"]["specific"];
274
+ }, {
275
+ create: T["actionsPayload"]["create"];
276
+ update: T["actionsPayload"]["update"];
277
+ }> & (T["customOperations"] extends Record<string, {
278
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
279
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
280
+ }> ? { [operation in keyof T["customOperations"]]: {
281
+ payload: T["customOperations"][operation]["payload"];
282
+ response: T["customOperations"][operation]["response"];
283
+ }; } : {}))["list"]>>[number]>;
284
+ };
285
+ details: {
286
+ payload: z.ZodObject<Parameters<(CRUD<{
287
+ list: T["models"]["list"];
288
+ detail: T["models"]["details"];
289
+ }, {
290
+ list: T["searchPayload"]["list"];
291
+ specific: T["searchPayload"]["specific"];
292
+ }, {
293
+ create: T["actionsPayload"]["create"];
294
+ update: T["actionsPayload"]["update"];
295
+ }> & (T["customOperations"] extends Record<string, {
296
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
297
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
298
+ }> ? { [operation in keyof T["customOperations"]]: {
299
+ payload: T["customOperations"][operation]["payload"];
300
+ response: T["customOperations"][operation]["response"];
301
+ }; } : {}))["details"]>[0], z.core.$strip>;
302
+ response: z.ZodNullable<T["models"]["details"]>;
303
+ };
304
+ create: {
305
+ payload: z.ZodObject<Parameters<(CRUD<{
306
+ list: T["models"]["list"];
307
+ detail: T["models"]["details"];
308
+ }, {
309
+ list: T["searchPayload"]["list"];
310
+ specific: T["searchPayload"]["specific"];
311
+ }, {
312
+ create: T["actionsPayload"]["create"];
313
+ update: T["actionsPayload"]["update"];
314
+ }> & (T["customOperations"] extends Record<string, {
315
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
316
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
317
+ }> ? { [operation in keyof T["customOperations"]]: {
318
+ payload: T["customOperations"][operation]["payload"];
319
+ response: T["customOperations"][operation]["response"];
320
+ }; } : {}))["create"]>[0], z.core.$strip>;
321
+ response: z.ZodObject<{
322
+ id: z.ZodString;
323
+ }, z.core.$strip>;
324
+ };
325
+ updateOne: {
326
+ payload: z.ZodObject<Parameters<(CRUD<{
327
+ list: T["models"]["list"];
328
+ detail: T["models"]["details"];
329
+ }, {
330
+ list: T["searchPayload"]["list"];
331
+ specific: T["searchPayload"]["specific"];
332
+ }, {
333
+ create: T["actionsPayload"]["create"];
334
+ update: T["actionsPayload"]["update"];
335
+ }> & (T["customOperations"] extends Record<string, {
336
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
337
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
338
+ }> ? { [operation in keyof T["customOperations"]]: {
339
+ payload: T["customOperations"][operation]["payload"];
340
+ response: T["customOperations"][operation]["response"];
341
+ }; } : {}))["updateOne"]>[0], z.core.$strip>;
342
+ response: z.ZodObject<{
343
+ success: z.ZodBoolean;
344
+ }, z.core.$strip>;
345
+ };
346
+ deleteOne: {
347
+ payload: z.ZodObject<Parameters<(CRUD<{
348
+ list: T["models"]["list"];
349
+ detail: T["models"]["details"];
350
+ }, {
351
+ list: T["searchPayload"]["list"];
352
+ specific: T["searchPayload"]["specific"];
353
+ }, {
354
+ create: T["actionsPayload"]["create"];
355
+ update: T["actionsPayload"]["update"];
356
+ }> & (T["customOperations"] extends Record<string, {
357
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
358
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
359
+ }> ? { [operation in keyof T["customOperations"]]: {
360
+ payload: T["customOperations"][operation]["payload"];
361
+ response: T["customOperations"][operation]["response"];
362
+ }; } : {}))["deleteOne"]>[0], z.core.$strip>;
363
+ response: z.ZodObject<{
364
+ success: z.ZodBoolean;
365
+ }, z.core.$strip>;
366
+ };
367
+ })[Method]["response"]>>, config?: import("../zod-module.utils").Config) => (payload: z.core.output<(Record<Exclude<keyof (T["customOperations"] extends Record<string, {
368
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
369
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
370
+ }> ? { [operation in keyof T["customOperations"]]: {
371
+ payload: T["customOperations"][operation]["payload"];
372
+ response: T["customOperations"][operation]["response"];
373
+ }; } : {}), keyof CRUD<any, any, any>>, {
374
+ payload: (CRUD<{
375
+ list: T["models"]["list"];
376
+ detail: T["models"]["details"];
377
+ }, {
378
+ list: T["searchPayload"]["list"];
379
+ specific: T["searchPayload"]["specific"];
380
+ }, {
381
+ create: T["actionsPayload"]["create"];
382
+ update: T["actionsPayload"]["update"];
383
+ }> & (T["customOperations"] extends Record<string, {
384
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
385
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
386
+ }> ? { [operation in keyof T["customOperations"]]: {
387
+ payload: T["customOperations"][operation]["payload"];
388
+ response: T["customOperations"][operation]["response"];
389
+ }; } : {}))[Exclude<keyof (T["customOperations"] extends Record<string, {
390
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
391
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
392
+ }> ? { [operation in keyof T["customOperations"]]: {
393
+ payload: T["customOperations"][operation]["payload"];
394
+ response: T["customOperations"][operation]["response"];
395
+ }; } : {}), keyof CRUD<any, any, any>>]["payload"];
396
+ response: (CRUD<{
397
+ list: T["models"]["list"];
398
+ detail: T["models"]["details"];
399
+ }, {
400
+ list: T["searchPayload"]["list"];
401
+ specific: T["searchPayload"]["specific"];
402
+ }, {
403
+ create: T["actionsPayload"]["create"];
404
+ update: T["actionsPayload"]["update"];
405
+ }> & (T["customOperations"] extends Record<string, {
406
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
407
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
408
+ }> ? { [operation in keyof T["customOperations"]]: {
409
+ payload: T["customOperations"][operation]["payload"];
410
+ response: T["customOperations"][operation]["response"];
411
+ }; } : {}))[Exclude<keyof (T["customOperations"] extends Record<string, {
412
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
413
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
414
+ }> ? { [operation in keyof T["customOperations"]]: {
415
+ payload: T["customOperations"][operation]["payload"];
416
+ response: T["customOperations"][operation]["response"];
417
+ }; } : {}), keyof CRUD<any, any, any>>]["response"];
418
+ }> & {
419
+ list: {
420
+ payload: z.ZodObject<Parameters<(CRUD<{
421
+ list: T["models"]["list"];
422
+ detail: T["models"]["details"];
423
+ }, {
424
+ list: T["searchPayload"]["list"];
425
+ specific: T["searchPayload"]["specific"];
426
+ }, {
427
+ create: T["actionsPayload"]["create"];
428
+ update: T["actionsPayload"]["update"];
429
+ }> & (T["customOperations"] extends Record<string, {
430
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
431
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
432
+ }> ? { [operation in keyof T["customOperations"]]: {
433
+ payload: T["customOperations"][operation]["payload"];
434
+ response: T["customOperations"][operation]["response"];
435
+ }; } : {}))["list"]>[0] & {
436
+ pagination: ReturnType<typeof Pagination.schema.optional>;
437
+ }, z.core.$strip>;
438
+ response: z.ZodArray<Awaited<ReturnType<(CRUD<{
439
+ list: T["models"]["list"];
440
+ detail: T["models"]["details"];
441
+ }, {
442
+ list: T["searchPayload"]["list"];
443
+ specific: T["searchPayload"]["specific"];
444
+ }, {
445
+ create: T["actionsPayload"]["create"];
446
+ update: T["actionsPayload"]["update"];
447
+ }> & (T["customOperations"] extends Record<string, {
448
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
449
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
450
+ }> ? { [operation in keyof T["customOperations"]]: {
451
+ payload: T["customOperations"][operation]["payload"];
452
+ response: T["customOperations"][operation]["response"];
453
+ }; } : {}))["list"]>>[number]>;
454
+ };
455
+ details: {
456
+ payload: z.ZodObject<Parameters<(CRUD<{
457
+ list: T["models"]["list"];
458
+ detail: T["models"]["details"];
459
+ }, {
460
+ list: T["searchPayload"]["list"];
461
+ specific: T["searchPayload"]["specific"];
462
+ }, {
463
+ create: T["actionsPayload"]["create"];
464
+ update: T["actionsPayload"]["update"];
465
+ }> & (T["customOperations"] extends Record<string, {
466
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
467
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
468
+ }> ? { [operation in keyof T["customOperations"]]: {
469
+ payload: T["customOperations"][operation]["payload"];
470
+ response: T["customOperations"][operation]["response"];
471
+ }; } : {}))["details"]>[0], z.core.$strip>;
472
+ response: z.ZodNullable<T["models"]["details"]>;
473
+ };
474
+ create: {
475
+ payload: z.ZodObject<Parameters<(CRUD<{
476
+ list: T["models"]["list"];
477
+ detail: T["models"]["details"];
478
+ }, {
479
+ list: T["searchPayload"]["list"];
480
+ specific: T["searchPayload"]["specific"];
481
+ }, {
482
+ create: T["actionsPayload"]["create"];
483
+ update: T["actionsPayload"]["update"];
484
+ }> & (T["customOperations"] extends Record<string, {
485
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
486
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
487
+ }> ? { [operation in keyof T["customOperations"]]: {
488
+ payload: T["customOperations"][operation]["payload"];
489
+ response: T["customOperations"][operation]["response"];
490
+ }; } : {}))["create"]>[0], z.core.$strip>;
491
+ response: z.ZodObject<{
492
+ id: z.ZodString;
493
+ }, z.core.$strip>;
494
+ };
495
+ updateOne: {
496
+ payload: z.ZodObject<Parameters<(CRUD<{
497
+ list: T["models"]["list"];
498
+ detail: T["models"]["details"];
499
+ }, {
500
+ list: T["searchPayload"]["list"];
501
+ specific: T["searchPayload"]["specific"];
502
+ }, {
503
+ create: T["actionsPayload"]["create"];
504
+ update: T["actionsPayload"]["update"];
505
+ }> & (T["customOperations"] extends Record<string, {
506
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
507
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
508
+ }> ? { [operation in keyof T["customOperations"]]: {
509
+ payload: T["customOperations"][operation]["payload"];
510
+ response: T["customOperations"][operation]["response"];
511
+ }; } : {}))["updateOne"]>[0], z.core.$strip>;
512
+ response: z.ZodObject<{
513
+ success: z.ZodBoolean;
514
+ }, z.core.$strip>;
515
+ };
516
+ deleteOne: {
517
+ payload: z.ZodObject<Parameters<(CRUD<{
518
+ list: T["models"]["list"];
519
+ detail: T["models"]["details"];
520
+ }, {
521
+ list: T["searchPayload"]["list"];
522
+ specific: T["searchPayload"]["specific"];
523
+ }, {
524
+ create: T["actionsPayload"]["create"];
525
+ update: T["actionsPayload"]["update"];
526
+ }> & (T["customOperations"] extends Record<string, {
527
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
528
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
529
+ }> ? { [operation in keyof T["customOperations"]]: {
530
+ payload: T["customOperations"][operation]["payload"];
531
+ response: T["customOperations"][operation]["response"];
532
+ }; } : {}))["deleteOne"]>[0], z.core.$strip>;
533
+ response: z.ZodObject<{
534
+ success: z.ZodBoolean;
535
+ }, z.core.$strip>;
536
+ };
537
+ })[Method]["payload"]>) => Promise<z.core.output<(Record<Exclude<keyof (T["customOperations"] extends Record<string, {
538
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
539
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
540
+ }> ? { [operation in keyof T["customOperations"]]: {
541
+ payload: T["customOperations"][operation]["payload"];
542
+ response: T["customOperations"][operation]["response"];
543
+ }; } : {}), keyof CRUD<any, any, any>>, {
544
+ payload: (CRUD<{
545
+ list: T["models"]["list"];
546
+ detail: T["models"]["details"];
547
+ }, {
548
+ list: T["searchPayload"]["list"];
549
+ specific: T["searchPayload"]["specific"];
550
+ }, {
551
+ create: T["actionsPayload"]["create"];
552
+ update: T["actionsPayload"]["update"];
553
+ }> & (T["customOperations"] extends Record<string, {
554
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
555
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
556
+ }> ? { [operation in keyof T["customOperations"]]: {
557
+ payload: T["customOperations"][operation]["payload"];
558
+ response: T["customOperations"][operation]["response"];
559
+ }; } : {}))[Exclude<keyof (T["customOperations"] extends Record<string, {
560
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
561
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
562
+ }> ? { [operation in keyof T["customOperations"]]: {
563
+ payload: T["customOperations"][operation]["payload"];
564
+ response: T["customOperations"][operation]["response"];
565
+ }; } : {}), keyof CRUD<any, any, any>>]["payload"];
566
+ response: (CRUD<{
567
+ list: T["models"]["list"];
568
+ detail: T["models"]["details"];
569
+ }, {
570
+ list: T["searchPayload"]["list"];
571
+ specific: T["searchPayload"]["specific"];
572
+ }, {
573
+ create: T["actionsPayload"]["create"];
574
+ update: T["actionsPayload"]["update"];
575
+ }> & (T["customOperations"] extends Record<string, {
576
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
577
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
578
+ }> ? { [operation in keyof T["customOperations"]]: {
579
+ payload: T["customOperations"][operation]["payload"];
580
+ response: T["customOperations"][operation]["response"];
581
+ }; } : {}))[Exclude<keyof (T["customOperations"] extends Record<string, {
582
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
583
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
584
+ }> ? { [operation in keyof T["customOperations"]]: {
585
+ payload: T["customOperations"][operation]["payload"];
586
+ response: T["customOperations"][operation]["response"];
587
+ }; } : {}), keyof CRUD<any, any, any>>]["response"];
588
+ }> & {
589
+ list: {
590
+ payload: z.ZodObject<Parameters<(CRUD<{
591
+ list: T["models"]["list"];
592
+ detail: T["models"]["details"];
593
+ }, {
594
+ list: T["searchPayload"]["list"];
595
+ specific: T["searchPayload"]["specific"];
596
+ }, {
597
+ create: T["actionsPayload"]["create"];
598
+ update: T["actionsPayload"]["update"];
599
+ }> & (T["customOperations"] extends Record<string, {
600
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
601
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
602
+ }> ? { [operation in keyof T["customOperations"]]: {
603
+ payload: T["customOperations"][operation]["payload"];
604
+ response: T["customOperations"][operation]["response"];
605
+ }; } : {}))["list"]>[0] & {
606
+ pagination: ReturnType<typeof Pagination.schema.optional>;
607
+ }, z.core.$strip>;
608
+ response: z.ZodArray<Awaited<ReturnType<(CRUD<{
609
+ list: T["models"]["list"];
610
+ detail: T["models"]["details"];
611
+ }, {
612
+ list: T["searchPayload"]["list"];
613
+ specific: T["searchPayload"]["specific"];
614
+ }, {
615
+ create: T["actionsPayload"]["create"];
616
+ update: T["actionsPayload"]["update"];
617
+ }> & (T["customOperations"] extends Record<string, {
618
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
619
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
620
+ }> ? { [operation in keyof T["customOperations"]]: {
621
+ payload: T["customOperations"][operation]["payload"];
622
+ response: T["customOperations"][operation]["response"];
623
+ }; } : {}))["list"]>>[number]>;
624
+ };
625
+ details: {
626
+ payload: z.ZodObject<Parameters<(CRUD<{
627
+ list: T["models"]["list"];
628
+ detail: T["models"]["details"];
629
+ }, {
630
+ list: T["searchPayload"]["list"];
631
+ specific: T["searchPayload"]["specific"];
632
+ }, {
633
+ create: T["actionsPayload"]["create"];
634
+ update: T["actionsPayload"]["update"];
635
+ }> & (T["customOperations"] extends Record<string, {
636
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
637
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
638
+ }> ? { [operation in keyof T["customOperations"]]: {
639
+ payload: T["customOperations"][operation]["payload"];
640
+ response: T["customOperations"][operation]["response"];
641
+ }; } : {}))["details"]>[0], z.core.$strip>;
642
+ response: z.ZodNullable<T["models"]["details"]>;
643
+ };
644
+ create: {
645
+ payload: z.ZodObject<Parameters<(CRUD<{
646
+ list: T["models"]["list"];
647
+ detail: T["models"]["details"];
648
+ }, {
649
+ list: T["searchPayload"]["list"];
650
+ specific: T["searchPayload"]["specific"];
651
+ }, {
652
+ create: T["actionsPayload"]["create"];
653
+ update: T["actionsPayload"]["update"];
654
+ }> & (T["customOperations"] extends Record<string, {
655
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
656
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
657
+ }> ? { [operation in keyof T["customOperations"]]: {
658
+ payload: T["customOperations"][operation]["payload"];
659
+ response: T["customOperations"][operation]["response"];
660
+ }; } : {}))["create"]>[0], z.core.$strip>;
661
+ response: z.ZodObject<{
662
+ id: z.ZodString;
663
+ }, z.core.$strip>;
664
+ };
665
+ updateOne: {
666
+ payload: z.ZodObject<Parameters<(CRUD<{
667
+ list: T["models"]["list"];
668
+ detail: T["models"]["details"];
669
+ }, {
670
+ list: T["searchPayload"]["list"];
671
+ specific: T["searchPayload"]["specific"];
672
+ }, {
673
+ create: T["actionsPayload"]["create"];
674
+ update: T["actionsPayload"]["update"];
675
+ }> & (T["customOperations"] extends Record<string, {
676
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
677
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
678
+ }> ? { [operation in keyof T["customOperations"]]: {
679
+ payload: T["customOperations"][operation]["payload"];
680
+ response: T["customOperations"][operation]["response"];
681
+ }; } : {}))["updateOne"]>[0], z.core.$strip>;
682
+ response: z.ZodObject<{
683
+ success: z.ZodBoolean;
684
+ }, z.core.$strip>;
685
+ };
686
+ deleteOne: {
687
+ payload: z.ZodObject<Parameters<(CRUD<{
688
+ list: T["models"]["list"];
689
+ detail: T["models"]["details"];
690
+ }, {
691
+ list: T["searchPayload"]["list"];
692
+ specific: T["searchPayload"]["specific"];
693
+ }, {
694
+ create: T["actionsPayload"]["create"];
695
+ update: T["actionsPayload"]["update"];
696
+ }> & (T["customOperations"] extends Record<string, {
697
+ payload: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
698
+ response: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
699
+ }> ? { [operation in keyof T["customOperations"]]: {
700
+ payload: T["customOperations"][operation]["payload"];
701
+ response: T["customOperations"][operation]["response"];
702
+ }; } : {}))["deleteOne"]>[0], z.core.$strip>;
703
+ response: z.ZodObject<{
704
+ success: z.ZodBoolean;
705
+ }, z.core.$strip>;
706
+ };
707
+ })[Method]["response"]>>;
708
+ ___listSearchLogic: (entity: Types<Contract<T>>["details"], pattern: Types<Contract<T>>["findListPayload"]) => boolean;
709
+ ___specificSearchLogic: (entity: Types<Contract<T>>["details"], pattern: Types<Contract<T>>["findOnePayload"]) => boolean;
710
+ ___mapDetailToList: (entity: Types<Contract<T>>["details"]) => Types<Contract<T>>["listModel"];
711
+ ___mapCreatePayloadToDetail: (payload: Types<Contract<T>>["createPayload"]) => Types<Contract<T>>["details"];
712
+ ___mapUpdatePayloadToDetail: (prevValue: Types<Contract<T>>["details"], rawUpdate: Types<Contract<T>>["updatePayload"]) => Types<Contract<T>>["details"];
713
+ list: (data: {
714
+ filter: (Contract<T> extends infer T_1 ? T_1 extends Contract<T> ? T_1 extends {
715
+ list: (data: {
716
+ filter: infer SList;
717
+ pagination?: any;
718
+ }) => Promise<Array<infer MList>>;
719
+ details: (data: {
720
+ filter: infer SDetail;
721
+ }) => Promise<infer MDetail>;
722
+ create: (data: {
723
+ payload: infer ACreate;
724
+ }) => Promise<any>;
725
+ updateOne: (data: {
726
+ filter: any;
727
+ payload: infer AUpdate;
728
+ }) => Promise<any>;
729
+ deleteOne: (payload: any) => Promise<any>;
730
+ } ? {
731
+ Models: {
732
+ list: NonNullable<MList>;
733
+ detail: NonNullable<MDetail>;
734
+ };
735
+ SearchPayload: {
736
+ list: SList;
737
+ specific: SDetail;
738
+ };
739
+ ActionsPayload: {
740
+ create: ACreate;
741
+ update: AUpdate;
742
+ };
743
+ } : never : never : never)["SearchPayload"]["list"];
744
+ pagination?: import("../value-objects").PaginationModel;
745
+ }) => Promise<(Contract<T> extends infer T_2 ? T_2 extends Contract<T> ? T_2 extends {
746
+ list: (data: {
747
+ filter: infer SList;
748
+ pagination?: any;
749
+ }) => Promise<Array<infer MList>>;
750
+ details: (data: {
751
+ filter: infer SDetail;
752
+ }) => Promise<infer MDetail>;
753
+ create: (data: {
754
+ payload: infer ACreate;
755
+ }) => Promise<any>;
756
+ updateOne: (data: {
757
+ filter: any;
758
+ payload: infer AUpdate;
759
+ }) => Promise<any>;
760
+ deleteOne: (payload: any) => Promise<any>;
761
+ } ? {
762
+ Models: {
763
+ list: NonNullable<MList>;
764
+ detail: NonNullable<MDetail>;
765
+ };
766
+ SearchPayload: {
767
+ list: SList;
768
+ specific: SDetail;
769
+ };
770
+ ActionsPayload: {
771
+ create: ACreate;
772
+ update: AUpdate;
773
+ };
774
+ } : never : never : never)["Models"]["list"][]>;
775
+ details: (data: {
776
+ filter: (Contract<T> extends infer T_1 ? T_1 extends Contract<T> ? T_1 extends {
777
+ list: (data: {
778
+ filter: infer SList;
779
+ pagination?: any;
780
+ }) => Promise<Array<infer MList>>;
781
+ details: (data: {
782
+ filter: infer SDetail;
783
+ }) => Promise<infer MDetail>;
784
+ create: (data: {
785
+ payload: infer ACreate;
786
+ }) => Promise<any>;
787
+ updateOne: (data: {
788
+ filter: any;
789
+ payload: infer AUpdate;
790
+ }) => Promise<any>;
791
+ deleteOne: (payload: any) => Promise<any>;
792
+ } ? {
793
+ Models: {
794
+ list: NonNullable<MList>;
795
+ detail: NonNullable<MDetail>;
796
+ };
797
+ SearchPayload: {
798
+ list: SList;
799
+ specific: SDetail;
800
+ };
801
+ ActionsPayload: {
802
+ create: ACreate;
803
+ update: AUpdate;
804
+ };
805
+ } : never : never : never)["SearchPayload"]["specific"];
806
+ }) => Promise<(Contract<T> extends infer T_2 ? T_2 extends Contract<T> ? T_2 extends {
807
+ list: (data: {
808
+ filter: infer SList;
809
+ pagination?: any;
810
+ }) => Promise<Array<infer MList>>;
811
+ details: (data: {
812
+ filter: infer SDetail;
813
+ }) => Promise<infer MDetail>;
814
+ create: (data: {
815
+ payload: infer ACreate;
816
+ }) => Promise<any>;
817
+ updateOne: (data: {
818
+ filter: any;
819
+ payload: infer AUpdate;
820
+ }) => Promise<any>;
821
+ deleteOne: (payload: any) => Promise<any>;
822
+ } ? {
823
+ Models: {
824
+ list: NonNullable<MList>;
825
+ detail: NonNullable<MDetail>;
826
+ };
827
+ SearchPayload: {
828
+ list: SList;
829
+ specific: SDetail;
830
+ };
831
+ ActionsPayload: {
832
+ create: ACreate;
833
+ update: AUpdate;
834
+ };
835
+ } : never : never : never)["Models"]["detail"]>;
836
+ create: (data: {
837
+ payload: (Contract<T> extends infer T_1 ? T_1 extends Contract<T> ? T_1 extends {
838
+ list: (data: {
839
+ filter: infer SList;
840
+ pagination?: any;
841
+ }) => Promise<Array<infer MList>>;
842
+ details: (data: {
843
+ filter: infer SDetail;
844
+ }) => Promise<infer MDetail>;
845
+ create: (data: {
846
+ payload: infer ACreate;
847
+ }) => Promise<any>;
848
+ updateOne: (data: {
849
+ filter: any;
850
+ payload: infer AUpdate;
851
+ }) => Promise<any>;
852
+ deleteOne: (payload: any) => Promise<any>;
853
+ } ? {
854
+ Models: {
855
+ list: NonNullable<MList>;
856
+ detail: NonNullable<MDetail>;
857
+ };
858
+ SearchPayload: {
859
+ list: SList;
860
+ specific: SDetail;
861
+ };
862
+ ActionsPayload: {
863
+ create: ACreate;
864
+ update: AUpdate;
865
+ };
866
+ } : never : never : never)["ActionsPayload"]["create"];
867
+ }) => Promise<{
868
+ id: string;
869
+ }>;
870
+ updateOne: (data: {
871
+ filter: (Contract<T> extends infer T_1 ? T_1 extends Contract<T> ? T_1 extends {
872
+ list: (data: {
873
+ filter: infer SList;
874
+ pagination?: any;
875
+ }) => Promise<Array<infer MList>>;
876
+ details: (data: {
877
+ filter: infer SDetail;
878
+ }) => Promise<infer MDetail>;
879
+ create: (data: {
880
+ payload: infer ACreate;
881
+ }) => Promise<any>;
882
+ updateOne: (data: {
883
+ filter: any;
884
+ payload: infer AUpdate;
885
+ }) => Promise<any>;
886
+ deleteOne: (payload: any) => Promise<any>;
887
+ } ? {
888
+ Models: {
889
+ list: NonNullable<MList>;
890
+ detail: NonNullable<MDetail>;
891
+ };
892
+ SearchPayload: {
893
+ list: SList;
894
+ specific: SDetail;
895
+ };
896
+ ActionsPayload: {
897
+ create: ACreate;
898
+ update: AUpdate;
899
+ };
900
+ } : never : never : never)["SearchPayload"]["specific"];
901
+ payload: (Contract<T> extends infer T_2 ? T_2 extends Contract<T> ? T_2 extends {
902
+ list: (data: {
903
+ filter: infer SList;
904
+ pagination?: any;
905
+ }) => Promise<Array<infer MList>>;
906
+ details: (data: {
907
+ filter: infer SDetail;
908
+ }) => Promise<infer MDetail>;
909
+ create: (data: {
910
+ payload: infer ACreate;
911
+ }) => Promise<any>;
912
+ updateOne: (data: {
913
+ filter: any;
914
+ payload: infer AUpdate;
915
+ }) => Promise<any>;
916
+ deleteOne: (payload: any) => Promise<any>;
917
+ } ? {
918
+ Models: {
919
+ list: NonNullable<MList>;
920
+ detail: NonNullable<MDetail>;
921
+ };
922
+ SearchPayload: {
923
+ list: SList;
924
+ specific: SDetail;
925
+ };
926
+ ActionsPayload: {
927
+ create: ACreate;
928
+ update: AUpdate;
929
+ };
930
+ } : never : never : never)["ActionsPayload"]["update"];
931
+ }) => Promise<{
932
+ success: boolean;
933
+ }>;
934
+ deleteOne: (data: {
935
+ filter: (Contract<T> extends infer T_1 ? T_1 extends Contract<T> ? T_1 extends {
936
+ list: (data: {
937
+ filter: infer SList;
938
+ pagination?: any;
939
+ }) => Promise<Array<infer MList>>;
940
+ details: (data: {
941
+ filter: infer SDetail;
942
+ }) => Promise<infer MDetail>;
943
+ create: (data: {
944
+ payload: infer ACreate;
945
+ }) => Promise<any>;
946
+ updateOne: (data: {
947
+ filter: any;
948
+ payload: infer AUpdate;
949
+ }) => Promise<any>;
950
+ deleteOne: (payload: any) => Promise<any>;
951
+ } ? {
952
+ Models: {
953
+ list: NonNullable<MList>;
954
+ detail: NonNullable<MDetail>;
955
+ };
956
+ SearchPayload: {
957
+ list: SList;
958
+ specific: SDetail;
959
+ };
960
+ ActionsPayload: {
961
+ create: ACreate;
962
+ update: AUpdate;
963
+ };
964
+ } : never : never : never)["SearchPayload"]["specific"];
965
+ }) => Promise<{
966
+ success: boolean;
967
+ }>;
968
+ };
969
+ };