@gigapay-dev/contracts 3.14.3 → 3.15.1

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.
@@ -71,6 +71,246 @@ export declare const ValidatePromoEndpoint: {
71
71
  reason: z.ZodString;
72
72
  }, z.core.$strip>], "ok">;
73
73
  };
74
+ export declare const PromoCodeCreateRequestSchema: z.ZodObject<{
75
+ value: z.ZodString;
76
+ type: z.ZodDefault<z.ZodEnum<{
77
+ USER: "USER";
78
+ AD: "AD";
79
+ SYSTEM: "SYSTEM";
80
+ }>>;
81
+ status: z.ZodDefault<z.ZodEnum<{
82
+ ACTIVE: "ACTIVE";
83
+ EXPIRED: "EXPIRED";
84
+ INACTIVE: "INACTIVE";
85
+ LIMITED: "LIMITED";
86
+ DELETED: "DELETED";
87
+ }>>;
88
+ discountType: z.ZodDefault<z.ZodEnum<{
89
+ PERCENT: "PERCENT";
90
+ FIXED_USD: "FIXED_USD";
91
+ }>>;
92
+ discountValue: z.ZodString;
93
+ budgetUsd: z.ZodOptional<z.ZodNullable<z.ZodString>>;
94
+ activationLimit: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
95
+ activationPerUserLimit: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
96
+ startedAt: z.ZodNullable<z.ZodString>;
97
+ expiredAt: z.ZodNullable<z.ZodString>;
98
+ }, z.core.$strip>;
99
+ export type PromoCodeCreateRequest = z.infer<typeof PromoCodeCreateRequestSchema>;
100
+ export declare const PromoCodeUpdateRequestSchema: z.ZodObject<{
101
+ value: z.ZodOptional<z.ZodString>;
102
+ type: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
103
+ USER: "USER";
104
+ AD: "AD";
105
+ SYSTEM: "SYSTEM";
106
+ }>>>;
107
+ status: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
108
+ ACTIVE: "ACTIVE";
109
+ EXPIRED: "EXPIRED";
110
+ INACTIVE: "INACTIVE";
111
+ LIMITED: "LIMITED";
112
+ DELETED: "DELETED";
113
+ }>>>;
114
+ discountType: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
115
+ PERCENT: "PERCENT";
116
+ FIXED_USD: "FIXED_USD";
117
+ }>>>;
118
+ discountValue: z.ZodOptional<z.ZodString>;
119
+ budgetUsd: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
120
+ activationLimit: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodNumber>>>;
121
+ activationPerUserLimit: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodNumber>>>;
122
+ startedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
123
+ expiredAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
124
+ }, z.core.$strip>;
125
+ export type PromoCodeUpdateRequest = z.infer<typeof PromoCodeUpdateRequestSchema>;
126
+ export declare const ListAdminPromoCodesEndpoint: {
127
+ readonly method: "GET";
128
+ readonly path: "/api/admin/promo-codes";
129
+ readonly response: z.ZodArray<z.ZodObject<{
130
+ id: z.ZodNumber;
131
+ value: z.ZodString;
132
+ type: z.ZodEnum<{
133
+ USER: "USER";
134
+ AD: "AD";
135
+ SYSTEM: "SYSTEM";
136
+ }>;
137
+ status: z.ZodEnum<{
138
+ ACTIVE: "ACTIVE";
139
+ EXPIRED: "EXPIRED";
140
+ INACTIVE: "INACTIVE";
141
+ LIMITED: "LIMITED";
142
+ DELETED: "DELETED";
143
+ }>;
144
+ discountType: z.ZodEnum<{
145
+ PERCENT: "PERCENT";
146
+ FIXED_USD: "FIXED_USD";
147
+ }>;
148
+ discountValue: z.ZodString;
149
+ budgetUsd: z.ZodNullable<z.ZodString>;
150
+ spentUsd: z.ZodString;
151
+ activationLimit: z.ZodNullable<z.ZodNumber>;
152
+ activationPerUserLimit: z.ZodNullable<z.ZodNumber>;
153
+ startedAt: z.ZodNullable<z.ZodString>;
154
+ expiredAt: z.ZodNullable<z.ZodString>;
155
+ }, z.core.$strip>>;
156
+ readonly requiresAuth: true;
157
+ readonly requiresAdmin: true;
158
+ };
159
+ export declare const GetAdminPromoCodeEndpoint: {
160
+ readonly method: "GET";
161
+ readonly path: "/api/admin/promo-codes/:id";
162
+ readonly params: z.ZodObject<{
163
+ id: z.ZodCoercedNumber<unknown>;
164
+ }, z.core.$strip>;
165
+ readonly response: z.ZodObject<{
166
+ id: z.ZodNumber;
167
+ value: z.ZodString;
168
+ type: z.ZodEnum<{
169
+ USER: "USER";
170
+ AD: "AD";
171
+ SYSTEM: "SYSTEM";
172
+ }>;
173
+ status: z.ZodEnum<{
174
+ ACTIVE: "ACTIVE";
175
+ EXPIRED: "EXPIRED";
176
+ INACTIVE: "INACTIVE";
177
+ LIMITED: "LIMITED";
178
+ DELETED: "DELETED";
179
+ }>;
180
+ discountType: z.ZodEnum<{
181
+ PERCENT: "PERCENT";
182
+ FIXED_USD: "FIXED_USD";
183
+ }>;
184
+ discountValue: z.ZodString;
185
+ budgetUsd: z.ZodNullable<z.ZodString>;
186
+ spentUsd: z.ZodString;
187
+ activationLimit: z.ZodNullable<z.ZodNumber>;
188
+ activationPerUserLimit: z.ZodNullable<z.ZodNumber>;
189
+ startedAt: z.ZodNullable<z.ZodString>;
190
+ expiredAt: z.ZodNullable<z.ZodString>;
191
+ }, z.core.$strip>;
192
+ readonly requiresAuth: true;
193
+ readonly requiresAdmin: true;
194
+ };
195
+ export declare const CreateAdminPromoCodeEndpoint: {
196
+ readonly method: "POST";
197
+ readonly path: "/api/admin/promo-codes";
198
+ readonly request: z.ZodObject<{
199
+ value: z.ZodString;
200
+ type: z.ZodDefault<z.ZodEnum<{
201
+ USER: "USER";
202
+ AD: "AD";
203
+ SYSTEM: "SYSTEM";
204
+ }>>;
205
+ status: z.ZodDefault<z.ZodEnum<{
206
+ ACTIVE: "ACTIVE";
207
+ EXPIRED: "EXPIRED";
208
+ INACTIVE: "INACTIVE";
209
+ LIMITED: "LIMITED";
210
+ DELETED: "DELETED";
211
+ }>>;
212
+ discountType: z.ZodDefault<z.ZodEnum<{
213
+ PERCENT: "PERCENT";
214
+ FIXED_USD: "FIXED_USD";
215
+ }>>;
216
+ discountValue: z.ZodString;
217
+ budgetUsd: z.ZodOptional<z.ZodNullable<z.ZodString>>;
218
+ activationLimit: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
219
+ activationPerUserLimit: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
220
+ startedAt: z.ZodNullable<z.ZodString>;
221
+ expiredAt: z.ZodNullable<z.ZodString>;
222
+ }, z.core.$strip>;
223
+ readonly response: z.ZodObject<{
224
+ id: z.ZodNumber;
225
+ value: z.ZodString;
226
+ type: z.ZodEnum<{
227
+ USER: "USER";
228
+ AD: "AD";
229
+ SYSTEM: "SYSTEM";
230
+ }>;
231
+ status: z.ZodEnum<{
232
+ ACTIVE: "ACTIVE";
233
+ EXPIRED: "EXPIRED";
234
+ INACTIVE: "INACTIVE";
235
+ LIMITED: "LIMITED";
236
+ DELETED: "DELETED";
237
+ }>;
238
+ discountType: z.ZodEnum<{
239
+ PERCENT: "PERCENT";
240
+ FIXED_USD: "FIXED_USD";
241
+ }>;
242
+ discountValue: z.ZodString;
243
+ budgetUsd: z.ZodNullable<z.ZodString>;
244
+ spentUsd: z.ZodString;
245
+ activationLimit: z.ZodNullable<z.ZodNumber>;
246
+ activationPerUserLimit: z.ZodNullable<z.ZodNumber>;
247
+ startedAt: z.ZodNullable<z.ZodString>;
248
+ expiredAt: z.ZodNullable<z.ZodString>;
249
+ }, z.core.$strip>;
250
+ readonly requiresAuth: true;
251
+ readonly requiresAdmin: true;
252
+ };
253
+ export declare const UpdateAdminPromoCodeEndpoint: {
254
+ readonly method: "PATCH";
255
+ readonly path: "/api/admin/promo-codes/:id";
256
+ readonly params: z.ZodObject<{
257
+ id: z.ZodCoercedNumber<unknown>;
258
+ }, z.core.$strip>;
259
+ readonly request: z.ZodObject<{
260
+ value: z.ZodOptional<z.ZodString>;
261
+ type: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
262
+ USER: "USER";
263
+ AD: "AD";
264
+ SYSTEM: "SYSTEM";
265
+ }>>>;
266
+ status: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
267
+ ACTIVE: "ACTIVE";
268
+ EXPIRED: "EXPIRED";
269
+ INACTIVE: "INACTIVE";
270
+ LIMITED: "LIMITED";
271
+ DELETED: "DELETED";
272
+ }>>>;
273
+ discountType: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
274
+ PERCENT: "PERCENT";
275
+ FIXED_USD: "FIXED_USD";
276
+ }>>>;
277
+ discountValue: z.ZodOptional<z.ZodString>;
278
+ budgetUsd: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
279
+ activationLimit: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodNumber>>>;
280
+ activationPerUserLimit: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodNumber>>>;
281
+ startedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
282
+ expiredAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
283
+ }, z.core.$strip>;
284
+ readonly response: z.ZodObject<{
285
+ id: z.ZodNumber;
286
+ value: z.ZodString;
287
+ type: z.ZodEnum<{
288
+ USER: "USER";
289
+ AD: "AD";
290
+ SYSTEM: "SYSTEM";
291
+ }>;
292
+ status: z.ZodEnum<{
293
+ ACTIVE: "ACTIVE";
294
+ EXPIRED: "EXPIRED";
295
+ INACTIVE: "INACTIVE";
296
+ LIMITED: "LIMITED";
297
+ DELETED: "DELETED";
298
+ }>;
299
+ discountType: z.ZodEnum<{
300
+ PERCENT: "PERCENT";
301
+ FIXED_USD: "FIXED_USD";
302
+ }>;
303
+ discountValue: z.ZodString;
304
+ budgetUsd: z.ZodNullable<z.ZodString>;
305
+ spentUsd: z.ZodString;
306
+ activationLimit: z.ZodNullable<z.ZodNumber>;
307
+ activationPerUserLimit: z.ZodNullable<z.ZodNumber>;
308
+ startedAt: z.ZodNullable<z.ZodString>;
309
+ expiredAt: z.ZodNullable<z.ZodString>;
310
+ }, z.core.$strip>;
311
+ readonly requiresAuth: true;
312
+ readonly requiresAdmin: true;
313
+ };
74
314
  export declare const PromoCodeEndpoints: {
75
315
  readonly validate: {
76
316
  readonly method: "GET";
@@ -88,5 +328,193 @@ export declare const PromoCodeEndpoints: {
88
328
  reason: z.ZodString;
89
329
  }, z.core.$strip>], "ok">;
90
330
  };
