@voyantjs/plugin-netopia 0.24.1 → 0.24.3

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,518 @@
1
+ import { z } from "zod";
2
+ import type { NetopiaFetch } from "./types.js";
3
+ export declare const netopiaBillingAddressSchema: z.ZodObject<{
4
+ email: z.ZodString;
5
+ phone: z.ZodString;
6
+ firstName: z.ZodString;
7
+ lastName: z.ZodString;
8
+ city: z.ZodString;
9
+ country: z.ZodNumber;
10
+ state: z.ZodString;
11
+ postalCode: z.ZodString;
12
+ details: z.ZodString;
13
+ }, z.core.$strip>;
14
+ export declare const netopiaProductLineSchema: z.ZodObject<{
15
+ name: z.ZodOptional<z.ZodString>;
16
+ code: z.ZodOptional<z.ZodString>;
17
+ category: z.ZodOptional<z.ZodString>;
18
+ price: z.ZodOptional<z.ZodNumber>;
19
+ vat: z.ZodOptional<z.ZodNumber>;
20
+ }, z.core.$strip>;
21
+ export declare const netopiaInstallmentsSchema: z.ZodObject<{
22
+ selected: z.ZodNumber;
23
+ available: z.ZodArray<z.ZodNumber>;
24
+ }, z.core.$strip>;
25
+ export declare const netopiaPaymentOptionsSchema: z.ZodObject<{
26
+ installments: z.ZodNumber;
27
+ bonus: z.ZodOptional<z.ZodNumber>;
28
+ }, z.core.$strip>;
29
+ export declare const netopiaPaymentInstrumentSchema: z.ZodObject<{
30
+ type: z.ZodString;
31
+ account: z.ZodString;
32
+ expMonth: z.ZodNumber;
33
+ expYear: z.ZodNumber;
34
+ secretCode: z.ZodString;
35
+ token: z.ZodOptional<z.ZodString>;
36
+ }, z.core.$strip>;
37
+ export declare const netopiaBrowserDataSchema: z.ZodRecord<z.ZodString, z.ZodOptional<z.ZodString>>;
38
+ export declare const netopiaRuntimeOptionsSchema: z.ZodObject<{
39
+ apiUrl: z.ZodOptional<z.ZodString>;
40
+ apiKey: z.ZodOptional<z.ZodString>;
41
+ posSignature: z.ZodOptional<z.ZodString>;
42
+ notifyUrl: z.ZodOptional<z.ZodString>;
43
+ redirectUrl: z.ZodOptional<z.ZodString>;
44
+ emailTemplate: z.ZodOptional<z.ZodString>;
45
+ language: z.ZodOptional<z.ZodString>;
46
+ successStatuses: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
47
+ processingStatuses: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
48
+ fetch: z.ZodOptional<z.ZodCustom<NetopiaFetch | undefined, NetopiaFetch | undefined>>;
49
+ resolveNotificationProviders: z.ZodOptional<z.ZodCustom<((bindings: Record<string, unknown>) => ReadonlyArray<import("@voyantjs/notifications").NotificationProvider>) | undefined, ((bindings: Record<string, unknown>) => ReadonlyArray<import("@voyantjs/notifications").NotificationProvider>) | undefined>>;
50
+ }, z.core.$strip>;
51
+ export declare const resolvedNetopiaRuntimeOptionsSchema: z.ZodObject<{
52
+ apiUrl: z.ZodString;
53
+ apiKey: z.ZodString;
54
+ posSignature: z.ZodString;
55
+ notifyUrl: z.ZodString;
56
+ redirectUrl: z.ZodString;
57
+ emailTemplate: z.ZodDefault<z.ZodString>;
58
+ language: z.ZodDefault<z.ZodString>;
59
+ successStatuses: z.ZodDefault<z.ZodArray<z.ZodNumber>>;
60
+ processingStatuses: z.ZodDefault<z.ZodArray<z.ZodNumber>>;
61
+ fetch: z.ZodOptional<z.ZodCustom<NetopiaFetch | undefined, NetopiaFetch | undefined>>;
62
+ }, z.core.$strip>;
63
+ export declare const netopiaStartPaymentSessionSchema: z.ZodObject<{
64
+ description: z.ZodOptional<z.ZodString>;
65
+ notifyUrl: z.ZodOptional<z.ZodString>;
66
+ returnUrl: z.ZodOptional<z.ZodString>;
67
+ cancelUrl: z.ZodOptional<z.ZodString>;
68
+ callbackUrl: z.ZodOptional<z.ZodString>;
69
+ emailTemplate: z.ZodOptional<z.ZodString>;
70
+ language: z.ZodOptional<z.ZodString>;
71
+ options: z.ZodOptional<z.ZodObject<{
72
+ installments: z.ZodNumber;
73
+ bonus: z.ZodOptional<z.ZodNumber>;
74
+ }, z.core.$strip>>;
75
+ instrument: z.ZodOptional<z.ZodObject<{
76
+ type: z.ZodString;
77
+ account: z.ZodString;
78
+ expMonth: z.ZodNumber;
79
+ expYear: z.ZodNumber;
80
+ secretCode: z.ZodString;
81
+ token: z.ZodOptional<z.ZodString>;
82
+ }, z.core.$strip>>;
83
+ browserData: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodOptional<z.ZodString>>>;
84
+ billing: z.ZodObject<{
85
+ email: z.ZodString;
86
+ phone: z.ZodString;
87
+ firstName: z.ZodString;
88
+ lastName: z.ZodString;
89
+ city: z.ZodString;
90
+ country: z.ZodNumber;
91
+ state: z.ZodString;
92
+ postalCode: z.ZodString;
93
+ details: z.ZodString;
94
+ }, z.core.$strip>;
95
+ shipping: z.ZodOptional<z.ZodObject<{
96
+ email: z.ZodString;
97
+ phone: z.ZodString;
98
+ firstName: z.ZodString;
99
+ lastName: z.ZodString;
100
+ city: z.ZodString;
101
+ country: z.ZodNumber;
102
+ state: z.ZodString;
103
+ postalCode: z.ZodString;
104
+ details: z.ZodString;
105
+ }, z.core.$strip>>;
106
+ products: z.ZodOptional<z.ZodArray<z.ZodObject<{
107
+ name: z.ZodOptional<z.ZodString>;
108
+ code: z.ZodOptional<z.ZodString>;
109
+ category: z.ZodOptional<z.ZodString>;
110
+ price: z.ZodOptional<z.ZodNumber>;
111
+ vat: z.ZodOptional<z.ZodNumber>;
112
+ }, z.core.$strip>>>;
113
+ installments: z.ZodOptional<z.ZodObject<{
114
+ selected: z.ZodNumber;
115
+ available: z.ZodArray<z.ZodNumber>;
116
+ }, z.core.$strip>>;
117
+ orderData: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
118
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
119
+ notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
120
+ }, z.core.$strip>;
121
+ export declare const netopiaWebhookPayloadSchema: z.ZodObject<{
122
+ order: z.ZodObject<{
123
+ orderID: z.ZodString;
124
+ }, z.core.$strip>;
125
+ payment: z.ZodObject<{
126
+ amount: z.ZodNumber;
127
+ currency: z.ZodString;
128
+ ntpID: z.ZodString;
129
+ status: z.ZodNumber;
130
+ code: z.ZodOptional<z.ZodString>;
131
+ message: z.ZodOptional<z.ZodString>;
132
+ data: z.ZodOptional<z.ZodObject<{
133
+ AuthCode: z.ZodOptional<z.ZodString>;
134
+ RRN: z.ZodOptional<z.ZodString>;
135
+ }, z.core.$catchall<z.ZodUnknown>>>;
136
+ instrument: z.ZodOptional<z.ZodObject<{
137
+ country: z.ZodOptional<z.ZodNumber>;
138
+ panMasked: z.ZodOptional<z.ZodString>;
139
+ }, z.core.$catchall<z.ZodUnknown>>>;
140
+ }, z.core.$catchall<z.ZodUnknown>>;
141
+ }, z.core.$strip>;
142
+ export declare const netopiaCollectBookingScheduleSchema: z.ZodObject<{
143
+ paymentSession: z.ZodOptional<z.ZodObject<{
144
+ provider: z.ZodNullable<z.ZodOptional<z.ZodString>>;
145
+ paymentMethod: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
146
+ other: "other";
147
+ voucher: "voucher";
148
+ wallet: "wallet";
149
+ bank_transfer: "bank_transfer";
150
+ credit_card: "credit_card";
151
+ debit_card: "debit_card";
152
+ cash: "cash";
153
+ cheque: "cheque";
154
+ direct_bill: "direct_bill";
155
+ }>>>;
156
+ payerPersonId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
157
+ payerOrganizationId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
158
+ payerEmail: z.ZodNullable<z.ZodOptional<z.ZodString>>;
159
+ payerName: z.ZodNullable<z.ZodOptional<z.ZodString>>;
160
+ externalReference: z.ZodNullable<z.ZodOptional<z.ZodString>>;
161
+ idempotencyKey: z.ZodNullable<z.ZodOptional<z.ZodString>>;
162
+ clientReference: z.ZodNullable<z.ZodOptional<z.ZodString>>;
163
+ returnUrl: z.ZodNullable<z.ZodOptional<z.ZodString>>;
164
+ cancelUrl: z.ZodNullable<z.ZodOptional<z.ZodString>>;
165
+ callbackUrl: z.ZodNullable<z.ZodOptional<z.ZodString>>;
166
+ expiresAt: z.ZodNullable<z.ZodOptional<z.ZodString>>;
167
+ notes: z.ZodNullable<z.ZodOptional<z.ZodString>>;
168
+ providerPayload: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
169
+ metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
170
+ }, z.core.$strip>>;
171
+ netopia: z.ZodObject<{
172
+ description: z.ZodOptional<z.ZodString>;
173
+ notifyUrl: z.ZodOptional<z.ZodString>;
174
+ returnUrl: z.ZodOptional<z.ZodString>;
175
+ cancelUrl: z.ZodOptional<z.ZodString>;
176
+ callbackUrl: z.ZodOptional<z.ZodString>;
177
+ emailTemplate: z.ZodOptional<z.ZodString>;
178
+ language: z.ZodOptional<z.ZodString>;
179
+ options: z.ZodOptional<z.ZodObject<{
180
+ installments: z.ZodNumber;
181
+ bonus: z.ZodOptional<z.ZodNumber>;
182
+ }, z.core.$strip>>;
183
+ instrument: z.ZodOptional<z.ZodObject<{
184
+ type: z.ZodString;
185
+ account: z.ZodString;
186
+ expMonth: z.ZodNumber;
187
+ expYear: z.ZodNumber;
188
+ secretCode: z.ZodString;
189
+ token: z.ZodOptional<z.ZodString>;
190
+ }, z.core.$strip>>;
191
+ browserData: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodOptional<z.ZodString>>>;
192
+ billing: z.ZodObject<{
193
+ email: z.ZodString;
194
+ phone: z.ZodString;
195
+ firstName: z.ZodString;
196
+ lastName: z.ZodString;
197
+ city: z.ZodString;
198
+ country: z.ZodNumber;
199
+ state: z.ZodString;
200
+ postalCode: z.ZodString;
201
+ details: z.ZodString;
202
+ }, z.core.$strip>;
203
+ shipping: z.ZodOptional<z.ZodObject<{
204
+ email: z.ZodString;
205
+ phone: z.ZodString;
206
+ firstName: z.ZodString;
207
+ lastName: z.ZodString;
208
+ city: z.ZodString;
209
+ country: z.ZodNumber;
210
+ state: z.ZodString;
211
+ postalCode: z.ZodString;
212
+ details: z.ZodString;
213
+ }, z.core.$strip>>;
214
+ products: z.ZodOptional<z.ZodArray<z.ZodObject<{
215
+ name: z.ZodOptional<z.ZodString>;
216
+ code: z.ZodOptional<z.ZodString>;
217
+ category: z.ZodOptional<z.ZodString>;
218
+ price: z.ZodOptional<z.ZodNumber>;
219
+ vat: z.ZodOptional<z.ZodNumber>;
220
+ }, z.core.$strip>>>;
221
+ installments: z.ZodOptional<z.ZodObject<{
222
+ selected: z.ZodNumber;
223
+ available: z.ZodArray<z.ZodNumber>;
224
+ }, z.core.$strip>>;
225
+ orderData: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
226
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
227
+ notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
228
+ }, z.core.$strip>;
229
+ notification: z.ZodOptional<z.ZodObject<{
230
+ templateId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
231
+ templateSlug: z.ZodNullable<z.ZodOptional<z.ZodString>>;
232
+ channel: z.ZodDefault<z.ZodEnum<{
233
+ email: "email";
234
+ sms: "sms";
235
+ }>>;
236
+ provider: z.ZodNullable<z.ZodOptional<z.ZodString>>;
237
+ to: z.ZodNullable<z.ZodOptional<z.ZodString>>;
238
+ from: z.ZodNullable<z.ZodOptional<z.ZodString>>;
239
+ subject: z.ZodNullable<z.ZodOptional<z.ZodString>>;
240
+ html: z.ZodNullable<z.ZodOptional<z.ZodString>>;
241
+ text: z.ZodNullable<z.ZodOptional<z.ZodString>>;
242
+ attachments: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodObject<{
243
+ filename: z.ZodString;
244
+ contentBase64: z.ZodNullable<z.ZodOptional<z.ZodString>>;
245
+ path: z.ZodNullable<z.ZodOptional<z.ZodString>>;
246
+ contentType: z.ZodNullable<z.ZodOptional<z.ZodString>>;
247
+ disposition: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
248
+ attachment: "attachment";
249
+ inline: "inline";
250
+ }>>>;
251
+ contentId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
252
+ }, z.core.$strip>>>>;
253
+ data: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
254
+ metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
255
+ scheduledFor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
256
+ }, z.core.$strip>>;
257
+ }, z.core.$strip>;
258
+ export declare const netopiaCollectBookingGuaranteeSchema: z.ZodObject<{
259
+ paymentSession: z.ZodOptional<z.ZodObject<{
260
+ provider: z.ZodNullable<z.ZodOptional<z.ZodString>>;
261
+ paymentMethod: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
262
+ other: "other";
263
+ voucher: "voucher";
264
+ wallet: "wallet";
265
+ bank_transfer: "bank_transfer";
266
+ credit_card: "credit_card";
267
+ debit_card: "debit_card";
268
+ cash: "cash";
269
+ cheque: "cheque";
270
+ direct_bill: "direct_bill";
271
+ }>>>;
272
+ payerPersonId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
273
+ payerOrganizationId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
274
+ payerEmail: z.ZodNullable<z.ZodOptional<z.ZodString>>;
275
+ payerName: z.ZodNullable<z.ZodOptional<z.ZodString>>;
276
+ externalReference: z.ZodNullable<z.ZodOptional<z.ZodString>>;
277
+ idempotencyKey: z.ZodNullable<z.ZodOptional<z.ZodString>>;
278
+ clientReference: z.ZodNullable<z.ZodOptional<z.ZodString>>;
279
+ returnUrl: z.ZodNullable<z.ZodOptional<z.ZodString>>;
280
+ cancelUrl: z.ZodNullable<z.ZodOptional<z.ZodString>>;
281
+ callbackUrl: z.ZodNullable<z.ZodOptional<z.ZodString>>;
282
+ expiresAt: z.ZodNullable<z.ZodOptional<z.ZodString>>;
283
+ notes: z.ZodNullable<z.ZodOptional<z.ZodString>>;
284
+ providerPayload: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
285
+ metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
286
+ }, z.core.$strip>>;
287
+ netopia: z.ZodObject<{
288
+ description: z.ZodOptional<z.ZodString>;
289
+ notifyUrl: z.ZodOptional<z.ZodString>;
290
+ returnUrl: z.ZodOptional<z.ZodString>;
291
+ cancelUrl: z.ZodOptional<z.ZodString>;
292
+ callbackUrl: z.ZodOptional<z.ZodString>;
293
+ emailTemplate: z.ZodOptional<z.ZodString>;
294
+ language: z.ZodOptional<z.ZodString>;
295
+ options: z.ZodOptional<z.ZodObject<{
296
+ installments: z.ZodNumber;
297
+ bonus: z.ZodOptional<z.ZodNumber>;
298
+ }, z.core.$strip>>;
299
+ instrument: z.ZodOptional<z.ZodObject<{
300
+ type: z.ZodString;
301
+ account: z.ZodString;
302
+ expMonth: z.ZodNumber;
303
+ expYear: z.ZodNumber;
304
+ secretCode: z.ZodString;
305
+ token: z.ZodOptional<z.ZodString>;
306
+ }, z.core.$strip>>;
307
+ browserData: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodOptional<z.ZodString>>>;
308
+ billing: z.ZodObject<{
309
+ email: z.ZodString;
310
+ phone: z.ZodString;
311
+ firstName: z.ZodString;
312
+ lastName: z.ZodString;
313
+ city: z.ZodString;
314
+ country: z.ZodNumber;
315
+ state: z.ZodString;
316
+ postalCode: z.ZodString;
317
+ details: z.ZodString;
318
+ }, z.core.$strip>;
319
+ shipping: z.ZodOptional<z.ZodObject<{
320
+ email: z.ZodString;
321
+ phone: z.ZodString;
322
+ firstName: z.ZodString;
323
+ lastName: z.ZodString;
324
+ city: z.ZodString;
325
+ country: z.ZodNumber;
326
+ state: z.ZodString;
327
+ postalCode: z.ZodString;
328
+ details: z.ZodString;
329
+ }, z.core.$strip>>;
330
+ products: z.ZodOptional<z.ZodArray<z.ZodObject<{
331
+ name: z.ZodOptional<z.ZodString>;
332
+ code: z.ZodOptional<z.ZodString>;
333
+ category: z.ZodOptional<z.ZodString>;
334
+ price: z.ZodOptional<z.ZodNumber>;
335
+ vat: z.ZodOptional<z.ZodNumber>;
336
+ }, z.core.$strip>>>;
337
+ installments: z.ZodOptional<z.ZodObject<{
338
+ selected: z.ZodNumber;
339
+ available: z.ZodArray<z.ZodNumber>;
340
+ }, z.core.$strip>>;
341
+ orderData: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
342
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
343
+ notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
344
+ }, z.core.$strip>;
345
+ notification: z.ZodOptional<z.ZodObject<{
346
+ templateId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
347
+ templateSlug: z.ZodNullable<z.ZodOptional<z.ZodString>>;
348
+ channel: z.ZodDefault<z.ZodEnum<{
349
+ email: "email";
350
+ sms: "sms";
351
+ }>>;
352
+ provider: z.ZodNullable<z.ZodOptional<z.ZodString>>;
353
+ to: z.ZodNullable<z.ZodOptional<z.ZodString>>;
354
+ from: z.ZodNullable<z.ZodOptional<z.ZodString>>;
355
+ subject: z.ZodNullable<z.ZodOptional<z.ZodString>>;
356
+ html: z.ZodNullable<z.ZodOptional<z.ZodString>>;
357
+ text: z.ZodNullable<z.ZodOptional<z.ZodString>>;
358
+ attachments: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodObject<{
359
+ filename: z.ZodString;
360
+ contentBase64: z.ZodNullable<z.ZodOptional<z.ZodString>>;
361
+ path: z.ZodNullable<z.ZodOptional<z.ZodString>>;
362
+ contentType: z.ZodNullable<z.ZodOptional<z.ZodString>>;
363
+ disposition: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
364
+ attachment: "attachment";
365
+ inline: "inline";
366
+ }>>>;
367
+ contentId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
368
+ }, z.core.$strip>>>>;
369
+ data: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
370
+ metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
371
+ scheduledFor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
372
+ }, z.core.$strip>>;
373
+ }, z.core.$strip>;
374
+ export declare const netopiaCollectInvoiceSchema: z.ZodObject<{
375
+ paymentSession: z.ZodOptional<z.ZodObject<{
376
+ provider: z.ZodNullable<z.ZodOptional<z.ZodString>>;
377
+ paymentMethod: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
378
+ other: "other";
379
+ voucher: "voucher";
380
+ wallet: "wallet";
381
+ bank_transfer: "bank_transfer";
382
+ credit_card: "credit_card";
383
+ debit_card: "debit_card";
384
+ cash: "cash";
385
+ cheque: "cheque";
386
+ direct_bill: "direct_bill";
387
+ }>>>;
388
+ payerPersonId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
389
+ payerOrganizationId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
390
+ payerEmail: z.ZodNullable<z.ZodOptional<z.ZodString>>;
391
+ payerName: z.ZodNullable<z.ZodOptional<z.ZodString>>;
392
+ externalReference: z.ZodNullable<z.ZodOptional<z.ZodString>>;
393
+ idempotencyKey: z.ZodNullable<z.ZodOptional<z.ZodString>>;
394
+ clientReference: z.ZodNullable<z.ZodOptional<z.ZodString>>;
395
+ returnUrl: z.ZodNullable<z.ZodOptional<z.ZodString>>;
396
+ cancelUrl: z.ZodNullable<z.ZodOptional<z.ZodString>>;
397
+ callbackUrl: z.ZodNullable<z.ZodOptional<z.ZodString>>;
398
+ expiresAt: z.ZodNullable<z.ZodOptional<z.ZodString>>;
399
+ notes: z.ZodNullable<z.ZodOptional<z.ZodString>>;
400
+ providerPayload: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
401
+ metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
402
+ }, z.core.$strip>>;
403
+ netopia: z.ZodObject<{
404
+ description: z.ZodOptional<z.ZodString>;
405
+ notifyUrl: z.ZodOptional<z.ZodString>;
406
+ returnUrl: z.ZodOptional<z.ZodString>;
407
+ cancelUrl: z.ZodOptional<z.ZodString>;
408
+ callbackUrl: z.ZodOptional<z.ZodString>;
409
+ emailTemplate: z.ZodOptional<z.ZodString>;
410
+ language: z.ZodOptional<z.ZodString>;
411
+ options: z.ZodOptional<z.ZodObject<{
412
+ installments: z.ZodNumber;
413
+ bonus: z.ZodOptional<z.ZodNumber>;
414
+ }, z.core.$strip>>;
415
+ instrument: z.ZodOptional<z.ZodObject<{
416
+ type: z.ZodString;
417
+ account: z.ZodString;
418
+ expMonth: z.ZodNumber;
419
+ expYear: z.ZodNumber;
420
+ secretCode: z.ZodString;
421
+ token: z.ZodOptional<z.ZodString>;
422
+ }, z.core.$strip>>;
423
+ browserData: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodOptional<z.ZodString>>>;
424
+ billing: z.ZodObject<{
425
+ email: z.ZodString;
426
+ phone: z.ZodString;
427
+ firstName: z.ZodString;
428
+ lastName: z.ZodString;
429
+ city: z.ZodString;
430
+ country: z.ZodNumber;
431
+ state: z.ZodString;
432
+ postalCode: z.ZodString;
433
+ details: z.ZodString;
434
+ }, z.core.$strip>;
435
+ shipping: z.ZodOptional<z.ZodObject<{
436
+ email: z.ZodString;
437
+ phone: z.ZodString;
438
+ firstName: z.ZodString;
439
+ lastName: z.ZodString;
440
+ city: z.ZodString;
441
+ country: z.ZodNumber;
442
+ state: z.ZodString;
443
+ postalCode: z.ZodString;
444
+ details: z.ZodString;
445
+ }, z.core.$strip>>;
446
+ products: z.ZodOptional<z.ZodArray<z.ZodObject<{
447
+ name: z.ZodOptional<z.ZodString>;
448
+ code: z.ZodOptional<z.ZodString>;
449
+ category: z.ZodOptional<z.ZodString>;
450
+ price: z.ZodOptional<z.ZodNumber>;
451
+ vat: z.ZodOptional<z.ZodNumber>;
452
+ }, z.core.$strip>>>;
453
+ installments: z.ZodOptional<z.ZodObject<{
454
+ selected: z.ZodNumber;
455
+ available: z.ZodArray<z.ZodNumber>;
456
+ }, z.core.$strip>>;
457
+ orderData: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
458
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
459
+ notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
460
+ }, z.core.$strip>;
461
+ paymentSessionNotification: z.ZodOptional<z.ZodObject<{
462
+ templateId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
463
+ templateSlug: z.ZodNullable<z.ZodOptional<z.ZodString>>;
464
+ channel: z.ZodDefault<z.ZodEnum<{
465
+ email: "email";
466
+ sms: "sms";
467
+ }>>;
468
+ provider: z.ZodNullable<z.ZodOptional<z.ZodString>>;
469
+ to: z.ZodNullable<z.ZodOptional<z.ZodString>>;
470
+ from: z.ZodNullable<z.ZodOptional<z.ZodString>>;
471
+ subject: z.ZodNullable<z.ZodOptional<z.ZodString>>;
472
+ html: z.ZodNullable<z.ZodOptional<z.ZodString>>;
473
+ text: z.ZodNullable<z.ZodOptional<z.ZodString>>;
474
+ attachments: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodObject<{
475
+ filename: z.ZodString;
476
+ contentBase64: z.ZodNullable<z.ZodOptional<z.ZodString>>;
477
+ path: z.ZodNullable<z.ZodOptional<z.ZodString>>;
478
+ contentType: z.ZodNullable<z.ZodOptional<z.ZodString>>;
479
+ disposition: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
480
+ attachment: "attachment";
481
+ inline: "inline";
482
+ }>>>;
483
+ contentId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
484
+ }, z.core.$strip>>>>;
485
+ data: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
486
+ metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
487
+ scheduledFor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
488
+ }, z.core.$strip>>;
489
+ invoiceNotification: z.ZodOptional<z.ZodObject<{
490
+ templateId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
491
+ templateSlug: z.ZodNullable<z.ZodOptional<z.ZodString>>;
492
+ channel: z.ZodDefault<z.ZodEnum<{
493
+ email: "email";
494
+ sms: "sms";
495
+ }>>;
496
+ provider: z.ZodNullable<z.ZodOptional<z.ZodString>>;
497
+ to: z.ZodNullable<z.ZodOptional<z.ZodString>>;
498
+ from: z.ZodNullable<z.ZodOptional<z.ZodString>>;
499
+ subject: z.ZodNullable<z.ZodOptional<z.ZodString>>;
500
+ html: z.ZodNullable<z.ZodOptional<z.ZodString>>;
501
+ text: z.ZodNullable<z.ZodOptional<z.ZodString>>;
502
+ attachments: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodObject<{
503
+ filename: z.ZodString;
504
+ contentBase64: z.ZodNullable<z.ZodOptional<z.ZodString>>;
505
+ path: z.ZodNullable<z.ZodOptional<z.ZodString>>;
506
+ contentType: z.ZodNullable<z.ZodOptional<z.ZodString>>;
507
+ disposition: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
508
+ attachment: "attachment";
509
+ inline: "inline";
510
+ }>>>;
511
+ contentId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
512
+ }, z.core.$strip>>>>;
513
+ data: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
514
+ metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
515
+ scheduledFor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
516
+ }, z.core.$strip>>;
517
+ }, z.core.$strip>;
518
+ //# sourceMappingURL=validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,EAAE,YAAY,EAAyB,MAAM,YAAY,CAAA;AAErE,eAAO,MAAM,2BAA2B;;;;;;;;;;iBAUtC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;iBAMnC,CAAA;AAEF,eAAO,MAAM,yBAAyB;;;iBAGpC,CAAA;AAEF,eAAO,MAAM,2BAA2B;;;iBAGtC,CAAA;AAEF,eAAO,MAAM,8BAA8B;;;;;;;iBAOzC,CAAA;AAEF,eAAO,MAAM,wBAAwB,sDAA8C,CAAA;AAkBnF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;iBAYtC,CAAA;AAEF,eAAO,MAAM,mCAAmC;;;;;;;;;;;iBAW9C,CAAA;AAEF,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkB3C,CAAA;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;iBA4BtC,CAAA;AAEF,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAI9C,CAAA;AAEF,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAI/C,CAAA;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAKtC,CAAA"}
@@ -0,0 +1,132 @@
1
+ import { createPaymentSessionFromGuaranteeSchema, createPaymentSessionFromInvoiceSchema, createPaymentSessionFromScheduleSchema, } from "@voyantjs/finance";
2
+ import { sendInvoiceNotificationSchema, sendPaymentSessionNotificationSchema, } from "@voyantjs/notifications";
3
+ import { z } from "zod";
4
+ export const netopiaBillingAddressSchema = z.object({
5
+ email: z.string().email(),
6
+ phone: z.string().min(1),
7
+ firstName: z.string().min(1),
8
+ lastName: z.string().min(1),
9
+ city: z.string().min(1),
10
+ country: z.number().int().positive(),
11
+ state: z.string().min(1),
12
+ postalCode: z.string().min(1),
13
+ details: z.string().min(1),
14
+ });
15
+ export const netopiaProductLineSchema = z.object({
16
+ name: z.string().optional(),
17
+ code: z.string().optional(),
18
+ category: z.string().optional(),
19
+ price: z.number().positive().optional(),
20
+ vat: z.number().min(0).optional(),
21
+ });
22
+ export const netopiaInstallmentsSchema = z.object({
23
+ selected: z.number().int().positive(),
24
+ available: z.array(z.number().int().nonnegative()).min(1),
25
+ });
26
+ export const netopiaPaymentOptionsSchema = z.object({
27
+ installments: z.number().int().positive(),
28
+ bonus: z.number().int().nonnegative().optional(),
29
+ });
30
+ export const netopiaPaymentInstrumentSchema = z.object({
31
+ type: z.string().min(1),
32
+ account: z.string().min(1),
33
+ expMonth: z.number().int().min(1).max(12),
34
+ expYear: z.number().int().min(2000),
35
+ secretCode: z.string().min(1),
36
+ token: z.string().optional(),
37
+ });
38
+ export const netopiaBrowserDataSchema = z.record(z.string(), z.string().optional());
39
+ const optionalRuntimeUrl = z.string().trim().url().optional();
40
+ const optionalRuntimeString = z.string().trim().min(1).optional();
41
+ const optionalIntegerArray = z.array(z.number().int()).min(1).optional();
42
+ const optionalFetch = z.custom((value) => value === undefined || typeof value === "function", "Expected a fetch implementation function");
43
+ const optionalProviderResolver = z.custom((value) => value === undefined || typeof value === "function", "Expected a notification provider resolver function");
44
+ export const netopiaRuntimeOptionsSchema = z.object({
45
+ apiUrl: optionalRuntimeUrl,
46
+ apiKey: optionalRuntimeString,
47
+ posSignature: optionalRuntimeString,
48
+ notifyUrl: optionalRuntimeUrl,
49
+ redirectUrl: optionalRuntimeUrl,
50
+ emailTemplate: optionalRuntimeString,
51
+ language: optionalRuntimeString,
52
+ successStatuses: optionalIntegerArray,
53
+ processingStatuses: optionalIntegerArray,
54
+ fetch: optionalFetch.optional(),
55
+ resolveNotificationProviders: optionalProviderResolver.optional(),
56
+ });
57
+ export const resolvedNetopiaRuntimeOptionsSchema = z.object({
58
+ apiUrl: z.string().trim().url(),
59
+ apiKey: z.string().trim().min(1),
60
+ posSignature: z.string().trim().min(1),
61
+ notifyUrl: z.string().trim().url(),
62
+ redirectUrl: z.string().trim().url(),
63
+ emailTemplate: z.string().trim().min(1).default("confirm"),
64
+ language: z.string().trim().min(1).default("ro"),
65
+ successStatuses: z.array(z.number().int()).min(1).default([3, 5]),
66
+ processingStatuses: z.array(z.number().int()).min(1).default([1, 15]),
67
+ fetch: optionalFetch.optional(),
68
+ });
69
+ export const netopiaStartPaymentSessionSchema = z.object({
70
+ description: z.string().optional(),
71
+ notifyUrl: z.string().url().optional(),
72
+ returnUrl: z.string().url().optional(),
73
+ cancelUrl: z.string().url().optional(),
74
+ callbackUrl: z.string().url().optional(),
75
+ emailTemplate: z.string().optional(),
76
+ language: z.string().optional(),
77
+ options: netopiaPaymentOptionsSchema.optional(),
78
+ instrument: netopiaPaymentInstrumentSchema.optional(),
79
+ browserData: netopiaBrowserDataSchema.optional(),
80
+ billing: netopiaBillingAddressSchema,
81
+ shipping: netopiaBillingAddressSchema.optional(),
82
+ products: z.array(netopiaProductLineSchema).optional(),
83
+ installments: netopiaInstallmentsSchema.optional(),
84
+ orderData: z.record(z.string(), z.string()).optional(),
85
+ metadata: z.record(z.string(), z.unknown()).optional(),
86
+ notes: z.string().nullable().optional(),
87
+ });
88
+ export const netopiaWebhookPayloadSchema = z.object({
89
+ order: z.object({
90
+ orderID: z.string().min(1),
91
+ }),
92
+ payment: z
93
+ .object({
94
+ amount: z.number(),
95
+ currency: z.string().min(3),
96
+ ntpID: z.string().min(1),
97
+ status: z.number().int(),
98
+ code: z.string().optional(),
99
+ message: z.string().optional(),
100
+ data: z
101
+ .object({
102
+ AuthCode: z.string().optional(),
103
+ RRN: z.string().optional(),
104
+ })
105
+ .catchall(z.unknown())
106
+ .optional(),
107
+ instrument: z
108
+ .object({
109
+ country: z.number().int().optional(),
110
+ panMasked: z.string().optional(),
111
+ })
112
+ .catchall(z.unknown())
113
+ .optional(),
114
+ })
115
+ .catchall(z.unknown()),
116
+ });
117
+ export const netopiaCollectBookingScheduleSchema = z.object({
118
+ paymentSession: createPaymentSessionFromScheduleSchema.optional(),
119
+ netopia: netopiaStartPaymentSessionSchema,
120
+ notification: sendPaymentSessionNotificationSchema.optional(),
121
+ });
122
+ export const netopiaCollectBookingGuaranteeSchema = z.object({
123
+ paymentSession: createPaymentSessionFromGuaranteeSchema.optional(),
124
+ netopia: netopiaStartPaymentSessionSchema,
125
+ notification: sendPaymentSessionNotificationSchema.optional(),
126
+ });
127
+ export const netopiaCollectInvoiceSchema = z.object({
128
+ paymentSession: createPaymentSessionFromInvoiceSchema.optional(),
129
+ netopia: netopiaStartPaymentSessionSchema,
130
+ paymentSessionNotification: sendPaymentSessionNotificationSchema.optional(),
131
+ invoiceNotification: sendInvoiceNotificationSchema.optional(),
132
+ });