@eyettea/zeta-backend 0.0.1-rc.10

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 (66) hide show
  1. package/README.md +1 -0
  2. package/dist/types/api/index.d.ts +11 -0
  3. package/dist/types/api/index.d.ts.map +1 -0
  4. package/dist/types/api/types.d.ts +19 -0
  5. package/dist/types/api/types.d.ts.map +1 -0
  6. package/dist/types/app.d.ts +1160 -0
  7. package/dist/types/app.d.ts.map +1 -0
  8. package/dist/types/config/database.d.ts +17 -0
  9. package/dist/types/config/database.d.ts.map +1 -0
  10. package/dist/types/config/env.d.ts +20 -0
  11. package/dist/types/config/env.d.ts.map +1 -0
  12. package/dist/types/database/aggregates.d.ts +14 -0
  13. package/dist/types/database/aggregates.d.ts.map +1 -0
  14. package/dist/types/database/clmmTicks.d.ts +9 -0
  15. package/dist/types/database/clmmTicks.d.ts.map +1 -0
  16. package/dist/types/database/liquidityTicks.d.ts +7 -0
  17. package/dist/types/database/liquidityTicks.d.ts.map +1 -0
  18. package/dist/types/database/mints.d.ts +18 -0
  19. package/dist/types/database/mints.d.ts.map +1 -0
  20. package/dist/types/database/poolEvents.d.ts +37 -0
  21. package/dist/types/database/poolEvents.d.ts.map +1 -0
  22. package/dist/types/database/pools.d.ts +47 -0
  23. package/dist/types/database/pools.d.ts.map +1 -0
  24. package/dist/types/database/priceTicks.d.ts +7 -0
  25. package/dist/types/database/priceTicks.d.ts.map +1 -0
  26. package/dist/types/database/schemas.d.ts +134 -0
  27. package/dist/types/database/schemas.d.ts.map +1 -0
  28. package/dist/types/database/types.d.ts +114 -0
  29. package/dist/types/database/types.d.ts.map +1 -0
  30. package/dist/types/index.d.ts +2 -0
  31. package/dist/types/index.d.ts.map +1 -0
  32. package/dist/types/lib/errors.d.ts +91 -0
  33. package/dist/types/lib/errors.d.ts.map +1 -0
  34. package/dist/types/lib/logger.d.ts +2 -0
  35. package/dist/types/lib/logger.d.ts.map +1 -0
  36. package/dist/types/lib/validation.d.ts +3 -0
  37. package/dist/types/lib/validation.d.ts.map +1 -0
  38. package/dist/types/routes/compute.d.ts +124 -0
  39. package/dist/types/routes/compute.d.ts.map +1 -0
  40. package/dist/types/routes/ohlcv.d.ts +74 -0
  41. package/dist/types/routes/ohlcv.d.ts.map +1 -0
  42. package/dist/types/routes/pools.d.ts +413 -0
  43. package/dist/types/routes/pools.d.ts.map +1 -0
  44. package/dist/types/routes/response.d.ts +73 -0
  45. package/dist/types/routes/response.d.ts.map +1 -0
  46. package/dist/types/routes/websocket.d.ts +42 -0
  47. package/dist/types/routes/websocket.d.ts.map +1 -0
  48. package/dist/types/services/Services.d.ts +21 -0
  49. package/dist/types/services/Services.d.ts.map +1 -0
  50. package/dist/types/services/computeService.d.ts +103 -0
  51. package/dist/types/services/computeService.d.ts.map +1 -0
  52. package/dist/types/services/poolEventsHandler.d.ts +26 -0
  53. package/dist/types/services/poolEventsHandler.d.ts.map +1 -0
  54. package/dist/types/services/poolEventsSubscriptionService.d.ts +16 -0
  55. package/dist/types/services/poolEventsSubscriptionService.d.ts.map +1 -0
  56. package/dist/types/services/poolService.d.ts +114 -0
  57. package/dist/types/services/poolService.d.ts.map +1 -0
  58. package/dist/types/services/poolStateWebsocketService.d.ts +13 -0
  59. package/dist/types/services/poolStateWebsocketService.d.ts.map +1 -0
  60. package/dist/types/services/poolStatsService.d.ts +66 -0
  61. package/dist/types/services/poolStatsService.d.ts.map +1 -0
  62. package/dist/types/services/priceService.d.ts +36 -0
  63. package/dist/types/services/priceService.d.ts.map +1 -0
  64. package/dist/types/utils/period.d.ts +8 -0
  65. package/dist/types/utils/period.d.ts.map +1 -0
  66. package/package.json +55 -0