331
+ readonly adminList: {
332
+ readonly method: "GET";
333
+ readonly path: "/api/admin/promo-codes";
334
+ readonly response: z.ZodArray<z.ZodObject<{
335
+ id: z.ZodNumber;
336
+ value: z.ZodString;
337
+ type: z.ZodEnum<{
338
+ USER: "USER";
339
+ AD: "AD";
340
+ SYSTEM: "SYSTEM";
341
+ }>;
342
+ status: z.ZodEnum<{
343
+ ACTIVE: "ACTIVE";
344
+ EXPIRED: "EXPIRED";
345
+ INACTIVE: "INACTIVE";
346
+ LIMITED: "LIMITED";
347
+ DELETED: "DELETED";
348
+ }>;
349
+ discountType: z.ZodEnum<{
350
+ PERCENT: "PERCENT";
351
+ FIXED_USD: "FIXED_USD";
352
+ }>;
353
+ discountValue: z.ZodString;
354
+ budgetUsd: z.ZodNullable<z.ZodString>;
355
+ spentUsd: z.ZodString;
356
+ activationLimit: z.ZodNullable<z.ZodNumber>;
357
+ activationPerUserLimit: z.ZodNullable<z.ZodNumber>;
358
+ startedAt: z.ZodNullable<z.ZodString>;
359
+ expiredAt: z.ZodNullable<z.ZodString>;
360
+ }, z.core.$strip>>;
361
+ readonly requiresAuth: true;
362
+ readonly requiresAdmin: true;
363
+ };
364
+ readonly adminGetById: {
365
+ readonly method: "GET";
366
+ readonly path: "/api/admin/promo-codes/:id";
367
+ readonly params: z.ZodObject<{
368
+ id: z.ZodCoercedNumber<unknown>;
369
+ }, z.core.$strip>;
370
+ readonly response: z.ZodObject<{
371
+ id: z.ZodNumber;
372
+ value: z.ZodString;
373
+ type: z.ZodEnum<{
374
+ USER: "USER";
375
+ AD: "AD";
376
+ SYSTEM: "SYSTEM";
377
+ }>;
378
+ status: z.ZodEnum<{
379
+ ACTIVE: "ACTIVE";
380
+ EXPIRED: "EXPIRED";
381
+ INACTIVE: "INACTIVE";
382
+ LIMITED: "LIMITED";
383
+ DELETED: "DELETED";
384
+ }>;
385
+ discountType: z.ZodEnum<{
386
+ PERCENT: "PERCENT";
387
+ FIXED_USD: "FIXED_USD";
388
+ }>;
389
+ discountValue: z.ZodString;
390
+ budgetUsd: z.ZodNullable<z.ZodString>;
391
+ spentUsd: z.ZodString;
392
+ activationLimit: z.ZodNullable<z.ZodNumber>;
393
+ activationPerUserLimit: z.ZodNullable<z.ZodNumber>;
394
+ startedAt: z.ZodNullable<z.ZodString>;
395
+ expiredAt: z.ZodNullable<z.ZodString>;
396
+ }, z.core.$strip>;
397
+ readonly requiresAuth: true;
398
+ readonly requiresAdmin: true;
399
+ };
400
+ readonly adminCreate: {
401
+ readonly method: "POST";
402
+ readonly path: "/api/admin/promo-codes";
403
+ readonly request: z.ZodObject<{
404
+ value: z.ZodString;
405
+ type: z.ZodDefault<z.ZodEnum<{
406
+ USER: "USER";
407
+ AD: "AD";
408
+ SYSTEM: "SYSTEM";
409
+ }>>;
410
+ status: z.ZodDefault<z.ZodEnum<{
411
+ ACTIVE: "ACTIVE";
412
+ EXPIRED: "EXPIRED";
413
+ INACTIVE: "INACTIVE";
414
+ LIMITED: "LIMITED";
415
+ DELETED: "DELETED";
416
+ }>>;
417
+ discountType: z.ZodDefault<z.ZodEnum<{
418
+ PERCENT: "PERCENT";
419
+ FIXED_USD: "FIXED_USD";
420
+ }>>;
421
+ discountValue: z.ZodString;
422
+ budgetUsd: z.ZodOptional<z.ZodNullable<z.ZodString>>;
423
+ activationLimit: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
424
+ activationPerUserLimit: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
425
+ startedAt: z.ZodNullable<z.ZodString>;
426
+ expiredAt: z.ZodNullable<z.ZodString>;
427
+ }, z.core.$strip>;
428
+ readonly response: z.ZodObject<{
429
+ id: z.ZodNumber;
430
+ value: z.ZodString;
431
+ type: z.ZodEnum<{
432
+ USER: "USER";
433
+ AD: "AD";
434
+ SYSTEM: "SYSTEM";
435
+ }>;
436
+ status: z.ZodEnum<{
437
+ ACTIVE: "ACTIVE";
438
+ EXPIRED: "EXPIRED";
439
+ INACTIVE: "INACTIVE";
440
+ LIMITED: "LIMITED";
441
+ DELETED: "DELETED";
442
+ }>;
443
+ discountType: z.ZodEnum<{
444
+ PERCENT: "PERCENT";
445
+ FIXED_USD: "FIXED_USD";
446
+ }>;
447
+ discountValue: z.ZodString;
448
+ budgetUsd: z.ZodNullable<z.ZodString>;
449
+ spentUsd: z.ZodString;
450
+ activationLimit: z.ZodNullable<z.ZodNumber>;
451
+ activationPerUserLimit: z.ZodNullable<z.ZodNumber>;
452
+ startedAt: z.ZodNullable<z.ZodString>;
453
+ expiredAt: z.ZodNullable<z.ZodString>;
454
+ }, z.core.$strip>;
455
+ readonly requiresAuth: true;
456
+ readonly requiresAdmin: true;
457
+ };
458
+ readonly adminUpdate: {
459
+ readonly method: "PATCH";
460
+ readonly path: "/api/admin/promo-codes/:id";
461
+ readonly params: z.ZodObject<{
462
+ id: z.ZodCoercedNumber<unknown>;
463
+ }, z.core.$strip>;
464
+ readonly request: z.ZodObject<{
465
+ value: z.ZodOptional<z.ZodString>;
466
+ type: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
467
+ USER: "USER";
468
+ AD: "AD";
469
+ SYSTEM: "SYSTEM";
470
+ }>>>;
471
+ status: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
472
+ ACTIVE: "ACTIVE";
473
+ EXPIRED: "EXPIRED";
474
+ INACTIVE: "INACTIVE";
475
+ LIMITED: "LIMITED";
476
+ DELETED: "DELETED";
477
+ }>>>;
478
+ discountType: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
479
+ PERCENT: "PERCENT";
480
+ FIXED_USD: "FIXED_USD";
481
+ }>>>;
482
+ discountValue: z.ZodOptional<z.ZodString>;
483
+ budgetUsd: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
484
+ activationLimit: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodNumber>>>;
485
+ activationPerUserLimit: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodNumber>>>;
486
+ startedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
487
+ expiredAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
488
+ }, z.core.$strip>;
489
+ readonly response: z.ZodObject<{
490
+ id: z.ZodNumber;
491
+ value: z.ZodString;
492
+ type: z.ZodEnum<{
493
+ USER: "USER";
494
+ AD: "AD";
495
+ SYSTEM: "SYSTEM";
496
+ }>;
497
+ status: z.ZodEnum<{
498
+ ACTIVE: "ACTIVE";
499
+ EXPIRED: "EXPIRED";
500
+ INACTIVE: "INACTIVE";
501
+ LIMITED: "LIMITED";
502
+ DELETED: "DELETED";
503
+ }>;
504
+ discountType: z.ZodEnum<{
505
+ PERCENT: "PERCENT";
506
+ FIXED_USD: "FIXED_USD";
507
+ }>;
508
+ discountValue: z.ZodString;
509
+ budgetUsd: z.ZodNullable<z.ZodString>;
510
+ spentUsd: z.ZodString;
511
+ activationLimit: z.ZodNullable<z.ZodNumber>;
512
+ activationPerUserLimit: z.ZodNullable<z.ZodNumber>;
513
+ startedAt: z.ZodNullable<z.ZodString>;
514
+ expiredAt: z.ZodNullable<z.ZodString>;
515
+ }, z.core.$strip>;
516
+ readonly requiresAuth: true;
517
+ readonly requiresAdmin: true;
518
+ };
91
519
  };
