@pandait.tech/payment-nuvei 0.1.1 → 0.2.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.
@@ -1,4 +1,3 @@
1
- import { NextRequest, NextResponse } from 'next/server';
2
1
  import { Auth } from 'firebase-admin/auth';
3
2
  import { Firestore } from 'firebase-admin/firestore';
4
3
 
@@ -156,31 +155,7 @@ interface ChargeHandlerDeps {
156
155
  * validation, Nuvei debit call, 3DS/OTP handling, Firestore order updates, email
157
156
  * dispatch, and optional post-success side effects via `onPaymentSucceeded`.
158
157
  */
159
- declare function createChargeHandler(deps: ChargeHandlerDeps): (request: NextRequest) => Promise<NextResponse<{
160
- error: string;
161
- }> | NextResponse<{
162
- success: boolean;
163
- transactionId: string;
164
- authorizationCode: string | null;
165
- orderId: string;
166
- emailSent: boolean;
167
- }> | NextResponse<{
168
- review: boolean;
169
- orderId: string;
170
- transactionId: string;
171
- }> | NextResponse<{
172
- challenge: boolean;
173
- challengeHtml: string;
174
- isDeviceFingerprint: boolean;
175
- orderId: string;
176
- nuveiTransactionId: string;
177
- statusDetail: number;
178
- }> | NextResponse<{
179
- otpRequired: boolean;
180
- orderId: string;
181
- nuveiTransactionId: string;
182
- statusDetail: number;
183
- }>>;
158
+ declare function createChargeHandler(deps: ChargeHandlerDeps): (request: Request) => Promise<Response>;
184
159
 
185
160
  interface NuveiWebhookPayload {
186
161
  transaction: {
@@ -206,15 +181,15 @@ interface WebhookHandlerDeps {
206
181
  onPaymentSucceeded?: (order: MinimalOrder & {
207
182
  id: string;
208
183
  }) => Promise<void>;
209
- /** Optional custom dev_reference handler. If the webhook's `transaction.dev_reference` matches a custom format (e.g. "pn_<id>" for Plan Novios), the consumer returns a NextResponse and the standard order flow is skipped. Return null to fall through to standard order processing. */
210
- handleCustomDevReference?: (devReference: string, transaction: NuveiWebhookPayload["transaction"], payload: NuveiWebhookPayload) => Promise<NextResponse | null>;
184
+ /** Optional custom dev_reference handler. If the webhook's `transaction.dev_reference` matches a custom format (e.g. "pn_<id>" for Plan Novios), the consumer returns a Response and the standard order flow is skipped. Return null to fall through to standard order processing. */
185
+ handleCustomDevReference?: (devReference: string, transaction: NuveiWebhookPayload["transaction"], payload: NuveiWebhookPayload) => Promise<Response | null>;
211
186
  logger?: Pick<Console, "log" | "error" | "warn">;
212
187
  }
213
188
  /**
214
189
  * Creates a Next.js App Router POST handler for the Nuvei webhook callback.
215
190
  * Reference: https://developers.paymentez.com/api/#webhook
216
191
  */
217
- declare function createWebhookHandler(deps: WebhookHandlerDeps): (request: NextRequest) => Promise<NextResponse<unknown>>;
192
+ declare function createWebhookHandler(deps: WebhookHandlerDeps): (request: Request) => Promise<Response>;
218
193
 
219
194
  /** Dependencies the 3DS callback handler factory needs. */
220
195
  interface ThreeDSCallbackHandlerDeps {
@@ -224,15 +199,16 @@ interface ThreeDSCallbackHandlerDeps {
224
199
  logger?: Pick<Console, "log" | "error" | "warn">;
225
200
  }
226
201
  /**
227
- * Creates a Next.js App Router route module for the 3DS callback endpoint.
228
- * Returns `{ POST, GET }` because the ACS may call either depending on bank/issuer.
202
+ * Creates the 3DS callback route handlers. Returns `{ POST, GET }` because the
203
+ * ACS may call either depending on bank/issuer.
229
204
  *
230
- * Usage:
231
- * export const { POST, GET } = create3dsCallbackHandler({ firebase: { db } });
205
+ * Usage (Next.js): export const { POST, GET } = create3dsCallbackHandler({ firebase: { db } });
206
+ * Usage (Functions): const { POST } = create3dsCallbackHandler({ firebase: { db } });
207
+ * exports.threeDSCallback = onRequest({ cors: true }, toCloudFunction(POST));
232
208
  */
233
209
  declare function create3dsCallbackHandler(deps: ThreeDSCallbackHandlerDeps): {
234
- POST: (request: NextRequest) => Promise<NextResponse<unknown>>;
235
- GET: (request: NextRequest) => Promise<NextResponse<unknown>>;
210
+ POST: (request: Request) => Promise<Response>;
211
+ GET: (request: Request) => Promise<Response>;
236
212
  };
237
213
 
238
214
  /** Dependencies the 3DS complete handler factory needs. */
@@ -253,23 +229,7 @@ interface ThreeDSCompleteHandlerDeps {
253
229
  * Creates a Next.js App Router POST handler for the 3DS complete endpoint.
254
230
  * Called by the client after challenge completion to finalize the payment.
255
231
  */
256
- declare function create3dsCompleteHandler(deps: ThreeDSCompleteHandlerDeps): (request: NextRequest) => Promise<NextResponse<{
257
- error: string;
258
- }> | NextResponse<{
259
- success: boolean;
260
- transactionId: unknown;
261
- authorizationCode: {} | null;
262
- orderId: string;
263
- }> | NextResponse<{
264
- stillPending: boolean;
265
- }> | NextResponse<{
266
- challenge: boolean;
267
- challengeHtml: string;
268
- isDeviceFingerprint: boolean;
269
- orderId: string;
270
- nuveiTransactionId: {};
271
- statusDetail: number;
272
- }>>;
232
+ declare function create3dsCompleteHandler(deps: ThreeDSCompleteHandlerDeps): (request: Request) => Promise<Response>;
273
233
 
274
234
  /** Dependencies the 3DS timeout handler factory needs. */
275
235
  interface ThreeDSTimeoutHandlerDeps {
@@ -281,13 +241,7 @@ interface ThreeDSTimeoutHandlerDeps {
281
241
  }) => string;
282
242
  logger?: Pick<Console, "log" | "error" | "warn">;
283
243
  }
284
- declare function create3dsTimeoutHandler(deps: ThreeDSTimeoutHandlerDeps): (request: NextRequest) => Promise<NextResponse<{
285
- error: string;
286
- }> | NextResponse<{
287
- alreadyResolved: boolean;
288
- }> | NextResponse<{
289
- ok: boolean;
290
- }>>;
244
+ declare function create3dsTimeoutHandler(deps: ThreeDSTimeoutHandlerDeps): (request: Request) => Promise<Response>;
291
245
 
292
246
  /** Dependencies the refund handler factory needs. */
293
247
  interface RefundHandlerDeps {
@@ -298,12 +252,7 @@ interface RefundHandlerDeps {
298
252
  }) => Promise<void>;
299
253
  logger?: Pick<Console, "log" | "error" | "warn">;
300
254
  }
301
- declare function createRefundHandler(deps: RefundHandlerDeps): (request: NextRequest) => Promise<NextResponse<{
302
- error: string;
303
- }> | NextResponse<{
304
- success: boolean;
305
- detail: string;
306
- }>>;
255
+ declare function createRefundHandler(deps: RefundHandlerDeps): (request: Request) => Promise<Response>;
307
256
 
308
257
  /** Dependencies the init-checkout handler factory needs. */
309
258
  interface InitCheckoutHandlerDeps {
@@ -319,12 +268,7 @@ interface InitCheckoutHandlerDeps {
319
268
  };
320
269
  logger?: Pick<Console, "log" | "error" | "warn">;
321
270
  }
322
- declare function createInitCheckoutHandler(deps: InitCheckoutHandlerDeps): (request: NextRequest) => Promise<NextResponse<{
323
- error: string;
324
- }> | NextResponse<{
325
- reference: string;
326
- checkoutUrl: string | undefined;
327
- }>>;
271
+ declare function createInitCheckoutHandler(deps: InitCheckoutHandlerDeps): (request: Request) => Promise<Response>;
328
272
 
329
273
  /** Dependencies the cards handler factory needs. */
330
274
  interface CardsHandlerDeps {
@@ -341,26 +285,8 @@ interface CardsHandlerDeps {
341
285
  * export const { GET, DELETE } = createCardsHandler({ firebase: { db, auth } });
342
286
  */
343
287
  declare function createCardsHandler(deps: CardsHandlerDeps): {
344
- GET: (request: NextRequest) => Promise<NextResponse<{
345
- error: string;
346
- }> | NextResponse<{
347
- cards: {
348
- bin: string;
349
- status: string;
350
- token: string;
351
- holder_name: string;
352
- expiry_year: string;
353
- expiry_month: string;
354
- transaction_reference: string;
355
- type: string;
356
- number: string;
357
- }[];
358
- }>>;
359
- DELETE: (request: NextRequest) => Promise<NextResponse<{
360
- error: string;
361
- }> | NextResponse<{
362
- message: string;
363
- }>>;
288
+ GET: (request: Request) => Promise<Response>;
289
+ DELETE: (request: Request) => Promise<Response>;
364
290
  };
365
291
 
366
292
  /** Dependencies the verify handler factory needs. */
@@ -370,17 +296,7 @@ interface VerifyHandlerDeps {
370
296
  enableVerifiedCardsTracking?: boolean;
371
297
  logger?: Pick<Console, "log" | "error" | "warn">;
372
298
  }
373
- declare function createVerifyHandler(deps: VerifyHandlerDeps): (request: NextRequest) => Promise<NextResponse<{
374
- error: string;
375
- }> | NextResponse<{
376
- success: boolean;
377
- transaction: {
378
- status: string;
379
- status_detail: number;
380
- id: string;
381
- message: string | null;
382
- } | undefined;
383
- }>>;
299
+ declare function createVerifyHandler(deps: VerifyHandlerDeps): (request: Request) => Promise<Response>;
384
300
 
385
301
  /** Dependencies the test-charge handler factory needs. */
386
302
  interface TestChargeHandlerDeps {
@@ -391,23 +307,20 @@ interface TestChargeHandlerDeps {
391
307
  defaultDescription?: string;
392
308
  logger?: Pick<Console, "log" | "error" | "warn">;
393
309
  }
394
- declare function createTestChargeHandler(deps: TestChargeHandlerDeps): (request: NextRequest) => Promise<NextResponse<{
395
- error: string;
396
- }> | NextResponse<{
397
- success: boolean;
398
- transaction: {
399
- status: string;
400
- current_status: string;
401
- id: string;
402
- message: string | null;
403
- status_detail: number;
404
- authorization_code: string | null;
405
- };
406
- card: {
407
- bin: string;
408
- type: string;
409
- number: string;
410
- } | undefined;
411
- }>>;
310
+ declare function createTestChargeHandler(deps: TestChargeHandlerDeps): (request: Request) => Promise<Response>;
311
+
312
+ interface NuveiProxyHandlerDeps {
313
+ logger?: Pick<Console, "log" | "error" | "warn">;
314
+ }
315
+ /**
316
+ * Creates a Web-standard POST handler that forwards `{ path, method, body }` to
317
+ * Nuvei's REST API, attaching the caller-supplied `x-nuvei-auth-token` as the
318
+ * `Auth-Token` header and selecting prod/stg from `x-nuvei-env`.
319
+ *
320
+ * Usage (Next.js): export const POST = createNuveiProxyHandler();
321
+ * Usage (Functions): exports.nuveiProxy = onRequest({ cors: true },
322
+ * toCloudFunction(createNuveiProxyHandler()));
323
+ */
324
+ declare function createNuveiProxyHandler(deps?: NuveiProxyHandlerDeps): (request: Request) => Promise<Response>;
412
325
 
413
- export { type CardsHandlerDeps, type ChargeHandlerDeps, type CustomOrderValidationResult, type EmailService, type FirebaseDeps, type FirestoreData, type GetPriceDisplayFn, type InitCheckoutHandlerDeps, type MinimalOrder, type PaymentConfirmationArgs, type PaymentFailedArgs, type PaymentPendingArgs, type RateLimitFn, type RefundHandlerDeps, type TestChargeHandlerDeps, type ThreeDSCallbackHandlerDeps, type ThreeDSCompleteHandlerDeps, type ThreeDSTimeoutHandlerDeps, type TurnstileFn, type ValidateCustomOrderFn, type VerifyHandlerDeps, type WebhookHandlerDeps, create3dsCallbackHandler, create3dsCompleteHandler, create3dsTimeoutHandler, createCardsHandler, createChargeHandler, createInitCheckoutHandler, createRefundHandler, createTestChargeHandler, createVerifyHandler, createWebhookHandler };
326
+ export { type CardsHandlerDeps, type ChargeHandlerDeps, type CustomOrderValidationResult, type EmailService, type FirebaseDeps, type FirestoreData, type GetPriceDisplayFn, type InitCheckoutHandlerDeps, type MinimalOrder, type NuveiProxyHandlerDeps, type PaymentConfirmationArgs, type PaymentFailedArgs, type PaymentPendingArgs, type RateLimitFn, type RefundHandlerDeps, type TestChargeHandlerDeps, type ThreeDSCallbackHandlerDeps, type ThreeDSCompleteHandlerDeps, type ThreeDSTimeoutHandlerDeps, type TurnstileFn, type ValidateCustomOrderFn, type VerifyHandlerDeps, type WebhookHandlerDeps, create3dsCallbackHandler, create3dsCompleteHandler, create3dsTimeoutHandler, createCardsHandler, createChargeHandler, createInitCheckoutHandler, createNuveiProxyHandler, createRefundHandler, createTestChargeHandler, createVerifyHandler, createWebhookHandler };
@@ -1,4 +1,3 @@
1
- import { NextRequest, NextResponse } from 'next/server';
2
1
  import { Auth } from 'firebase-admin/auth';
3
2
  import { Firestore } from 'firebase-admin/firestore';
4
3
 
@@ -156,31 +155,7 @@ interface ChargeHandlerDeps {
156
155
  * validation, Nuvei debit call, 3DS/OTP handling, Firestore order updates, email
157
156
  * dispatch, and optional post-success side effects via `onPaymentSucceeded`.
158
157
  */
159
- declare function createChargeHandler(deps: ChargeHandlerDeps): (request: NextRequest) => Promise<NextResponse<{
160
- error: string;
161
- }> | NextResponse<{
162
- success: boolean;
163
- transactionId: string;
164
- authorizationCode: string | null;
165
- orderId: string;
166
- emailSent: boolean;
167
- }> | NextResponse<{
168
- review: boolean;
169
- orderId: string;
170
- transactionId: string;
171
- }> | NextResponse<{
172
- challenge: boolean;
173
- challengeHtml: string;
174
- isDeviceFingerprint: boolean;
175
- orderId: string;
176
- nuveiTransactionId: string;
177
- statusDetail: number;
178
- }> | NextResponse<{
179
- otpRequired: boolean;
180
- orderId: string;
181
- nuveiTransactionId: string;
182
- statusDetail: number;
183
- }>>;
158
+ declare function createChargeHandler(deps: ChargeHandlerDeps): (request: Request) => Promise<Response>;
184
159
 
185
160
  interface NuveiWebhookPayload {
186
161
  transaction: {
@@ -206,15 +181,15 @@ interface WebhookHandlerDeps {
206
181
  onPaymentSucceeded?: (order: MinimalOrder & {
207
182
  id: string;
208
183
  }) => Promise<void>;
209
- /** Optional custom dev_reference handler. If the webhook's `transaction.dev_reference` matches a custom format (e.g. "pn_<id>" for Plan Novios), the consumer returns a NextResponse and the standard order flow is skipped. Return null to fall through to standard order processing. */
210
- handleCustomDevReference?: (devReference: string, transaction: NuveiWebhookPayload["transaction"], payload: NuveiWebhookPayload) => Promise<NextResponse | null>;
184
+ /** Optional custom dev_reference handler. If the webhook's `transaction.dev_reference` matches a custom format (e.g. "pn_<id>" for Plan Novios), the consumer returns a Response and the standard order flow is skipped. Return null to fall through to standard order processing. */
185
+ handleCustomDevReference?: (devReference: string, transaction: NuveiWebhookPayload["transaction"], payload: NuveiWebhookPayload) => Promise<Response | null>;
211
186
  logger?: Pick<Console, "log" | "error" | "warn">;
212
187
  }
213
188
  /**
214
189
  * Creates a Next.js App Router POST handler for the Nuvei webhook callback.
215
190
  * Reference: https://developers.paymentez.com/api/#webhook
216
191
  */
217
- declare function createWebhookHandler(deps: WebhookHandlerDeps): (request: NextRequest) => Promise<NextResponse<unknown>>;
192
+ declare function createWebhookHandler(deps: WebhookHandlerDeps): (request: Request) => Promise<Response>;
218
193
 
219
194
  /** Dependencies the 3DS callback handler factory needs. */
220
195
  interface ThreeDSCallbackHandlerDeps {
@@ -224,15 +199,16 @@ interface ThreeDSCallbackHandlerDeps {
224
199
  logger?: Pick<Console, "log" | "error" | "warn">;
225
200
  }
226
201
  /**
227
- * Creates a Next.js App Router route module for the 3DS callback endpoint.
228
- * Returns `{ POST, GET }` because the ACS may call either depending on bank/issuer.
202
+ * Creates the 3DS callback route handlers. Returns `{ POST, GET }` because the
203
+ * ACS may call either depending on bank/issuer.
229
204
  *
230
- * Usage:
231
- * export const { POST, GET } = create3dsCallbackHandler({ firebase: { db } });
205
+ * Usage (Next.js): export const { POST, GET } = create3dsCallbackHandler({ firebase: { db } });
206
+ * Usage (Functions): const { POST } = create3dsCallbackHandler({ firebase: { db } });
207
+ * exports.threeDSCallback = onRequest({ cors: true }, toCloudFunction(POST));
232
208
  */
233
209
  declare function create3dsCallbackHandler(deps: ThreeDSCallbackHandlerDeps): {
234
- POST: (request: NextRequest) => Promise<NextResponse<unknown>>;
235
- GET: (request: NextRequest) => Promise<NextResponse<unknown>>;
210
+ POST: (request: Request) => Promise<Response>;
211
+ GET: (request: Request) => Promise<Response>;
236
212
  };
237
213
 
238
214
  /** Dependencies the 3DS complete handler factory needs. */
@@ -253,23 +229,7 @@ interface ThreeDSCompleteHandlerDeps {
253
229
  * Creates a Next.js App Router POST handler for the 3DS complete endpoint.
254
230
  * Called by the client after challenge completion to finalize the payment.
255
231
  */
256
- declare function create3dsCompleteHandler(deps: ThreeDSCompleteHandlerDeps): (request: NextRequest) => Promise<NextResponse<{
257
- error: string;
258
- }> | NextResponse<{
259
- success: boolean;
260
- transactionId: unknown;
261
- authorizationCode: {} | null;
262
- orderId: string;
263
- }> | NextResponse<{
264
- stillPending: boolean;
265
- }> | NextResponse<{
266
- challenge: boolean;
267
- challengeHtml: string;
268
- isDeviceFingerprint: boolean;
269
- orderId: string;
270
- nuveiTransactionId: {};
271
- statusDetail: number;
272
- }>>;
232
+ declare function create3dsCompleteHandler(deps: ThreeDSCompleteHandlerDeps): (request: Request) => Promise<Response>;
273
233
 
274
234
  /** Dependencies the 3DS timeout handler factory needs. */
275
235
  interface ThreeDSTimeoutHandlerDeps {
@@ -281,13 +241,7 @@ interface ThreeDSTimeoutHandlerDeps {
281
241
  }) => string;
282
242
  logger?: Pick<Console, "log" | "error" | "warn">;
283
243
  }
284
- declare function create3dsTimeoutHandler(deps: ThreeDSTimeoutHandlerDeps): (request: NextRequest) => Promise<NextResponse<{
285
- error: string;
286
- }> | NextResponse<{
287
- alreadyResolved: boolean;
288
- }> | NextResponse<{
289
- ok: boolean;
290
- }>>;
244
+ declare function create3dsTimeoutHandler(deps: ThreeDSTimeoutHandlerDeps): (request: Request) => Promise<Response>;
291
245
 
292
246
  /** Dependencies the refund handler factory needs. */
293
247
  interface RefundHandlerDeps {
@@ -298,12 +252,7 @@ interface RefundHandlerDeps {
298
252
  }) => Promise<void>;
299
253
  logger?: Pick<Console, "log" | "error" | "warn">;
300
254
  }
301
- declare function createRefundHandler(deps: RefundHandlerDeps): (request: NextRequest) => Promise<NextResponse<{
302
- error: string;
303
- }> | NextResponse<{
304
- success: boolean;
305
- detail: string;
306
- }>>;
255
+ declare function createRefundHandler(deps: RefundHandlerDeps): (request: Request) => Promise<Response>;
307
256
 
308
257
  /** Dependencies the init-checkout handler factory needs. */
309
258
  interface InitCheckoutHandlerDeps {
@@ -319,12 +268,7 @@ interface InitCheckoutHandlerDeps {
319
268
  };
320
269
  logger?: Pick<Console, "log" | "error" | "warn">;
321
270
  }
322
- declare function createInitCheckoutHandler(deps: InitCheckoutHandlerDeps): (request: NextRequest) => Promise<NextResponse<{
323
- error: string;
324
- }> | NextResponse<{
325
- reference: string;
326
- checkoutUrl: string | undefined;
327
- }>>;
271
+ declare function createInitCheckoutHandler(deps: InitCheckoutHandlerDeps): (request: Request) => Promise<Response>;
328
272
 
329
273
  /** Dependencies the cards handler factory needs. */
330
274
  interface CardsHandlerDeps {
@@ -341,26 +285,8 @@ interface CardsHandlerDeps {
341
285
  * export const { GET, DELETE } = createCardsHandler({ firebase: { db, auth } });
342
286
  */
343
287
  declare function createCardsHandler(deps: CardsHandlerDeps): {
344
- GET: (request: NextRequest) => Promise<NextResponse<{
345
- error: string;
346
- }> | NextResponse<{
347
- cards: {
348
- bin: string;
349
- status: string;
350
- token: string;
351
- holder_name: string;
352
- expiry_year: string;
353
- expiry_month: string;
354
- transaction_reference: string;
355
- type: string;
356
- number: string;
357
- }[];
358
- }>>;
359
- DELETE: (request: NextRequest) => Promise<NextResponse<{
360
- error: string;
361
- }> | NextResponse<{
362
- message: string;
363
- }>>;
288
+ GET: (request: Request) => Promise<Response>;
289
+ DELETE: (request: Request) => Promise<Response>;
364
290
  };
365
291
 
366
292
  /** Dependencies the verify handler factory needs. */
@@ -370,17 +296,7 @@ interface VerifyHandlerDeps {
370
296
  enableVerifiedCardsTracking?: boolean;
371
297
  logger?: Pick<Console, "log" | "error" | "warn">;
372
298
  }
373
- declare function createVerifyHandler(deps: VerifyHandlerDeps): (request: NextRequest) => Promise<NextResponse<{
374
- error: string;
375
- }> | NextResponse<{
376
- success: boolean;
377
- transaction: {
378
- status: string;
379
- status_detail: number;
380
- id: string;
381
- message: string | null;
382
- } | undefined;
383
- }>>;
299
+ declare function createVerifyHandler(deps: VerifyHandlerDeps): (request: Request) => Promise<Response>;
384
300
 
385
301
  /** Dependencies the test-charge handler factory needs. */
386
302
  interface TestChargeHandlerDeps {
@@ -391,23 +307,20 @@ interface TestChargeHandlerDeps {
391
307
  defaultDescription?: string;
392
308
  logger?: Pick<Console, "log" | "error" | "warn">;
393
309
  }
394
- declare function createTestChargeHandler(deps: TestChargeHandlerDeps): (request: NextRequest) => Promise<NextResponse<{
395
- error: string;
396
- }> | NextResponse<{
397
- success: boolean;
398
- transaction: {
399
- status: string;
400
- current_status: string;
401
- id: string;
402
- message: string | null;
403
- status_detail: number;
404
- authorization_code: string | null;
405
- };
406
- card: {
407
- bin: string;
408
- type: string;
409
- number: string;
410
- } | undefined;
411
- }>>;
310
+ declare function createTestChargeHandler(deps: TestChargeHandlerDeps): (request: Request) => Promise<Response>;
311
+
312
+ interface NuveiProxyHandlerDeps {
313
+ logger?: Pick<Console, "log" | "error" | "warn">;
314
+ }
315
+ /**
316
+ * Creates a Web-standard POST handler that forwards `{ path, method, body }` to
317
+ * Nuvei's REST API, attaching the caller-supplied `x-nuvei-auth-token` as the
318
+ * `Auth-Token` header and selecting prod/stg from `x-nuvei-env`.
319
+ *
320
+ * Usage (Next.js): export const POST = createNuveiProxyHandler();
321
+ * Usage (Functions): exports.nuveiProxy = onRequest({ cors: true },
322
+ * toCloudFunction(createNuveiProxyHandler()));
323
+ */
324
+ declare function createNuveiProxyHandler(deps?: NuveiProxyHandlerDeps): (request: Request) => Promise<Response>;
412
325
 
413
- export { type CardsHandlerDeps, type ChargeHandlerDeps, type CustomOrderValidationResult, type EmailService, type FirebaseDeps, type FirestoreData, type GetPriceDisplayFn, type InitCheckoutHandlerDeps, type MinimalOrder, type PaymentConfirmationArgs, type PaymentFailedArgs, type PaymentPendingArgs, type RateLimitFn, type RefundHandlerDeps, type TestChargeHandlerDeps, type ThreeDSCallbackHandlerDeps, type ThreeDSCompleteHandlerDeps, type ThreeDSTimeoutHandlerDeps, type TurnstileFn, type ValidateCustomOrderFn, type VerifyHandlerDeps, type WebhookHandlerDeps, create3dsCallbackHandler, create3dsCompleteHandler, create3dsTimeoutHandler, createCardsHandler, createChargeHandler, createInitCheckoutHandler, createRefundHandler, createTestChargeHandler, createVerifyHandler, createWebhookHandler };
326
+ export { type CardsHandlerDeps, type ChargeHandlerDeps, type CustomOrderValidationResult, type EmailService, type FirebaseDeps, type FirestoreData, type GetPriceDisplayFn, type InitCheckoutHandlerDeps, type MinimalOrder, type NuveiProxyHandlerDeps, type PaymentConfirmationArgs, type PaymentFailedArgs, type PaymentPendingArgs, type RateLimitFn, type RefundHandlerDeps, type TestChargeHandlerDeps, type ThreeDSCallbackHandlerDeps, type ThreeDSCompleteHandlerDeps, type ThreeDSTimeoutHandlerDeps, type TurnstileFn, type ValidateCustomOrderFn, type VerifyHandlerDeps, type WebhookHandlerDeps, create3dsCallbackHandler, create3dsCompleteHandler, create3dsTimeoutHandler, createCardsHandler, createChargeHandler, createInitCheckoutHandler, createNuveiProxyHandler, createRefundHandler, createTestChargeHandler, createVerifyHandler, createWebhookHandler };