@@ -0,0 +1,124 @@
1
+ import { Elysia } from 'elysia';
2
+ import type { SwapComputeResult } from '../services/computeService';
3
+ export interface SwapComputeError {
4
+ id: string;
5
+ success: false;
6
+ msg: string;
7
+ data: undefined;
8
+ }
9
+ export interface SwapComputeSuccess {
10
+ id: string;
11
+ success: true;
12
+ msg?: undefined;
13
+ data: SwapComputeResult;
14
+ }
15
+ export type SwapComputeResponse = SwapComputeSuccess | SwapComputeError;
16
+ export declare const computeRouter: Elysia<"/compute", {
17
+ decorator: {};
18
+ store: {};
19
+ derive: {};
20
+ resolve: {};
21
+ }, {
22
+ typebox: {};
23
+ error: {};
24
+ }, {
25
+ schema: {};
26
+ standaloneSchema: {};
27
+ macro: {};
28
+ macroFn: {};
29
+ parser: {};
30
+ response: {};
31
+ }, {
32
+ compute: {
33
+ "swap-base-in": {
34
+ get: {
35
+ body: unknown;
36
+ params: {};
37
+ query: {
38
+ slippageBps?: string | undefined;
39
+ poolType: "standard" | "concentrated";
40
+ inputMint: string;
41
+ outputMint: string;
42
+ amount: string;
43
+ };
44
+ headers: unknown;
45
+ response: {
46
+ 400: {
47
+ message: string;
48
+ error: "Bad request";
49
+ details?: Record<string, unknown> | undefined;
50
+ };
51
+ 404: {
52
+ message: string;
53
+ error: "Resource not found";
54
+ details?: Record<string, unknown> | undefined;
55
+ };
56
+ 422: {
57
+ message: string;
58
+ error: "Validation error";
59
+ details?: Record<string, unknown> | undefined;
60
+ };
61
+ 500: {
62
+ message: string;
63
+ error: "Internal server error";
64
+ details?: Record<string, unknown> | undefined;
65
+ };
66
+ 200: SwapComputeResult;
67
+ };
68
+ };
69
+ };
70
+ };
71
+ } & {
72
+ compute: {
73
+ "swap-base-out": {
74
+ get: {
75
+ body: unknown;
76
+ params: {};
77
+ query: {
78
+ slippageBps?: string | undefined;
79
+ poolType: "standard" | "concentrated";
80
+ inputMint: string;
81
+ outputMint: string;
82
+ amount: string;
83
+ };
84
+ headers: unknown;
85
+ response: {
86
+ 400: {
87
+ message: string;
88
+ error: "Bad request";
89
+ details?: Record<string, unknown> | undefined;
90
+ };
91
+ 404: {
92
+ message: string;
93
+ error: "Resource not found";
94
+ details?: Record<string, unknown> | undefined;
95
+ };
96
+ 422: {
97
+ message: string;
98
+ error: "Validation error";
99
+ details?: Record<string, unknown> | undefined;
100
+ };
101
+ 500: {
102
+ message: string;
103
+ error: "Internal server error";
104
+ details?: Record<string, unknown> | undefined;
105
+ };
106
+ 200: SwapComputeResult;
107
+ };
108
+ };
109
+ };
110
+ };
111
+ }, {
112
+ derive: {};
113
+ resolve: {};
114
+ schema: {};
115
+ standaloneSchema: {};
116
+ response: {};
117
+ }, {
118
+ derive: {};
119
+ resolve: {};
120
+ schema: {};
121
+ standaloneSchema: {};
122
+ response: {};
123
+ }>;
124
+ //# sourceMappingURL=compute.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compute.d.ts","sourceRoot":"","sources":["../../../src/routes/compute.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAK,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAMlE,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,KAAK,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,SAAS,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,IAAI,CAAC;IACd,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,iBAAiB,CAAC;CACzB;AAED,MAAM,MAAM,mBAAmB,GAAG,kBAAkB,GAAG,gBAAgB,CAAC;AAIxE,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuFvB,CAAC"}
@@ -0,0 +1,74 @@
1
+ import { Elysia } from 'elysia';
2
+ import type { OHLVCResult } from '../services/poolStatsService';
3
+ export declare const ohlcvRouter: Elysia<"/api/v1/ohlcv", {
4
+ decorator: {};
5
+ store: {};
6
+ derive: {};
7
+ resolve: {};
8
+ }, {
9
+ typebox: {};
10
+ error: {};
11
+ }, {
12
+ schema: {};
13
+ standaloneSchema: {};
14
+ macro: {};
15
+ macroFn: {};
16
+ parser: {};
17
+ response: {};
18
+ }, {
19
+ api: {
20
+ v1: {
21
+ ohlcv: {
22
+ get: {
23
+ body: unknown;
24
+ params: {};
25
+ query: {
26
+ type?: "1m" | "5m" | "15m" | "1h" | "4h" | "1d" | "1w" | undefined;
27
+ token0?: string | undefined;
28
+ token1?: string | undefined;
29
+ poolId?: string | undefined;
30
+ time_from?: number | undefined;
31
+ time_to?: number | undefined;
32
+ };
33
+ headers: unknown;
34
+ response: {
35
+ 400: {
36
+ message: string;
37
+ error: "Bad request";
38
+ details?: Record<string, unknown> | undefined;
39
+ };
40
+ 404: {
41
+ message: string;
42
+ error: "Resource not found";
43
+ details?: Record<string, unknown> | undefined;
44
+ };
45
+ 422: {
46
+ message: string;
47
+ error: "Validation error";
48
+ details?: Record<string, unknown> | undefined;
49
+ };
50
+ 500: {
51
+ message: string;
52
+ error: "Internal server error";
53
+ details?: Record<string, unknown> | undefined;
54
+ };
55
+ 200: OHLVCResult;
56
+ };
57
+ };
58
+ };
59
+ };
60
+ };
61
+ }, {
62
+ derive: {};
63
+ resolve: {};
64
+ schema: {};
65
+ standaloneSchema: {};
66
+ response: {};
67
+ }, {
68
+ derive: {};
69
+ resolve: {};
70
+ schema: {};
71
+ standaloneSchema: {};
72
+ response: {};
73
+ }>;
74
+ //# sourceMappingURL=ohlcv.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ohlcv.d.ts","sourceRoot":"","sources":["../../../src/routes/ohlcv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAK,MAAM,QAAQ,CAAC;AAInC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAI/D,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsGvB,CAAC"}
@@ -0,0 +1,413 @@
1
+ import { Elysia } from 'elysia';
2
+ import { PaginatedApiResponse } from './response';
3
+ import type { LiquidityLineData } from '../services/poolStatsService';
4
+ import type { TokenPrice } from '../services/priceService';
5
+ import type { TokenInfo } from '@alephium/token-list';
6
+ import type { PoolWithStats, ClmmLiquidityRow } from '../services/poolService';
7
+ import type { ClmmPosition } from '../api/types';
8
+ import type { PoolEvent } from '../database/types';
9
+ export type ClmmLiquidityRowPayload = ClmmLiquidityRow;
10
+ export interface ClmmLiquidityLinePayload {
11
+ count: number;
12
+ line: ClmmLiquidityRowPayload[];
13
+ }
14
+ export interface PoolListResponse {
15
+ count: number;
16
+ totalPools: number;
17
+ data: PoolWithStats[];
18
+ }
19
+ export interface PoolListFromIdsResponse {
20
+ count: number;
21
+ data: PoolWithStats[];
22
+ meta: {
23
+ requestedIds: string[];
24
+ foundIds: string[];
25
+ missingIds: string[];
26
+ };
27
+ }
28
+ export interface Events {
29
+ data: PoolEvent[];
30
+ }
31
+ export interface TokenListResponse {
32
+ count: number;
33
+ tokens: TokenInfo[];
34
+ }
35
+ export interface TokenPricesResponse {
36
+ count: number;
37
+ prices: TokenPrice[];
38
+ }
39
+ export declare const poolsRouter: Elysia<"/pools", {
40
+ decorator: {};
41
+ store: {};
42
+ derive: {};
43
+ resolve: {};
44
+ }, {
45
+ typebox: {};
46
+ error: {};
47
+ }, {
48
+ schema: {};
49
+ standaloneSchema: {};
50
+ macro: {};
51
+ macroFn: {};
52
+ parser: {};
53
+ response: {};
54
+ }, {
55
+ pools: {
56
+ tokens: {
57
+ get: {
58
+ body: unknown;
59
+ params: {};
60
+ query: unknown;
61
+ headers: unknown;
62
+ response: {
63
+ 400: {
64
+ message: string;
65
+ error: "Bad request";
66
+ details?: Record<string, unknown> | undefined;
67
+ };
68
+ 404: {
69
+ message: string;
70
+ error: "Resource not found";
71
+ details?: Record<string, unknown> | undefined;
72
+ };
73
+ 422: {
74
+ message: string;
75
+ error: "Validation error";
76
+ details?: Record<string, unknown> | undefined;
77
+ };
78
+ 500: {
79
+ message: string;
80
+ error: "Internal server error";
81
+ details?: Record<string, unknown> | undefined;
82
+ };
83
+ 200: TokenListResponse;
84
+ };
85
+ };
86
+ };
87
+ };
88
+ } & {
89
+ pools: {
90
+ line: {
91
+ position: {
92
+ get: {
93
+ body: unknown;
94
+ params: {};
95
+ query: {
96
+ id: string;
97
+ };
98
+ headers: unknown;
99
+ response: {
100
+ 400: {
101
+ message: string;
102
+ error: "Bad request";
103
+ details?: Record<string, unknown> | undefined;
104
+ };
105
+ 404: {
106
+ message: string;
107
+ error: "Resource not found";
108
+ details?: Record<string, unknown> | undefined;
109
+ };
110
+ 422: {
111
+ message: string;
112
+ error: "Validation error";
113
+ details?: Record<string, unknown> | undefined;
114
+ };
115
+ 500: {
116
+ message: string;
117
+ error: "Internal server error";
118
+ details?: Record<string, unknown> | undefined;
119
+ };
120
+ 200: ClmmLiquidityLinePayload;
121
+ };
122
+ };
123
+ };
124
+ };
125
+ };
126
+ } & {
127
+ pools: {
128
+ prices: {
129
+ get: {
130
+ body: unknown;
131
+ params: {};
132
+ query: {
133
+ symbols?: string | undefined;
134
+ ids?: string | undefined;
135
+ };
136
+ headers: unknown;
137
+ response: {
138
+ 400: {
139
+ message: string;
140
+ error: "Bad request";
141
+ details?: Record<string, unknown> | undefined;
142
+ };
143
+ 404: {
144
+ message: string;
145
+ error: "Resource not found";
146
+ details?: Record<string, unknown> | undefined;
147
+ };
148
+ 422: {
149
+ message: string;
150
+ error: "Validation error";
151
+ details?: Record<string, unknown> | undefined;
152
+ };
153
+ 500: {
154
+ message: string;
155
+ error: "Internal server error";
156
+ details?: Record<string, unknown> | undefined;
157
+ };
158
+ 200: TokenPricesResponse;
159
+ };
160
+ };
161
+ };
162
+ };
163
+ } & {
164
+ pools: {
165
+ info: {
166
+ mint: {
167
+ get: {
168
+ body: unknown;
169
+ params: {};
170
+ query: {
171
+ poolType?: "standard" | "concentrated" | "all" | undefined;
172
+ page?: number | undefined;
173
+ pageSize?: number | undefined;
174
+ mint2?: string | undefined;
175
+ mint1: string;
176
+ };
177
+ headers: unknown;
178
+ response: {
179
+ 400: {
180
+ message: string;
181
+ error: "Bad request";
182
+ details?: Record<string, unknown> | undefined;
183
+ };
184
+ 404: {
185
+ message: string;
186
+ error: "Resource not found";
187
+ details?: Record<string, unknown> | undefined;
188
+ };
189
+ 422: {
190
+ message: string;
191
+ error: "Validation error";
192
+ details?: Record<string, unknown> | undefined;
193
+ };
194
+ 500: {
195
+ message: string;
196
+ error: "Internal server error";
197
+ details?: Record<string, unknown> | undefined;
198
+ };
199
+ 200: PaginatedApiResponse<PoolListResponse>;
200
+ };
201
+ };
202
+ };
203
+ };
204
+ };
205
+ } & {
206
+ pools: {
207
+ info: {
208
+ ids: {
209
+ get: {
210
+ body: unknown;
211
+ params: {};
212
+ query: {
213
+ ids: string;
214
+ };
215
+ headers: unknown;
216
+ response: {
217
+ 400: {
218
+ message: string;
219
+ error: "Bad request";
220
+ details?: Record<string, unknown> | undefined;
221
+ };
222
+ 404: {
223
+ message: string;
224
+ error: "Resource not found";
225
+ details?: Record<string, unknown> | undefined;
226
+ };
227
+ 422: {
228
+ message: string;
229
+ error: "Validation error";
230
+ details?: Record<string, unknown> | undefined;
231
+ };
232
+ 500: {
233
+ message: string;
234
+ error: "Internal server error";
235
+ details?: Record<string, unknown> | undefined;
236
+ };
237
+ 200: PoolListFromIdsResponse;
238
+ };
239
+ };
240
+ };
241
+ };
242
+ };
243
+ } & {
244
+ pools: {
245
+ info: {
246
+ events: {
247
+ get: {
248
+ body: unknown;
249
+ params: {};
250
+ query: {
251
+ id: string;
252
+ };
253
+ headers: unknown;
254
+ response: {
255
+ 400: {
256
+ message: string;
257
+ error: "Bad request";
258
+ details?: Record<string, unknown> | undefined;
259
+ };
260
+ 404: {
261
+ message: string;
262
+ error: "Resource not found";
263
+ details?: Record<string, unknown> | undefined;
264
+ };
265
+ 422: {
266
+ message: string;
267
+ error: "Validation error";
268
+ details?: Record<string, unknown> | undefined;
269
+ };
270
+ 500: {
271
+ message: string;
272
+ error: "Internal server error";
273
+ details?: Record<string, unknown> | undefined;
274
+ };
275
+ 200: Events;
276
+ };
277
+ };
278
+ };
279
+ };
280
+ };
281
+ } & {
282
+ pools: {
283
+ info: {
284
+ "clmm-positions": {
285
+ get: {
286
+ body: unknown;
287
+ params: {};
288
+ query: {
289
+ address: string;
290
+ };
291
+ headers: unknown;
292
+ response: {
293
+ 400: {
294
+ message: string;
295
+ error: "Bad request";
296
+ details?: Record<string, unknown> | undefined;
297
+ };
298
+ 404: {
299
+ message: string;
300
+ error: "Resource not found";
301
+ details?: Record<string, unknown> | undefined;
302
+ };
303
+ 422: {
304
+ message: string;
305
+ error: "Validation error";
306
+ details?: Record<string, unknown> | undefined;
307
+ };
308
+ 500: {
309
+ message: string;
310
+ error: "Internal server error";
311
+ details?: Record<string, unknown> | undefined;
312
+ };
313
+ 200: ClmmPosition[];
314
+ };
315
+ };
316
+ };
317
+ };
318
+ };
319
+ } & {
320
+ pools: {
321
+ info: {
322
+ list: {
323
+ get: {
324
+ body: unknown;
325
+ params: {};
326
+ query: {
327
+ poolType?: "standard" | "concentrated" | "all" | undefined;
328
+ page?: number | undefined;
329
+ pageSize?: number | undefined;
330
+ sortType?: "asc" | "desc" | undefined;
331
+ };
332
+ headers: unknown;
333
+ response: {
334
+ 400: {
335
+ message: string;
336
+ error: "Bad request";
337
+ details?: Record<string, unknown> | undefined;
338
+ };
339
+ 404: {
340
+ message: string;
341
+ error: "Resource not found";
342
+ details?: Record<string, unknown> | undefined;
343
+ };
344
+ 422: {
345
+ message: string;
346
+ error: "Validation error";
347
+ details?: Record<string, unknown> | undefined;
348
+ };
349
+ 500: {
350
+ message: string;
351
+ error: "Internal server error";
352
+ details?: Record<string, unknown> | undefined;
353
+ };
354
+ 200: PaginatedApiResponse<PoolListResponse>;
355
+ };
356
+ };
357
+ };
358
+ };
359
+ };
360
+ } & {
361
+ pools: {
362
+ line: {
363
+ liquidity: {
364
+ get: {
365
+ body: unknown;
366
+ params: {};
367
+ query: {
368
+ startTime?: number | undefined;
369
+ endTime?: number | undefined;
370
+ id: string;
371
+ };
372
+ headers: unknown;
373
+ response: {
374
+ 400: {
375
+ message: string;
376
+ error: "Bad request";
377
+ details?: Record<string, unknown> | undefined;
378
+ };
379
+ 404: {
380
+ message: string;
381
+ error: "Resource not found";
382
+ details?: Record<string, unknown> | undefined;
383
+ };
384
+ 422: {
385
+ message: string;
386
+ error: "Validation error";
387
+ details?: Record<string, unknown> | undefined;
388
+ };
389
+ 500: {
390
+ message: string;
391
+ error: "Internal server error";
392
+ details?: Record<string, unknown> | undefined;
393
+ };
394
+ 200: LiquidityLineData;
395
+ };
396
+ };
397
+ };
398
+ };
399
+ };
400
+ }, {
401
+ derive: {};
402
+ resolve: {};
403
+ schema: {};
404
+ standaloneSchema: {};
405
+ response: {};
406
+ }, {
407
+ derive: {};
408
+ resolve: {};
409
+ schema: {};
410
+ standaloneSchema: {};
411
+ response: {};
412
+ }>;
413
+ //# sourceMappingURL=pools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pools.d.ts","sourceRoot":"","sources":["../../../src/routes/pools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAK,MAAM,QAAQ,CAAC;AAGnC,OAAO,EAA+B,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAE/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAGV,aAAa,EACb,gBAAgB,EACjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAMjD,MAAM,MAAM,uBAAuB,GAAG,gBAAgB,CAAC;AAEvD,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,uBAAuB,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,aAAa,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,aAAa,EAAE,CAAC;IACtB,IAAI,EAAE;QACJ,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,UAAU,EAAE,MAAM,EAAE,CAAC;KACtB,CAAC;CACH;AAED,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,SAAS,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,UAAU,EAAE,CAAC;CACtB;AAED,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4arB,CAAC"}
@@ -0,0 +1,73 @@
1
+ export interface PaginatedApiResponse<T> extends Response {
2
+ data: T & {
3
+ meta: {
4
+ page: number;
5
+ pageSize: number;
6
+ totalPages: number;
7
+ };
8
+ };
9
+ }
10
+ export declare function handlePaginatedSuccess<T>(data: T, page: number, pageSize: number, totalPages: number): PaginatedApiResponse<T>;
11
+ export declare function handleSuccess<T>(data: T): T;
12
+ export declare function badRequest(message: string): never;
13
+ export declare function notFound(subject: string): never;
14
+ export declare function internalServerError(error: unknown): never;
15
+ export declare const DefaultErrorResponseSchemas: {
16
+ 400: import("zod").ZodObject<{
17
+ message: import("zod").ZodString;
18
+ details: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
19
+ } & {
20
+ error: import("zod").ZodLiteral<"Bad request">;
21
+ }, "strip", import("zod").ZodTypeAny, {
22
+ message: string;
23
+ error: "Bad request";
24
+ details?: Record<string, unknown> | undefined;
25
+ }, {
26
+ message: string;
27
+ error: "Bad request";
28
+ details?: Record<string, unknown> | undefined;
29
+ }>;
30
+ 404: import("zod").ZodObject<{
31
+ message: import("zod").ZodString;
32
+ details: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
33
+ } & {
34
+ error: import("zod").ZodLiteral<"Resource not found">;
35
+ }, "strip", import("zod").ZodTypeAny, {
36
+ message: string;
37
+ error: "Resource not found";
38
+ details?: Record<string, unknown> | undefined;
39
+ }, {
40
+ message: string;
41
+ error: "Resource not found";
42
+ details?: Record<string, unknown> | undefined;
43
+ }>;
44
+ 422: import("zod").ZodObject<{
45
+ message: import("zod").ZodString;
46
+ details: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
47
+ } & {
48
+ error: import("zod").ZodLiteral<"Validation error">;
49
+ }, "strip", import("zod").ZodTypeAny, {
50
+ message: string;
51
+ error: "Validation error";
52
+ details?: Record<string, unknown> | undefined;
53
+ }, {
54
+ message: string;
55
+ error: "Validation error";
56
+ details?: Record<string, unknown> | undefined;
57
+ }>;
58
+ 500: import("zod").ZodObject<{
59
+ message: import("zod").ZodString;
60
+ details: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
61
+ } & {
62
+ error: import("zod").ZodLiteral<"Internal server error">;
63
+ }, "strip", import("zod").ZodTypeAny, {
64
+ message: string;
65
+ error: "Internal server error";
66
+ details?: Record<string, unknown> | undefined;
67
+ }, {
68
+ message: string;
69
+ error: "Internal server error";
70
+ details?: Record<string, unknown> | undefined;
71
+ }>;
72
+ };
73
+ //# sourceMappingURL=response.d.ts.map