92
520
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domains/promo-codes/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,mBAAmB;;;;EAAmC,CAAC;AACpE,eAAO,MAAM,qBAAqB;;;;;;EAAkE,CAAC;AACrG,eAAO,MAAM,uBAAuB;;;EAAmC,CAAC;AAExE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;iBAahC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,wBAAwB;;;iBAGnC,CAAC;AACH,eAAO,MAAM,2BAA2B;;;;;;;yBAGtC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;CAKG,CAAC;AAEtC,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;CAErB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domains/promo-codes/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,mBAAmB;;;;EAAmC,CAAC;AACpE,eAAO,MAAM,qBAAqB;;;;;;EAAkE,CAAC;AACrG,eAAO,MAAM,uBAAuB;;;EAAmC,CAAC;AAExE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;iBAahC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,wBAAwB;;;iBAGnC,CAAC;AACH,eAAO,MAAM,2BAA2B;;;;;;;yBAGtC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;CAKG,CAAC;AAItC,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;iBAWvC,CAAC;AACH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAElF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;iBAAyC,CAAC;AACnF,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAElF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMH,CAAC;AAEtC,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOD,CAAC;AAEtC,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOJ,CAAC;AAEtC,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQJ,CAAC;AAEtC,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMrB,CAAC"}
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PromoCodeEndpoints = exports.ValidatePromoEndpoint = exports.ValidatePromoResponseSchema = exports.ValidatePromoQuerySchema = exports.PromoCodeRecordSchema = exports.PromoDiscountTypeSchema = exports.PromoCodeStatusSchema = exports.PromoCodeTypeSchema = void 0;
3
+ exports.PromoCodeEndpoints = exports.UpdateAdminPromoCodeEndpoint = exports.CreateAdminPromoCodeEndpoint = exports.GetAdminPromoCodeEndpoint = exports.ListAdminPromoCodesEndpoint = exports.PromoCodeUpdateRequestSchema = exports.PromoCodeCreateRequestSchema = exports.ValidatePromoEndpoint = exports.ValidatePromoResponseSchema = exports.ValidatePromoQuerySchema = exports.PromoCodeRecordSchema = exports.PromoDiscountTypeSchema = exports.PromoCodeStatusSchema = exports.PromoCodeTypeSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const money_1 = require("../../shared/money");
6
+ const common_1 = require("../../shared/common");
6
7
  exports.PromoCodeTypeSchema = zod_1.z.enum(["USER", "AD", "SYSTEM"]);
7
8
  exports.PromoCodeStatusSchema = zod_1.z.enum(["ACTIVE", "INACTIVE", "LIMITED", "EXPIRED", "DELETED"]);
8
9
  exports.PromoDiscountTypeSchema = zod_1.z.enum(["PERCENT", "FIXED_USD"]);
@@ -34,7 +35,57 @@ exports.ValidatePromoEndpoint = {
34
35
  query: exports.ValidatePromoQuerySchema,
35
36
  response: exports.ValidatePromoResponseSchema,
36
37
  };
38
+ const PromoCodeDateSchema = zod_1.z.string().datetime({ offset: true }).nullable();
39
+ exports.PromoCodeCreateRequestSchema = zod_1.z.object({
40
+ value: zod_1.z.string().trim().min(1).max(32),
41
+ type: exports.PromoCodeTypeSchema.default("USER"),
42
+ status: exports.PromoCodeStatusSchema.default("ACTIVE"),
43
+ discountType: exports.PromoDiscountTypeSchema.default("PERCENT"),
44
+ discountValue: money_1.MoneyAmountSchema,
45
+ budgetUsd: money_1.MoneyAmountSchema.nullable().optional(),
46
+ activationLimit: zod_1.z.number().int().positive().nullable().optional(),
47
+ activationPerUserLimit: zod_1.z.number().int().positive().nullable().optional(),
48
+ startedAt: PromoCodeDateSchema,
49
+ expiredAt: PromoCodeDateSchema,
50
+ });
51
+ exports.PromoCodeUpdateRequestSchema = exports.PromoCodeCreateRequestSchema.partial();
52
+ exports.ListAdminPromoCodesEndpoint = {
53
+ method: "GET",
54
+ path: "/api/admin/promo-codes",
55
+ response: zod_1.z.array(exports.PromoCodeRecordSchema),
56
+ requiresAuth: true,
57
+ requiresAdmin: true,
58
+ };
59
+ exports.GetAdminPromoCodeEndpoint = {
60
+ method: "GET",
61
+ path: "/api/admin/promo-codes/:id",
62
+ params: common_1.IdParamSchema,
63
+ response: exports.PromoCodeRecordSchema,
64
+ requiresAuth: true,
65
+ requiresAdmin: true,
66
+ };
67
+ exports.CreateAdminPromoCodeEndpoint = {
68
+ method: "POST",
69
+ path: "/api/admin/promo-codes",
70
+ request: exports.PromoCodeCreateRequestSchema,
71
+ response: exports.PromoCodeRecordSchema,
72
+ requiresAuth: true,
73
+ requiresAdmin: true,
74
+ };
75
+ exports.UpdateAdminPromoCodeEndpoint = {
76
+ method: "PATCH",
77
+ path: "/api/admin/promo-codes/:id",
78
+ params: common_1.IdParamSchema,
79
+ request: exports.PromoCodeUpdateRequestSchema,
80
+ response: exports.PromoCodeRecordSchema,
81
+ requiresAuth: true,
82
+ requiresAdmin: true,
83
+ };
37
84
  exports.PromoCodeEndpoints = {
38
85
  validate: exports.ValidatePromoEndpoint,
86
+ adminList: exports.ListAdminPromoCodesEndpoint,
87
+ adminGetById: exports.GetAdminPromoCodeEndpoint,
88
+ adminCreate: exports.CreateAdminPromoCodeEndpoint,
89
+ adminUpdate: exports.UpdateAdminPromoCodeEndpoint,
39
90
  };
40
91
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domains/promo-codes/index.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,8CAAuD;AAE1C,QAAA,mBAAmB,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;AACvD,QAAA,qBAAqB,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;AACxF,QAAA,uBAAuB,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;AAE3D,QAAA,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7C,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC/B,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;IACjB,IAAI,EAAE,2BAAmB;IACzB,MAAM,EAAE,6BAAqB;IAC7B,YAAY,EAAE,+BAAuB;IACrC,aAAa,EAAE,yBAAiB;IAChC,SAAS,EAAE,yBAAiB,CAAC,QAAQ,EAAE;IACvC,QAAQ,EAAE,yBAAiB;IAC3B,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACvD,sBAAsB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC9D,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAChC,CAAC,CAAC;AAGU,QAAA,wBAAwB,GAAG,OAAC,CAAC,MAAM,CAAC;IAChD,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IAChC,WAAW,EAAE,yBAAiB;CAC9B,CAAC,CAAC;AACU,QAAA,2BAA2B,GAAG,OAAC,CAAC,kBAAkB,CAAC,IAAI,EAAE;IACrE,OAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,OAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,yBAAiB,EAAE,CAAC;IACvG,OAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,OAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,CAAC;CACtD,CAAC,CAAC;AAEU,QAAA,qBAAqB,GAAG;IACpC,MAAM,EAAE,KAAK;IACb,IAAI,EAAE,2BAA2B;IACjC,KAAK,EAAE,gCAAwB;IAC/B,QAAQ,EAAE,mCAA2B;CACD,CAAC;AAEzB,QAAA,kBAAkB,GAAG;IACjC,QAAQ,EAAE,6BAAqB;CACtB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domains/promo-codes/index.ts"],"names":[],"mappings":"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"}
package/build/index.d.ts CHANGED
@@ -2253,6 +2253,194 @@ export declare const AllEndpoints: {
2253
2253
  reason: import("zod").ZodString;
2254
2254
  }, import("zod/v4/core").$strip>], "ok">;
2255
2255
  };
2256
+ readonly adminList: {
2257
+ readonly method: "GET";
2258
+ readonly path: "/api/admin/promo-codes";
2259
+ readonly response: import("zod").ZodArray<import("zod").ZodObject<{
2260
+ id: import("zod").ZodNumber;
2261
+ value: import("zod").ZodString;
2262
+ type: import("zod").ZodEnum<{
2263
+ USER: "USER";
2264
+ AD: "AD";
2265
+ SYSTEM: "SYSTEM";
2266
+ }>;
2267
+ status: import("zod").ZodEnum<{
2268
+ ACTIVE: "ACTIVE";
2269
+ EXPIRED: "EXPIRED";
2270
+ INACTIVE: "INACTIVE";
2271
+ LIMITED: "LIMITED";
2272
+ DELETED: "DELETED";
2273
+ }>;
2274
+ discountType: import("zod").ZodEnum<{
2275
+ PERCENT: "PERCENT";
2276
+ FIXED_USD: "FIXED_USD";
2277
+ }>;
2278
+ discountValue: import("zod").ZodString;
2279
+ budgetUsd: import("zod").ZodNullable<import("zod").ZodString>;
2280
+ spentUsd: import("zod").ZodString;
2281
+ activationLimit: import("zod").ZodNullable<import("zod").ZodNumber>;
2282
+ activationPerUserLimit: import("zod").ZodNullable<import("zod").ZodNumber>;
2283
+ startedAt: import("zod").ZodNullable<import("zod").ZodString>;
2284
+ expiredAt: import("zod").ZodNullable<import("zod").ZodString>;
2285
+ }, import("zod/v4/core").$strip>>;
2286
+ readonly requiresAuth: true;
2287
+ readonly requiresAdmin: true;
2288
+ };
2289
+ readonly adminGetById: {
2290
+ readonly method: "GET";
2291
+ readonly path: "/api/admin/promo-codes/:id";
2292
+ readonly params: import("zod").ZodObject<{
2293
+ id: import("zod").ZodCoercedNumber<unknown>;
2294
+ }, import("zod/v4/core").$strip>;
2295
+ readonly response: import("zod").ZodObject<{
2296
+ id: import("zod").ZodNumber;
2297
+ value: import("zod").ZodString;
2298
+ type: import("zod").ZodEnum<{
2299
+ USER: "USER";
2300
+ AD: "AD";
2301
+ SYSTEM: "SYSTEM";
2302
+ }>;
2303
+ status: import("zod").ZodEnum<{
2304
+ ACTIVE: "ACTIVE";
2305
+ EXPIRED: "EXPIRED";
2306
+ INACTIVE: "INACTIVE";
2307
+ LIMITED: "LIMITED";
2308
+ DELETED: "DELETED";
2309
+ }>;
2310
+ discountType: import("zod").ZodEnum<{
2311
+ PERCENT: "PERCENT";
2312
+ FIXED_USD: "FIXED_USD";
2313
+ }>;
2314
+ discountValue: import("zod").ZodString;
2315
+ budgetUsd: import("zod").ZodNullable<import("zod").ZodString>;
2316
+ spentUsd: import("zod").ZodString;
2317
+ activationLimit: import("zod").ZodNullable<import("zod").ZodNumber>;
2318
+ activationPerUserLimit: import("zod").ZodNullable<import("zod").ZodNumber>;
2319
+ startedAt: import("zod").ZodNullable<import("zod").ZodString>;
2320
+ expiredAt: import("zod").ZodNullable<import("zod").ZodString>;
2321
+ }, import("zod/v4/core").$strip>;
2322
+ readonly requiresAuth: true;
2323
+ readonly requiresAdmin: true;
2324
+ };
2325
+ readonly adminCreate: {
2326
+ readonly method: "POST";
2327
+ readonly path: "/api/admin/promo-codes";
2328
+ readonly request: import("zod").ZodObject<{
2329
+ value: import("zod").ZodString;
2330
+ type: import("zod").ZodDefault<import("zod").ZodEnum<{
2331
+ USER: "USER";
2332
+ AD: "AD";
2333
+ SYSTEM: "SYSTEM";
2334
+ }>>;
2335
+ status: import("zod").ZodDefault<import("zod").ZodEnum<{
2336
+ ACTIVE: "ACTIVE";
2337
+ EXPIRED: "EXPIRED";
2338
+ INACTIVE: "INACTIVE";
2339
+ LIMITED: "LIMITED";
2340
+ DELETED: "DELETED";
2341
+ }>>;
2342
+ discountType: import("zod").ZodDefault<import("zod").ZodEnum<{
2343
+ PERCENT: "PERCENT";
2344
+ FIXED_USD: "FIXED_USD";
2345
+ }>>;
2346
+ discountValue: import("zod").ZodString;
2347
+ budgetUsd: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
2348
+ activationLimit: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodNumber>>;
2349
+ activationPerUserLimit: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodNumber>>;
2350
+ startedAt: import("zod").ZodNullable<import("zod").ZodString>;
2351
+ expiredAt: import("zod").ZodNullable<import("zod").ZodString>;
2352
+ }, import("zod/v4/core").$strip>;
2353
+ readonly response: import("zod").ZodObject<{
2354
+ id: import("zod").ZodNumber;
2355
+ value: import("zod").ZodString;
2356
+ type: import("zod").ZodEnum<{
2357
+ USER: "USER";
2358
+ AD: "AD";
2359
+ SYSTEM: "SYSTEM";
2360
+ }>;
2361
+ status: import("zod").ZodEnum<{
2362
+ ACTIVE: "ACTIVE";
2363
+ EXPIRED: "EXPIRED";
2364
+ INACTIVE: "INACTIVE";
2365
+ LIMITED: "LIMITED";
2366
+ DELETED: "DELETED";
2367
+ }>;
2368
+ discountType: import("zod").ZodEnum<{
2369
+ PERCENT: "PERCENT";
2370
+ FIXED_USD: "FIXED_USD";
2371
+ }>;
2372
+ discountValue: import("zod").ZodString;
2373
+ budgetUsd: import("zod").ZodNullable<import("zod").ZodString>;
2374
+ spentUsd: import("zod").ZodString;
2375
+ activationLimit: import("zod").ZodNullable<import("zod").ZodNumber>;
2376
+ activationPerUserLimit: import("zod").ZodNullable<import("zod").ZodNumber>;
2377
+ startedAt: import("zod").ZodNullable<import("zod").ZodString>;
2378
+ expiredAt: import("zod").ZodNullable<import("zod").ZodString>;
2379
+ }, import("zod/v4/core").$strip>;
2380
+ readonly requiresAuth: true;
2381
+ readonly requiresAdmin: true;
2382
+ };
2383
+ readonly adminUpdate: {
2384
+ readonly method: "PATCH";
2385
+ readonly path: "/api/admin/promo-codes/:id";
2386
+ readonly params: import("zod").ZodObject<{
2387
+ id: import("zod").ZodCoercedNumber<unknown>;
2388
+ }, import("zod/v4/core").$strip>;
2389
+ readonly request: import("zod").ZodObject<{
2390
+ value: import("zod").ZodOptional<import("zod").ZodString>;
2391
+ type: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodEnum<{
2392
+ USER: "USER";
2393
+ AD: "AD";
2394
+ SYSTEM: "SYSTEM";
2395
+ }>>>;
2396
+ status: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodEnum<{
2397
+ ACTIVE: "ACTIVE";
2398
+ EXPIRED: "EXPIRED";
2399
+ INACTIVE: "INACTIVE";
2400
+ LIMITED: "LIMITED";
2401
+ DELETED: "DELETED";
2402
+ }>>>;
2403
+ discountType: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodEnum<{
2404
+ PERCENT: "PERCENT";
2405
+ FIXED_USD: "FIXED_USD";
2406
+ }>>>;
2407
+ discountValue: import("zod").ZodOptional<import("zod").ZodString>;
2408
+ budgetUsd: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>>;
2409
+ activationLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodNumber>>>;
2410
+ activationPerUserLimit: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodNumber>>>;
2411
+ startedAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
2412
+ expiredAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
2413
+ }, import("zod/v4/core").$strip>;
2414
+ readonly response: import("zod").ZodObject<{
2415
+ id: import("zod").ZodNumber;
2416
+ value: import("zod").ZodString;
2417
+ type: import("zod").ZodEnum<{
2418
+ USER: "USER";
2419
+ AD: "AD";
2420
+ SYSTEM: "SYSTEM";
2421
+ }>;
2422
+ status: import("zod").ZodEnum<{
2423
+ ACTIVE: "ACTIVE";
2424
+ EXPIRED: "EXPIRED";
2425
+ INACTIVE: "INACTIVE";
2426
+ LIMITED: "LIMITED";
2427
+ DELETED: "DELETED";
2428
+ }>;
2429
+ discountType: import("zod").ZodEnum<{
2430
+ PERCENT: "PERCENT";
2431
+ FIXED_USD: "FIXED_USD";
2432
+ }>;
2433
+ discountValue: import("zod").ZodString;
2434
+ budgetUsd: import("zod").ZodNullable<import("zod").ZodString>;
2435
+ spentUsd: import("zod").ZodString;
2436
+ activationLimit: import("zod").ZodNullable<import("zod").ZodNumber>;
2437
+ activationPerUserLimit: import("zod").ZodNullable<import("zod").ZodNumber>;
2438
+ startedAt: import("zod").ZodNullable<import("zod").ZodString>;
2439
+ expiredAt: import("zod").ZodNullable<import("zod").ZodString>;
2440
+ }, import("zod/v4/core").$strip>;
2441
+ readonly requiresAuth: true;
2442
+ readonly requiresAdmin: true;
2443
+ };
2256
2444
  };
2257
2445
  readonly stats: {
2258
2446
  readonly overview: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AAepC,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAaf,CAAC;AACX,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC;AAE/C,MAAM,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC;AAC3C,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,SAAS,IAAI,MAAM,YAAY,CAAC,CAAC,CAAC,CAAC;AACrE,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,SAAS,WAAW,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AAepC,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAaf,CAAC;AACX,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC;AAE/C,MAAM,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC;AAC3C,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,SAAS,IAAI,MAAM,YAAY,CAAC,CAAC,CAAC,CAAC;AACrE,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,SAAS,WAAW,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gigapay-dev/contracts",
3
- "version": "3.14.3",
3
+ "version": "3.15.1",
4
4
  "description": "API contracts for GigaPay v3 platform — Zod schemas, endpoint definitions, typed client",
5
5
  "main": "./build/index.js",
6
6
  "types": "./build/index.d.ts",