@delopay/sdk 0.1.7 → 0.2.0

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.
package/dist/index.d.ts CHANGED
@@ -515,6 +515,16 @@ interface PaymentMethodResponse {
515
515
  interface PaymentMethodListParams {
516
516
  client_secret?: string | null;
517
517
  }
518
+ interface CustomerPaymentMethodsListParams {
519
+ client_secret?: string | null;
520
+ accepted_countries?: string[] | null;
521
+ accepted_currencies?: string[] | null;
522
+ amount?: number | null;
523
+ recurring_enabled?: boolean | null;
524
+ installment_payment_enabled?: boolean | null;
525
+ limit?: number | null;
526
+ card_networks?: string[] | null;
527
+ }
518
528
  interface CustomerPaymentMethodsListResponse {
519
529
  customer_payment_methods: PaymentMethodResponse[];
520
530
  is_guest_customer?: boolean | null;
@@ -1629,33 +1639,23 @@ interface RegionResponse {
1629
1639
  [key: string]: unknown;
1630
1640
  }
1631
1641
 
1632
- type RequestFn$I = <T>(method: string, path: string, options?: {
1633
- body?: unknown;
1634
- query?: Record<string, string | number | boolean | undefined>;
1635
- headers?: Record<string, string>;
1636
- }) => Promise<T>;
1637
1642
  declare class Admin {
1638
1643
  private readonly request;
1639
- constructor(request: RequestFn$I);
1644
+ constructor(request: RequestFn);
1640
1645
  signIn(params: AdminSignInRequest): Promise<AuthResponse>;
1641
1646
  createInternalUser(params: Record<string, unknown>): Promise<AuthResponse>;
1642
1647
  createTenant(params: Record<string, unknown>): Promise<AuthResponse>;
1643
- /** Set signup settings. `POST /admin/signup_settings` */
1648
+ /** Set signup settings. `POST /admin/settings/signup` */
1644
1649
  setSignupSettings(params: Record<string, unknown>): Promise<Record<string, unknown>>;
1645
- /** Get signup settings. `GET /admin/signup_settings` */
1650
+ /** Get signup settings. `GET /admin/settings/signup` */
1646
1651
  getSignupSettings(): Promise<Record<string, unknown>>;
1647
1652
  /** Onboard a merchant. `POST /admin/onboard_merchant` */
1648
1653
  onboardMerchant(params: Record<string, unknown>): Promise<Record<string, unknown>>;
1649
1654
  }
1650
1655
 
1651
- type RequestFn$H = <T>(method: string, path: string, options?: {
1652
- body?: unknown;
1653
- query?: Record<string, string | number | boolean | undefined>;
1654
- headers?: Record<string, string>;
1655
- }) => Promise<T>;
1656
1656
  declare class AdminPortal {
1657
1657
  private readonly request;
1658
- constructor(request: RequestFn$H);
1658
+ constructor(request: RequestFn);
1659
1659
  listCustomers(params?: AdminCustomerListParams): Promise<AdminCustomerListResponse>;
1660
1660
  getCustomer(customerId: string): Promise<AdminCustomerDetail>;
1661
1661
  listTransactions(params?: AdminTransactionListParams): Promise<AdminTransactionListResponse>;
@@ -1664,15 +1664,10 @@ declare class AdminPortal {
1664
1664
  paymentAnalytics(params: PaymentAnalyticsRequest): Promise<PaymentAnalyticsResponse>;
1665
1665
  }
1666
1666
 
1667
- type RequestFn$G = <T>(method: string, path: string, options?: {
1668
- body?: unknown;
1669
- query?: Record<string, string | number | boolean | undefined>;
1670
- headers?: Record<string, string>;
1671
- }) => Promise<T>;
1672
1667
  /** Create and manage API keys for a merchant account. */
1673
1668
  declare class ApiKeys {
1674
1669
  private readonly request;
1675
- constructor(request: RequestFn$G);
1670
+ constructor(request: RequestFn);
1676
1671
  /**
1677
1672
  * Create a new API key for a merchant.
1678
1673
  *
@@ -1720,26 +1715,16 @@ declare class ApiKeys {
1720
1715
  list(merchantId: string): Promise<ApiKeyResponse[]>;
1721
1716
  }
1722
1717
 
1723
- type RequestFn$F = <T>(method: string, path: string, options?: {
1724
- body?: unknown;
1725
- query?: Record<string, string | number | boolean | undefined>;
1726
- headers?: Record<string, string>;
1727
- }) => Promise<T>;
1728
1718
  declare class AuditLogs {
1729
1719
  private readonly request;
1730
- constructor(request: RequestFn$F);
1720
+ constructor(request: RequestFn);
1731
1721
  list(params?: AuditLogListParams): Promise<AuditLogListResponse>;
1732
1722
  retrieve(logId: string): Promise<AuditLogResponse>;
1733
1723
  }
1734
1724
 
1735
- type RequestFn$E = <T>(method: string, path: string, options?: {
1736
- body?: unknown;
1737
- query?: Record<string, string | number | boolean | undefined>;
1738
- headers?: Record<string, string>;
1739
- }) => Promise<T>;
1740
1725
  declare class Authentication {
1741
1726
  private readonly request;
1742
- constructor(request: RequestFn$E);
1727
+ constructor(request: RequestFn);
1743
1728
  create(params: AuthenticationCreateRequest): Promise<AuthenticationResponse>;
1744
1729
  checkEligibility(authId: string): Promise<AuthenticationResponse>;
1745
1730
  authenticate(authId: string, params: Record<string, unknown>): Promise<AuthenticationResponse>;
@@ -1752,15 +1737,10 @@ declare class Authentication {
1752
1737
  eligibilityCheck(authId: string, params: Record<string, unknown>): Promise<Record<string, unknown>>;
1753
1738
  }
1754
1739
 
1755
- type RequestFn$D = <T>(method: string, path: string, options?: {
1756
- body?: unknown;
1757
- query?: Record<string, string | number | boolean | undefined>;
1758
- headers?: Record<string, string>;
1759
- }) => Promise<T>;
1760
1740
  /** Manage per-shop prepaid balance allocations transferred from the host merchant treasury. */
1761
1741
  declare class BillingAllocations {
1762
1742
  private readonly request;
1763
- constructor(request: RequestFn$D);
1743
+ constructor(request: RequestFn);
1764
1744
  /**
1765
1745
  * Transfer funds from the host merchant treasury into a shop's allocation.
1766
1746
  *
@@ -1803,7 +1783,7 @@ declare class Billing {
1803
1783
  private readonly request;
1804
1784
  /** Per-shop balance allocation management for host merchants. */
1805
1785
  readonly allocations: BillingAllocations;
1806
- constructor(request: RequestFn$D);
1786
+ constructor(request: RequestFn);
1807
1787
  /**
1808
1788
  * Retrieve a merchant's billing profile (balance, status, auto-recharge config).
1809
1789
  *
@@ -1875,11 +1855,6 @@ declare class Billing {
1875
1855
  adminDebit(merchantId: string, params: AdminAdjustmentRequest): Promise<AdminAdjustmentResponse>;
1876
1856
  }
1877
1857
 
1878
- type RequestFn$C = <T>(method: string, path: string, options?: {
1879
- body?: unknown;
1880
- query?: Record<string, string | number | boolean | undefined>;
1881
- headers?: Record<string, string>;
1882
- }) => Promise<T>;
1883
1858
  interface BlocklistListParams {
1884
1859
  data_kind?: BlocklistDataKind | null;
1885
1860
  limit?: number | null;
@@ -1890,34 +1865,24 @@ interface BlocklistToggleParams {
1890
1865
  }
1891
1866
  declare class Blocklist {
1892
1867
  private readonly request;
1893
- constructor(request: RequestFn$C);
1868
+ constructor(request: RequestFn);
1894
1869
  add(params: BlocklistAddRequest): Promise<BlocklistResponse>;
1895
1870
  remove(params: BlocklistAddRequest): Promise<BlocklistResponse>;
1896
1871
  list(params?: BlocklistListParams): Promise<BlocklistResponse[]>;
1897
1872
  toggle(params: BlocklistToggleParams): Promise<Record<string, unknown>>;
1898
1873
  }
1899
1874
 
1900
- type RequestFn$B = <T>(method: string, path: string, options?: {
1901
- body?: unknown;
1902
- query?: Record<string, string | number | boolean | undefined>;
1903
- headers?: Record<string, string>;
1904
- }) => Promise<T>;
1905
1875
  declare class CardIssuers {
1906
1876
  private readonly request;
1907
- constructor(request: RequestFn$B);
1877
+ constructor(request: RequestFn);
1908
1878
  create(params: CardIssuerCreateRequest): Promise<CardIssuerResponse>;
1909
1879
  update(issuerId: string, params: CardIssuerUpdateRequest): Promise<CardIssuerResponse>;
1910
1880
  list(): Promise<CardIssuerListResponse>;
1911
1881
  }
1912
1882
 
1913
- type RequestFn$A = <T>(method: string, path: string, options?: {
1914
- body?: unknown;
1915
- query?: Record<string, string | number | boolean | undefined>;
1916
- headers?: Record<string, string>;
1917
- }) => Promise<T>;
1918
1883
  declare class Connectors {
1919
1884
  private readonly request;
1920
- constructor(request: RequestFn$A);
1885
+ constructor(request: RequestFn);
1921
1886
  create(accountId: string, params: ConnectorCreateRequest): Promise<ConnectorResponse>;
1922
1887
  retrieve(accountId: string, connectorId: string): Promise<ConnectorResponse>;
1923
1888
  list(accountId: string): Promise<ConnectorResponse[]>;
@@ -1933,15 +1898,10 @@ declare class Connectors {
1933
1898
  listPaymentMethods(): Promise<Record<string, unknown>[]>;
1934
1899
  }
1935
1900
 
1936
- type RequestFn$z = <T>(method: string, path: string, options?: {
1937
- body?: unknown;
1938
- query?: Record<string, string | number | boolean | undefined>;
1939
- headers?: Record<string, string>;
1940
- }) => Promise<T>;
1941
1901
  /** Create and manage customer profiles. */
1942
1902
  declare class Customers {
1943
1903
  private readonly request;
1944
- constructor(request: RequestFn$z);
1904
+ constructor(request: RequestFn);
1945
1905
  /**
1946
1906
  * Create a new customer.
1947
1907
  *
@@ -2001,15 +1961,10 @@ declare class Customers {
2001
1961
  listMandates(customerId: string): Promise<Record<string, unknown>[]>;
2002
1962
  }
2003
1963
 
2004
- type RequestFn$y = <T>(method: string, path: string, options?: {
2005
- body?: unknown;
2006
- query?: Record<string, string | number | boolean | undefined>;
2007
- headers?: Record<string, string>;
2008
- }) => Promise<T>;
2009
1964
  /** View and respond to payment disputes and chargebacks. */
2010
1965
  declare class Disputes {
2011
1966
  private readonly request;
2012
- constructor(request: RequestFn$y);
1967
+ constructor(request: RequestFn);
2013
1968
  /**
2014
1969
  * Retrieve a dispute by its ID.
2015
1970
  *
@@ -2068,15 +2023,18 @@ declare class Disputes {
2068
2023
  aggregate(params?: Record<string, string | number | undefined>): Promise<Record<string, unknown>>;
2069
2024
  /** Get dispute aggregates (profile-scoped). `GET /disputes/profile/aggregate` */
2070
2025
  aggregateByProfile(params?: Record<string, string | number | undefined>): Promise<Record<string, unknown>>;
2071
- /** Fetch dispute from connector. `POST /disputes/{disputeId}/fetch_from_connector` */
2072
- fetchFromConnector(disputeId: string): Promise<DisputeResponse>;
2026
+ /**
2027
+ * Fetch the latest dispute state from the connector (gateway).
2028
+ * `GET /disputes/{connectorId}/fetch`
2029
+ *
2030
+ * Note: the path parameter is the **connector dispute id** on the gateway, not the
2031
+ * Delopay dispute id. Method is GET (not POST) and this method signature was
2032
+ * previously wrong — callers depending on the old `POST /disputes/{id}/fetch_from_connector`
2033
+ * path were silently hitting 404s.
2034
+ */
2035
+ fetchFromConnector(connectorId: string): Promise<DisputeResponse>;
2073
2036
  }
2074
2037
 
2075
- type RequestFn$x = <T>(method: string, path: string, options?: {
2076
- body?: unknown;
2077
- query?: Record<string, string | number | boolean | undefined>;
2078
- headers?: Record<string, string>;
2079
- }) => Promise<T>;
2080
2038
  /**
2081
2039
  * Create short-lived ephemeral keys for secure client-side operations.
2082
2040
  *
@@ -2086,7 +2044,7 @@ type RequestFn$x = <T>(method: string, path: string, options?: {
2086
2044
  */
2087
2045
  declare class EphemeralKeys {
2088
2046
  private readonly request;
2089
- constructor(request: RequestFn$x);
2047
+ constructor(request: RequestFn);
2090
2048
  /**
2091
2049
  * Create an ephemeral key scoped to a specific customer.
2092
2050
  *
@@ -2109,14 +2067,9 @@ declare class EphemeralKeys {
2109
2067
  delete(keyId: string): Promise<EphemeralKeyCreateResponse>;
2110
2068
  }
2111
2069
 
2112
- type RequestFn$w = <T>(method: string, path: string, options?: {
2113
- body?: unknown;
2114
- query?: Record<string, string | number | boolean | undefined>;
2115
- headers?: Record<string, string>;
2116
- }) => Promise<T>;
2117
2070
  declare class Events {
2118
2071
  private readonly request;
2119
- constructor(request: RequestFn$w);
2072
+ constructor(request: RequestFn);
2120
2073
  list(merchantId: string, params?: EventListParams): Promise<EventListResponse>;
2121
2074
  listDeliveryAttempts(merchantId: string, eventId: string): Promise<EventDeliveryAttemptResponse[]>;
2122
2075
  retryDelivery(merchantId: string, eventId: string): Promise<EventDetailResponse>;
@@ -2124,18 +2077,13 @@ declare class Events {
2124
2077
  listByProfile(params?: Record<string, unknown>): Promise<EventListResponse>;
2125
2078
  }
2126
2079
 
2127
- type RequestFn$v = <T>(method: string, path: string, options?: {
2128
- body?: unknown;
2129
- query?: Record<string, string | number | boolean | undefined>;
2130
- headers?: Record<string, string>;
2131
- }) => Promise<T>;
2132
2080
  /**
2133
2081
  * Admin-only fee schedule management.
2134
2082
  * Requires an admin API key.
2135
2083
  */
2136
2084
  declare class PlatformFees {
2137
2085
  private readonly request;
2138
- constructor(request: RequestFn$v);
2086
+ constructor(request: RequestFn);
2139
2087
  /**
2140
2088
  * Create a new platform fee schedule for a merchant (admin only).
2141
2089
  *
@@ -2177,7 +2125,7 @@ declare class PlatformFees {
2177
2125
  /** Per-shop merchant fee schedule overrides (merchant-scoped). */
2178
2126
  declare class MerchantFees {
2179
2127
  private readonly request;
2180
- constructor(request: RequestFn$v);
2128
+ constructor(request: RequestFn);
2181
2129
  /**
2182
2130
  * Create a merchant-scoped fee schedule override for a specific shop.
2183
2131
  *
@@ -2220,32 +2168,22 @@ declare class Fees {
2220
2168
  readonly platform: PlatformFees;
2221
2169
  /** Merchant-managed per-shop fee schedule overrides. */
2222
2170
  readonly merchant: MerchantFees;
2223
- constructor(request: RequestFn$v);
2171
+ constructor(request: RequestFn);
2224
2172
  }
2225
2173
 
2226
- type RequestFn$u = <T>(method: string, path: string, options?: {
2227
- body?: unknown;
2228
- query?: Record<string, string | number | boolean | undefined>;
2229
- headers?: Record<string, string>;
2230
- }) => Promise<T>;
2231
2174
  declare class Gsm {
2232
2175
  private readonly request;
2233
- constructor(request: RequestFn$u);
2176
+ constructor(request: RequestFn);
2234
2177
  create(params: GsmRuleCreateRequest): Promise<GsmRuleResponse>;
2235
2178
  retrieve(params: Record<string, unknown>): Promise<GsmRuleResponse>;
2236
2179
  update(params: GsmRuleUpdateRequest): Promise<GsmRuleResponse>;
2237
2180
  delete(params: Record<string, unknown>): Promise<GsmRuleResponse>;
2238
2181
  }
2239
2182
 
2240
- type RequestFn$t = <T>(method: string, path: string, options?: {
2241
- body?: unknown;
2242
- query?: Record<string, string | number | boolean | undefined>;
2243
- headers?: Record<string, string>;
2244
- }) => Promise<T>;
2245
2183
  /** View and revoke recurring payment mandates. */
2246
2184
  declare class Mandates {
2247
2185
  private readonly request;
2248
- constructor(request: RequestFn$t);
2186
+ constructor(request: RequestFn);
2249
2187
  /**
2250
2188
  * Retrieve a mandate by its ID.
2251
2189
  *
@@ -2269,14 +2207,9 @@ declare class Mandates {
2269
2207
  list(params?: MandateListParams): Promise<MandateResponse[]>;
2270
2208
  }
2271
2209
 
2272
- type RequestFn$s = <T>(method: string, path: string, options?: {
2273
- body?: unknown;
2274
- query?: Record<string, string | number | boolean | undefined>;
2275
- headers?: Record<string, string>;
2276
- }) => Promise<T>;
2277
2210
  declare class MerchantAccounts {
2278
2211
  private readonly request;
2279
- constructor(request: RequestFn$s);
2212
+ constructor(request: RequestFn);
2280
2213
  create(params: MerchantAccountCreateRequest): Promise<MerchantAccountResponse>;
2281
2214
  retrieve(accountId: string): Promise<MerchantAccountResponse>;
2282
2215
  update(accountId: string, params: MerchantAccountUpdateRequest): Promise<MerchantAccountResponse>;
@@ -2287,19 +2220,14 @@ declare class MerchantAccounts {
2287
2220
  toggleKv(accountId: string): Promise<Record<string, unknown>>;
2288
2221
  /** Get KV status for a merchant. `GET /accounts/{accountId}/kv` */
2289
2222
  getKvStatus(accountId: string): Promise<Record<string, unknown>>;
2290
- /** Transfer keys between merchants. `POST /accounts/transfer_keys` */
2223
+ /** Transfer keys between merchants. `POST /accounts/transfer` */
2291
2224
  transferKeys(params: Record<string, unknown>): Promise<Record<string, unknown>>;
2292
2225
  }
2293
2226
 
2294
- type RequestFn$r = <T>(method: string, path: string, options?: {
2295
- body?: unknown;
2296
- query?: Record<string, string | number | boolean | undefined>;
2297
- headers?: Record<string, string>;
2298
- }) => Promise<T>;
2299
2227
  /** Retrieve and list hosted payment links. */
2300
2228
  declare class PaymentLinks {
2301
2229
  private readonly request;
2302
- constructor(request: RequestFn$r);
2230
+ constructor(request: RequestFn);
2303
2231
  /**
2304
2232
  * Retrieve a payment link by its ID.
2305
2233
  *
@@ -2320,15 +2248,10 @@ declare class PaymentLinks {
2320
2248
  status(merchantId: string, paymentId: string): Promise<Record<string, unknown>>;
2321
2249
  }
2322
2250
 
2323
- type RequestFn$q = <T>(method: string, path: string, options?: {
2324
- body?: unknown;
2325
- query?: Record<string, string | number | boolean | undefined>;
2326
- headers?: Record<string, string>;
2327
- }) => Promise<T>;
2328
2251
  /** Create and manage saved payment methods for customers. */
2329
2252
  declare class PaymentMethods {
2330
2253
  private readonly request;
2331
- constructor(request: RequestFn$q);
2254
+ constructor(request: RequestFn);
2332
2255
  /**
2333
2256
  * Save a new payment method (card, bank account, wallet, etc.).
2334
2257
  *
@@ -2375,17 +2298,22 @@ declare class PaymentMethods {
2375
2298
  */
2376
2299
  list(params?: PaymentMethodListParams): Promise<PaymentMethodResponse[]>;
2377
2300
  /**
2378
- * List all saved payment methods for a customer.
2301
+ * List all saved payment methods for a customer, optionally filtered.
2379
2302
  *
2380
2303
  * @param customerId - The customer ID.
2304
+ * @param params - Optional filters: `client_secret`, `accepted_countries`, `accepted_currencies`,
2305
+ * `amount`, `recurring_enabled`, `installment_payment_enabled`, `limit`, `card_networks`.
2381
2306
  * @returns Customer's saved payment methods.
2382
2307
  *
2383
2308
  * @example
2384
2309
  * ```typescript
2385
- * const { customer_payment_methods } = await delopay.paymentMethods.listForCustomer('cus_123');
2310
+ * const { customer_payment_methods } = await delopay.paymentMethods.listForCustomer(
2311
+ * 'cus_123',
2312
+ * { accepted_currencies: ['EUR'], amount: 5000 },
2313
+ * );
2386
2314
  * ```
2387
2315
  */
2388
- listForCustomer(customerId: string): Promise<CustomerPaymentMethodsListResponse>;
2316
+ listForCustomer(customerId: string, params?: CustomerPaymentMethodsListParams): Promise<CustomerPaymentMethodsListResponse>;
2389
2317
  /**
2390
2318
  * Set a payment method as the default for a customer.
2391
2319
  *
@@ -2418,15 +2346,10 @@ declare class PaymentMethods {
2418
2346
  tokenizeCardForMethod(methodId: string, params: Record<string, unknown>): Promise<Record<string, unknown>>;
2419
2347
  }
2420
2348
 
2421
- type RequestFn$p = <T>(method: string, path: string, options?: {
2422
- body?: unknown;
2423
- query?: Record<string, string | number | boolean | undefined>;
2424
- headers?: Record<string, string>;
2425
- }) => Promise<T>;
2426
2349
  /** Manage payment intents — create, confirm, capture, cancel, and list payments. */
2427
2350
  declare class Payments {
2428
2351
  private readonly request;
2429
- constructor(request: RequestFn$p);
2352
+ constructor(request: RequestFn);
2430
2353
  /**
2431
2354
  * Create a new payment intent.
2432
2355
  *
@@ -2541,15 +2464,10 @@ declare class Payments {
2541
2464
  threeDsAuthentication(paymentId: string, params: Record<string, unknown>): Promise<Record<string, unknown>>;
2542
2465
  }
2543
2466
 
2544
- type RequestFn$o = <T>(method: string, path: string, options?: {
2545
- body?: unknown;
2546
- query?: Record<string, string | number | boolean | undefined>;
2547
- headers?: Record<string, string>;
2548
- }) => Promise<T>;
2549
2467
  /** Create and manage payouts — fund transfers from merchant to a recipient bank account. */
2550
2468
  declare class Payouts {
2551
2469
  private readonly request;
2552
- constructor(request: RequestFn$o);
2470
+ constructor(request: RequestFn);
2553
2471
  /**
2554
2472
  * Create a new payout.
2555
2473
  *
@@ -2626,37 +2544,22 @@ declare class Payouts {
2626
2544
  manualUpdate(payoutId: string, params: Record<string, unknown>): Promise<PayoutResponse>;
2627
2545
  }
2628
2546
 
2629
- type RequestFn$n = <T>(method: string, path: string, options?: {
2630
- body?: unknown;
2631
- query?: Record<string, string | number | boolean | undefined>;
2632
- headers?: Record<string, string>;
2633
- }) => Promise<T>;
2634
2547
  declare class Poll {
2635
2548
  private readonly request;
2636
- constructor(request: RequestFn$n);
2549
+ constructor(request: RequestFn);
2637
2550
  getStatus(pollId: string): Promise<PollStatusResponse>;
2638
2551
  }
2639
2552
 
2640
- type RequestFn$m = <T>(method: string, path: string, options?: {
2641
- body?: unknown;
2642
- query?: Record<string, string | number | boolean | undefined>;
2643
- headers?: Record<string, string>;
2644
- }) => Promise<T>;
2645
2553
  declare class ProfileAcquirers {
2646
2554
  private readonly request;
2647
- constructor(request: RequestFn$m);
2555
+ constructor(request: RequestFn);
2648
2556
  create(params: ProfileAcquirerCreateRequest): Promise<ProfileAcquirerResponse>;
2649
2557
  update(profileId: string, profileAcquirerId: string, params: ProfileAcquirerUpdateRequest): Promise<ProfileAcquirerResponse>;
2650
2558
  }
2651
2559
 
2652
- type RequestFn$l = <T>(method: string, path: string, options?: {
2653
- body?: unknown;
2654
- query?: Record<string, string | number | boolean | undefined>;
2655
- headers?: Record<string, string>;
2656
- }) => Promise<T>;
2657
2560
  declare class Profiles {
2658
2561
  private readonly request;
2659
- constructor(request: RequestFn$l);
2562
+ constructor(request: RequestFn);
2660
2563
  create(accountId: string, params: ProfileCreateRequest): Promise<ProfileResponse>;
2661
2564
  retrieve(accountId: string, profileId: string): Promise<ProfileResponse>;
2662
2565
  list(accountId: string): Promise<ProfileResponse[]>;
@@ -2668,15 +2571,10 @@ declare class Profiles {
2668
2571
  toggleConnectorAgnosticMit(accountId: string, profileId: string): Promise<ProfileResponse>;
2669
2572
  }
2670
2573
 
2671
- type RequestFn$k = <T>(method: string, path: string, options?: {
2672
- body?: unknown;
2673
- query?: Record<string, string | number | boolean | undefined>;
2674
- headers?: Record<string, string>;
2675
- }) => Promise<T>;
2676
2574
  /** Create and manage projects — optional grouping layers that contain one or more shops. */
2677
2575
  declare class Projects {
2678
2576
  private readonly request;
2679
- constructor(request: RequestFn$k);
2577
+ constructor(request: RequestFn);
2680
2578
  /**
2681
2579
  * Create a new project under a merchant account.
2682
2580
  *
@@ -2735,15 +2633,10 @@ declare class Projects {
2735
2633
  overview(merchantId: string): Promise<MerchantOverviewResponse>;
2736
2634
  }
2737
2635
 
2738
- type RequestFn$j = <T>(method: string, path: string, options?: {
2739
- body?: unknown;
2740
- query?: Record<string, string | number | boolean | undefined>;
2741
- headers?: Record<string, string>;
2742
- }) => Promise<T>;
2743
2636
  /** Create and manage refunds for completed payments. */
2744
2637
  declare class Refunds {
2745
2638
  private readonly request;
2746
- constructor(request: RequestFn$j);
2639
+ constructor(request: RequestFn);
2747
2640
  /**
2748
2641
  * Create a refund for a payment.
2749
2642
  *
@@ -2800,23 +2693,13 @@ declare class Refunds {
2800
2693
  manualUpdate(refundId: string, params: Record<string, unknown>): Promise<RefundResponse>;
2801
2694
  }
2802
2695
 
2803
- type RequestFn$i = <T>(method: string, path: string, options?: {
2804
- body?: unknown;
2805
- query?: Record<string, string | number | boolean | undefined>;
2806
- headers?: Record<string, string>;
2807
- }) => Promise<T>;
2808
2696
  declare class Relay {
2809
2697
  private readonly request;
2810
- constructor(request: RequestFn$i);
2698
+ constructor(request: RequestFn);
2811
2699
  create(params: RelayRequest): Promise<RelayResponse>;
2812
2700
  retrieve(relayId: string): Promise<RelayResponse>;
2813
2701
  }
2814
2702
 
2815
- type RequestFn$h = <T>(method: string, path: string, options?: {
2816
- body?: unknown;
2817
- query?: Record<string, string | number | boolean | undefined>;
2818
- headers?: Record<string, string>;
2819
- }) => Promise<T>;
2820
2703
  /**
2821
2704
  * Create and manage payment routing algorithms.
2822
2705
  *
@@ -2826,7 +2709,7 @@ type RequestFn$h = <T>(method: string, path: string, options?: {
2826
2709
  declare class Routing {
2827
2710
  private readonly request;
2828
2711
  readonly decision: RoutingDecisionManager;
2829
- constructor(request: RequestFn$h);
2712
+ constructor(request: RequestFn);
2830
2713
  /**
2831
2714
  * Create a new routing algorithm.
2832
2715
  *
@@ -2889,7 +2772,7 @@ declare class Routing {
2889
2772
  }
2890
2773
  declare class RoutingDecisionManager {
2891
2774
  private readonly request;
2892
- constructor(request: RequestFn$h);
2775
+ constructor(request: RequestFn);
2893
2776
  /** Upsert decision manager config. `PUT /routing/decision` */
2894
2777
  upsert(params: Record<string, unknown>): Promise<Record<string, unknown>>;
2895
2778
  /** Retrieve decision manager config. `GET /routing/decision` */
@@ -2904,15 +2787,10 @@ declare class RoutingDecisionManager {
2904
2787
  deleteSurcharge(): Promise<Record<string, unknown>>;
2905
2788
  }
2906
2789
 
2907
- type RequestFn$g = <T>(method: string, path: string, options?: {
2908
- body?: unknown;
2909
- query?: Record<string, string | number | boolean | undefined>;
2910
- headers?: Record<string, string>;
2911
- }) => Promise<T>;
2912
2790
  /** Manage gateway connections for a specific shop. */
2913
2791
  declare class ShopGateways {
2914
2792
  private readonly request;
2915
- constructor(request: RequestFn$g);
2793
+ constructor(request: RequestFn);
2916
2794
  /**
2917
2795
  * Connect a payment gateway to a shop.
2918
2796
  *
@@ -2949,7 +2827,7 @@ declare class Shops {
2949
2827
  private readonly request;
2950
2828
  /** Gateway connection management for shops. */
2951
2829
  readonly gateways: ShopGateways;
2952
- constructor(request: RequestFn$g);
2830
+ constructor(request: RequestFn);
2953
2831
  /**
2954
2832
  * Create a new shop under a merchant account.
2955
2833
  *
@@ -2997,14 +2875,9 @@ declare class Shops {
2997
2875
  list(merchantId: string): Promise<ShopResponse[]>;
2998
2876
  }
2999
2877
 
3000
- type RequestFn$f = <T>(method: string, path: string, options?: {
3001
- body?: unknown;
3002
- query?: Record<string, string | number | boolean | undefined>;
3003
- headers?: Record<string, string>;
3004
- }) => Promise<T>;
3005
2878
  declare class StripeConnect {
3006
2879
  private readonly request;
3007
- constructor(request: RequestFn$f);
2880
+ constructor(request: RequestFn);
3008
2881
  createAccount(params: StripeConnectAccountRequest): Promise<StripeConnectAccountResponse>;
3009
2882
  createAccountLink(params: StripeConnectLinkRequest): Promise<StripeConnectLinkResponse>;
3010
2883
  /** Get onboarding action URL. `POST /connector_onboarding/action_url` */
@@ -3015,25 +2888,15 @@ declare class StripeConnect {
3015
2888
  resetTrackingId(params: Record<string, unknown>): Promise<Record<string, unknown>>;
3016
2889
  }
3017
2890
 
3018
- type RequestFn$e = <T>(method: string, path: string, options?: {
3019
- body?: unknown;
3020
- query?: Record<string, string | number | boolean | undefined>;
3021
- headers?: Record<string, string>;
3022
- }) => Promise<T>;
3023
2891
  declare class ThreeDsRules {
3024
2892
  private readonly request;
3025
- constructor(request: RequestFn$e);
2893
+ constructor(request: RequestFn);
3026
2894
  execute(params: ThreeDsRuleExecuteRequest): Promise<ThreeDsRuleResponse>;
3027
2895
  }
3028
2896
 
3029
- type RequestFn$d = <T>(method: string, path: string, options?: {
3030
- body?: unknown;
3031
- query?: Record<string, string | number | boolean | undefined>;
3032
- headers?: Record<string, string>;
3033
- }) => Promise<T>;
3034
2897
  declare class Users {
3035
2898
  private readonly request;
3036
- constructor(request: RequestFn$d);
2899
+ constructor(request: RequestFn);
3037
2900
  signUp(params: SignUpRequest | SignUpWithMerchantRequest): Promise<AuthResponse>;
3038
2901
  signIn(params: SignInRequest): Promise<AuthResponse>;
3039
2902
  signOut(): Promise<Record<string, unknown>>;
@@ -3128,28 +2991,18 @@ declare class Users {
3128
2991
  updateRole(roleId: string, params: Record<string, unknown>): Promise<Record<string, unknown>>;
3129
2992
  }
3130
2993
 
3131
- type RequestFn$c = <T>(method: string, path: string, options?: {
3132
- body?: unknown;
3133
- query?: Record<string, string | number | boolean | undefined>;
3134
- headers?: Record<string, string>;
3135
- }) => Promise<T>;
3136
2994
  declare class Verification {
3137
2995
  private readonly request;
3138
- constructor(request: RequestFn$c);
2996
+ constructor(request: RequestFn);
3139
2997
  registerApplePayDomains(merchantId: string, params: ApplePayVerificationRequest): Promise<ApplePayVerificationResponse>;
3140
2998
  getApplePayVerifiedDomains(params: Record<string, string>): Promise<ApplePayVerifiedDomainsResponse>;
3141
2999
  }
3142
3000
 
3143
- type RequestFn$b = <T>(method: string, path: string, options?: {
3144
- body?: unknown;
3145
- query?: Record<string, string | number | boolean | undefined>;
3146
- headers?: Record<string, string>;
3147
- }) => Promise<T>;
3148
3001
  type AnalyticsScope = 'merchant' | 'org' | 'profile';
3149
3002
  declare class AnalyticsDomain {
3150
3003
  private readonly request;
3151
3004
  private readonly domain;
3152
- constructor(request: RequestFn$b, domain: string);
3005
+ constructor(request: RequestFn, domain: string);
3153
3006
  /** Get metrics. `POST /analytics/v1/metrics/{domain}` */
3154
3007
  metrics(params: Record<string, unknown>, scope?: AnalyticsScope): Promise<Record<string, unknown>>;
3155
3008
  /** Get filters. `POST /analytics/v1/filters/{domain}` */
@@ -3169,7 +3022,7 @@ declare class Analytics {
3169
3022
  readonly frm: AnalyticsDomain;
3170
3023
  readonly apiEvents: AnalyticsDomain;
3171
3024
  readonly routing: AnalyticsDomain;
3172
- constructor(request: RequestFn$b);
3025
+ constructor(request: RequestFn);
3173
3026
  /** Global search. `POST /analytics/v1/search` */
3174
3027
  search(params: Record<string, unknown>): Promise<Record<string, unknown>>;
3175
3028
  /** Domain-specific search. `POST /analytics/v1/search/{domain}` */
@@ -3188,40 +3041,25 @@ declare class Analytics {
3188
3041
  outgoingWebhookEventLogs(params?: Record<string, string | number | undefined>): Promise<Record<string, unknown>>;
3189
3042
  }
3190
3043
 
3191
- type RequestFn$a = <T>(method: string, path: string, options?: {
3192
- body?: unknown;
3193
- query?: Record<string, string | number | boolean | undefined>;
3194
- headers?: Record<string, string>;
3195
- }) => Promise<T>;
3196
3044
  declare class AnalyticsDashboard {
3197
3045
  private readonly request;
3198
- constructor(request: RequestFn$a);
3046
+ constructor(request: RequestFn);
3199
3047
  /** Get analytics dashboard data. `GET /analytics-dashboard` */
3200
3048
  retrieve(params?: Record<string, string | number | undefined>): Promise<Record<string, unknown>>;
3201
3049
  /** Generate analytics dashboard report. `POST /analytics-dashboard` */
3202
3050
  generate(params: Record<string, unknown>): Promise<Record<string, unknown>>;
3203
3051
  }
3204
3052
 
3205
- type RequestFn$9 = <T>(method: string, path: string, options?: {
3206
- body?: unknown;
3207
- query?: Record<string, string | number | boolean | undefined>;
3208
- headers?: Record<string, string>;
3209
- }) => Promise<T>;
3210
3053
  declare class Cache {
3211
3054
  private readonly request;
3212
- constructor(request: RequestFn$9);
3055
+ constructor(request: RequestFn);
3213
3056
  /** Invalidate a cache entry by key. `POST /cache/invalidate/{key}` */
3214
3057
  invalidate(key: string): Promise<Record<string, unknown>>;
3215
3058
  }
3216
3059
 
3217
- type RequestFn$8 = <T>(method: string, path: string, options?: {
3218
- body?: unknown;
3219
- query?: Record<string, string | number | boolean | undefined>;
3220
- headers?: Record<string, string>;
3221
- }) => Promise<T>;
3222
3060
  declare class Cards {
3223
3061
  private readonly request;
3224
- constructor(request: RequestFn$8);
3062
+ constructor(request: RequestFn);
3225
3063
  /** Create a card. `POST /cards/create` */
3226
3064
  create(params: Record<string, unknown>): Promise<Record<string, unknown>>;
3227
3065
  /** Update a card. `POST /cards/update` */
@@ -3230,14 +3068,9 @@ declare class Cards {
3230
3068
  retrieve(bin: string): Promise<Record<string, unknown>>;
3231
3069
  }
3232
3070
 
3233
- type RequestFn$7 = <T>(method: string, path: string, options?: {
3234
- body?: unknown;
3235
- query?: Record<string, string | number | boolean | undefined>;
3236
- headers?: Record<string, string>;
3237
- }) => Promise<T>;
3238
3071
  declare class Configs {
3239
3072
  private readonly request;
3240
- constructor(request: RequestFn$7);
3073
+ constructor(request: RequestFn);
3241
3074
  /** Create a config. `POST /configs` */
3242
3075
  create(params: Record<string, unknown>): Promise<Record<string, unknown>>;
3243
3076
  /** Retrieve a config by key. `GET /configs/{key}` */
@@ -3248,38 +3081,23 @@ declare class Configs {
3248
3081
  delete(key: string): Promise<Record<string, unknown>>;
3249
3082
  }
3250
3083
 
3251
- type RequestFn$6 = <T>(method: string, path: string, options?: {
3252
- body?: unknown;
3253
- query?: Record<string, string | number | boolean | undefined>;
3254
- headers?: Record<string, string>;
3255
- }) => Promise<T>;
3256
3084
  declare class Export {
3257
3085
  private readonly request;
3258
- constructor(request: RequestFn$6);
3086
+ constructor(request: RequestFn);
3259
3087
  /** Export transactions. `POST /export/transactions` */
3260
3088
  transactions(params: Record<string, unknown>): Promise<Record<string, unknown>>;
3261
3089
  }
3262
3090
 
3263
- type RequestFn$5 = <T>(method: string, path: string, options?: {
3264
- body?: unknown;
3265
- query?: Record<string, string | number | boolean | undefined>;
3266
- headers?: Record<string, string>;
3267
- }) => Promise<T>;
3268
3091
  declare class FeatureMatrix {
3269
3092
  private readonly request;
3270
- constructor(request: RequestFn$5);
3093
+ constructor(request: RequestFn);
3271
3094
  /** Retrieve the feature matrix. `GET /feature_matrix` */
3272
3095
  retrieve(): Promise<Record<string, unknown>>;
3273
3096
  }
3274
3097
 
3275
- type RequestFn$4 = <T>(method: string, path: string, options?: {
3276
- body?: unknown;
3277
- query?: Record<string, string | number | boolean | undefined>;
3278
- headers?: Record<string, string>;
3279
- }) => Promise<T>;
3280
3098
  declare class Files {
3281
3099
  private readonly request;
3282
- constructor(request: RequestFn$4);
3100
+ constructor(request: RequestFn);
3283
3101
  /** Upload a file. `POST /files` */
3284
3102
  create(params: Record<string, unknown>): Promise<Record<string, unknown>>;
3285
3103
  /** Retrieve/download a file. `GET /files/{fileId}` */
@@ -3288,28 +3106,18 @@ declare class Files {
3288
3106
  delete(fileId: string): Promise<Record<string, unknown>>;
3289
3107
  }
3290
3108
 
3291
- type RequestFn$3 = <T>(method: string, path: string, options?: {
3292
- body?: unknown;
3293
- query?: Record<string, string | number | boolean | undefined>;
3294
- headers?: Record<string, string>;
3295
- }) => Promise<T>;
3296
3109
  declare class Forex {
3297
3110
  private readonly request;
3298
- constructor(request: RequestFn$3);
3111
+ constructor(request: RequestFn);
3299
3112
  /** Retrieve forex rates. `GET /forex/rates` */
3300
3113
  getRates(params?: Record<string, string | number | undefined>): Promise<Record<string, unknown>>;
3301
3114
  /** Convert from minor currency. `GET /forex/convert_from_minor` */
3302
3115
  convertFromMinor(params: Record<string, string | number | undefined>): Promise<Record<string, unknown>>;
3303
3116
  }
3304
3117
 
3305
- type RequestFn$2 = <T>(method: string, path: string, options?: {
3306
- body?: unknown;
3307
- query?: Record<string, string | number | boolean | undefined>;
3308
- headers?: Record<string, string>;
3309
- }) => Promise<T>;
3310
3118
  declare class Regions {
3311
3119
  private readonly request;
3312
- constructor(request: RequestFn$2);
3120
+ constructor(request: RequestFn);
3313
3121
  /** Create a region. `POST /regions` */
3314
3122
  create(params: RegionCreateRequest): Promise<RegionResponse>;
3315
3123
  /** Retrieve a region by ID. `GET /regions/{regionId}` */
@@ -3322,14 +3130,9 @@ declare class Regions {
3322
3130
  list(): Promise<RegionResponse[]>;
3323
3131
  }
3324
3132
 
3325
- type RequestFn$1 = <T>(method: string, path: string, options?: {
3326
- body?: unknown;
3327
- query?: Record<string, string | number | boolean | undefined>;
3328
- headers?: Record<string, string>;
3329
- }) => Promise<T>;
3330
3133
  declare class Subscriptions {
3331
3134
  private readonly request;
3332
- constructor(request: RequestFn$1);
3135
+ constructor(request: RequestFn);
3333
3136
  /** Create and immediately confirm a subscription. `POST /subscriptions` */
3334
3137
  createAndConfirm(params: SubscriptionCreateRequest): Promise<SubscriptionResponse>;
3335
3138
  /** Create a subscription (without confirming). `POST /subscriptions/create` */
@@ -3354,6 +3157,13 @@ declare class Subscriptions {
3354
3157
  cancel(subscriptionId: string): Promise<SubscriptionResponse>;
3355
3158
  }
3356
3159
 
3160
+ /**
3161
+ * Events emitted by the debug logger.
3162
+ * - `request` — about to send a request (`method`, `url`, `path`)
3163
+ * - `response` — response received (`status`, `method`, `path`, `requestId?`)
3164
+ * - `retry` — about to retry after a transient failure (`attempt`, `maxRetries`, `method`, `path`)
3165
+ */
3166
+ type DelopayLogger = (event: 'request' | 'response' | 'retry', data: Record<string, unknown>) => void;
3357
3167
  /**
3358
3168
  * Configuration options for the Delopay client.
3359
3169
  */
@@ -3370,8 +3180,14 @@ interface DelopayOptions {
3370
3180
  * Only idempotent-safe requests (GET, DELETE, and requests with an `Idempotency-Key` header) are retried.
3371
3181
  */
3372
3182
  maxRetries?: number;
3373
- /** Enable debug logging of requests and responses to `console.log`. Defaults to `false`. */
3183
+ /** Enable debug logging of requests and responses. Defaults to `false`. */
3374
3184
  debug?: boolean;
3185
+ /**
3186
+ * Custom logger for debug events (`request`, `response`, `retry`). When omitted,
3187
+ * debug output is written to `console.log`. Has no effect unless `debug` is `true`.
3188
+ * Useful for routing SDK logs through pino, winston, or similar structured loggers.
3189
+ */
3190
+ logger?: DelopayLogger;
3375
3191
  }
3376
3192
  /**
3377
3193
  * Low-level options forwarded to a single HTTP request.
@@ -3379,10 +3195,20 @@ interface DelopayOptions {
3379
3195
  interface RequestOptions {
3380
3196
  /** Request body, serialised as JSON. */
3381
3197
  body?: unknown;
3382
- /** Query-string parameters. `undefined` values are omitted. */
3383
- query?: Record<string, string | number | boolean | undefined>;
3198
+ /**
3199
+ * Query-string parameters. `undefined` and `null` values are omitted.
3200
+ * Array values are emitted as repeated keys (`?tag=a&tag=b`) — not comma-joined.
3201
+ */
3202
+ query?: Record<string, string | number | boolean | null | undefined | (string | number | boolean)[]>;
3384
3203
  /** Additional HTTP headers merged with the default `api-key` header. */
3385
3204
  headers?: Record<string, string>;
3205
+ /** Override the client-level timeout for this request, in milliseconds. */
3206
+ timeout?: number;
3207
+ /**
3208
+ * Caller-provided `AbortSignal`. Aborting it cancels the in-flight request and rejects
3209
+ * with a `DelopayError` carrying code `'ABORTED'`. Combined with the per-request timeout.
3210
+ */
3211
+ signal?: AbortSignal;
3386
3212
  }
3387
3213
  type RequestFn = <T>(method: string, path: string, options?: RequestOptions) => Promise<T>;
3388
3214
  /**
@@ -3401,7 +3227,7 @@ type RequestFn = <T>(method: string, path: string, options?: RequestOptions) =>
3401
3227
  declare class Delopay {
3402
3228
  /** Utility for verifying incoming webhook signatures (static, no instance needed). */
3403
3229
  static webhooks: {
3404
- verify(rawBody: string, signatureHeader: string, secret: string, options?: VerifyOptions): WebhookEvent;
3230
+ verify(rawBody: string, signatureHeader: string, secret: string, options?: VerifyOptions): Promise<WebhookEvent>;
3405
3231
  };
3406
3232
  /** The resolved base URL used for all API requests. */
3407
3233
  readonly baseUrl: string;
@@ -3409,6 +3235,7 @@ declare class Delopay {
3409
3235
  private readonly timeout;
3410
3236
  private readonly maxRetries;
3411
3237
  private readonly debug;
3238
+ private readonly logger?;
3412
3239
  private jwtToken?;
3413
3240
  readonly payments: Payments;
3414
3241
  readonly refunds: Refunds;
@@ -3521,7 +3348,7 @@ declare class Delopay {
3521
3348
  * await delopay.payments.create({ amount: 5000, currency: 'EUR' });
3522
3349
  * } catch (e) {
3523
3350
  * if (e instanceof DelopayError) {
3524
- * console.error(e.status, e.code, e.message);
3351
+ * console.error(e.status, e.code, e.requestId, e.message);
3525
3352
  * }
3526
3353
  * }
3527
3354
  * ```
@@ -3533,10 +3360,20 @@ declare class DelopayError extends Error {
3533
3360
  readonly code: string;
3534
3361
  /** Error category (e.g. `'invalid_request'`, `'timeout_error'`). */
3535
3362
  readonly type: string;
3363
+ /** Value of the `x-request-id` response header, when present. Include this when contacting support. */
3364
+ readonly requestId?: string;
3365
+ /**
3366
+ * Raw response body (truncated to ~2 KB). Populated when the server returns a
3367
+ * non-JSON error body (e.g. an HTML 502 from an upstream proxy) so debugging
3368
+ * still has something to go on.
3369
+ */
3370
+ readonly rawBody?: string;
3536
3371
  constructor(message: string, options: {
3537
3372
  status: number;
3538
3373
  code: string;
3539
3374
  type: string;
3375
+ requestId?: string;
3376
+ rawBody?: string;
3540
3377
  });
3541
3378
  }
3542
3379
  /**
@@ -3550,7 +3387,10 @@ declare class DelopayError extends Error {
3550
3387
  * ```
3551
3388
  */
3552
3389
  declare class DelopayAuthenticationError extends DelopayError {
3553
- constructor(message?: string);
3390
+ constructor(message?: string, options?: {
3391
+ requestId?: string;
3392
+ rawBody?: string;
3393
+ });
3554
3394
  }
3555
3395
 
3556
3396
  /**
@@ -3580,6 +3420,9 @@ declare const Webhooks: {
3580
3420
  /**
3581
3421
  * Verify the signature of an incoming Delopay webhook and return the parsed event.
3582
3422
  *
3423
+ * Uses the Web Crypto API (`globalThis.crypto.subtle`), so it runs unchanged in
3424
+ * Node 18+, modern browsers, Deno, Bun, and edge runtimes (Cloudflare Workers, Vercel Edge).
3425
+ *
3583
3426
  * This method is available as a static property on the `Delopay` class
3584
3427
  * (`Delopay.webhooks.verify`) and does not require a client instance.
3585
3428
  *
@@ -3587,14 +3430,14 @@ declare const Webhooks: {
3587
3430
  * @param signatureHeader - The value of the `delopay-signature` HTTP header.
3588
3431
  * @param secret - Your webhook signing secret from the Delopay dashboard.
3589
3432
  * @param options - Optional verification settings (replay tolerance).
3590
- * @returns The parsed webhook event.
3433
+ * @returns Promise that resolves to the parsed webhook event.
3591
3434
  * @throws {Error} When the signature is invalid, the timestamp is missing, or the event is too old.
3592
3435
  *
3593
3436
  * @example
3594
3437
  * ```typescript
3595
3438
  * // Express example
3596
- * app.post('/webhook', express.raw({ type: 'application/json' }), (req, res) => {
3597
- * const event = Delopay.webhooks.verify(
3439
+ * app.post('/webhook', express.raw({ type: 'application/json' }), async (req, res) => {
3440
+ * const event = await Delopay.webhooks.verify(
3598
3441
  * req.body.toString(),
3599
3442
  * req.headers['delopay-signature'] as string,
3600
3443
  * process.env.DELOPAY_WEBHOOK_SECRET!,
@@ -3604,7 +3447,7 @@ declare const Webhooks: {
3604
3447
  * });
3605
3448
  * ```
3606
3449
  */
3607
- verify(rawBody: string, signatureHeader: string, secret: string, options?: VerifyOptions): WebhookEvent;
3450
+ verify(rawBody: string, signatureHeader: string, secret: string, options?: VerifyOptions): Promise<WebhookEvent>;
3608
3451
  };
3609
3452
 
3610
- export { type Address, type AddressDetails, type AdminAdjustmentRequest, type AdminAdjustmentResponse, type AdminAnalyticsRequest, type AdminCustomerDetail, type AdminCustomerListParams, type AdminCustomerListResponse, type AdminSignInRequest, type AdminTransactionListParams, type AdminTransactionListResponse, type AllocationListResponse, type AllocationResponse, type AllocationTransferRequest, type AllocationTransferResponse, Analytics, AnalyticsDashboard, type ApiKeyCreateRequest, type ApiKeyCreateResponse, type ApiKeyExpiration, type ApiKeyResponse, type ApiKeyRevokeResponse, type ApiKeyUpdateRequest, type ApplePayVerificationRequest, type ApplePayVerificationResponse, type ApplePayVerifiedDomainsResponse, type AuditLogListParams, type AuditLogListResponse, type AuditLogResponse, type AuthResponse, type AuthenticationCreateRequest, type AuthenticationResponse, type AuthenticationStatus, type AuthenticationType, type AutoRechargeConfig, type AutoRechargeUpdateRequest, type BillingCompleteSetupRequest, type BillingProfileResponse, type BillingSetupRequest, type BillingSetupResponse, type BlocklistAddRequest, type BlocklistDataKind, type BlocklistResponse, Cache, type CaptureMethod, type CardDetail, type CardDetailFromLocker, type CardIssuerCreateRequest, type CardIssuerListResponse, type CardIssuerResponse, type CardIssuerUpdateRequest, Cards, type ChangePasswordRequest, Configs, type ConnectorCreateRequest, type ConnectorListResponse, type ConnectorResponse, type ConnectorType, type ConnectorUpdateRequest, type Currency, type CustomerCreateRequest, type CustomerListParams, type CustomerPaymentMethodsListResponse, type CustomerResponse, type CustomerSummary, type CustomerUpdateRequest, type CustomerUser, type DashboardMetadataResponse, Delopay, DelopayAuthenticationError, DelopayError, type DelopayOptions, type DisputeEvidenceRequest, type DisputeListParams, type DisputeResponse, type DisputeStage, type DisputeStatus, type EphemeralKeyCreateRequest, type EphemeralKeyCreateResponse, type EventClass, type EventDeliveryAttemptResponse, type EventDetailResponse, type EventListParams, type EventListResponse, type EventResponse, type EventType, Export, FeatureMatrix, type FeeOwner, type FeeScheduleCreateRequest, type FeeScheduleResponse, type FeeScheduleUpdateRequest, type FeeType, Files, Forex, type ForgotPasswordRequest, type GatewayConnectRequest, type GatewayResponse, type GsmDecision, type GsmRuleCreateRequest, type GsmRuleResponse, type GsmRuleUpdateRequest, type IntentStatus, type InviteUsersRequest, type InviteUsersResponse, type LedgerEntry, type LedgerListParams, type LedgerResponse, type MandateListParams, type MandateResponse, type MandateRevokedResponse, type MandateStatus, type MandateType, type MerchantAccountCreateRequest, type MerchantAccountResponse, type MerchantAccountType, type MerchantAccountUpdateRequest, type MerchantOverviewResponse, type MerchantOverviewStat, type OverviewStat, type OverviewStatsResponse, type PaymentAnalyticsRequest, type PaymentAnalyticsResponse, type PaymentCancelRequest, type PaymentCaptureRequest, type PaymentConfirmRequest, type PaymentCreateRequest, type PaymentLinkListParams, type PaymentLinkListResponse, type PaymentLinkResponse, type PaymentListParams, type PaymentListResponse, type PaymentMethod, type PaymentMethodCreateRequest, type PaymentMethodDeleteResponse, type PaymentMethodListParams, type PaymentMethodResponse, type PaymentMethodType, type PaymentMethodUpdateRequest, type PaymentResponse, type PaymentStat, type PaymentUpdateRequest, type PayoutCreateRequest, type PayoutListParams, type PayoutListResponse, type PayoutResponse, type PayoutStatus, type PayoutType, type PayoutUpdateRequest, type PhoneDetails, type PhoneOtpRequest, type PhoneOtpResponse, type PhoneOtpVerifyRequest, type PhoneOtpVerifyResponse, type PlatformAnalyticsResponse, type PollStatus, type PollStatusResponse, type ProfileAcquirerCreateRequest, type ProfileAcquirerResponse, type ProfileAcquirerUpdateRequest, type ProfileCreateRequest, type ProfileResponse, type ProfileUpdateRequest, type ProjectCreateRequest, type ProjectResponse, type ProjectStats, type ProjectStatsResponse, type ProjectUpdateRequest, type RecoveryCodesResponse, type RefundCreateRequest, type RefundListParams, type RefundListResponse, type RefundResponse, type RefundStatus, type RefundType, type RefundUpdateRequest, type RegionCreateRequest, type RegionResponse, type RegionUpdateRequest, Regions, type RelayRequest, type RelayResponse, type RelayStatus, type RelayType, type RequestFn, type RequestOptions, type ResetPasswordRequest, type RoutingConfigCreateRequest, type RoutingConfigResponse, type ShopCreateRequest, type ShopResponse, type ShopStats, type ShopUpdateRequest, type SignInRequest, type SignUpRequest, type SignUpWithMerchantRequest, type StripeConnectAccountRequest, type StripeConnectAccountResponse, type StripeConnectLinkRequest, type StripeConnectLinkResponse, type SubscriptionCreateRequest, type SubscriptionListParams, type SubscriptionListResponse, type SubscriptionResponse, type SubscriptionUpdateRequest, Subscriptions, type SwitchMerchantRequest, type SwitchProfileRequest, type ThreeDSDecision, type ThreeDsRuleExecuteRequest, type ThreeDsRuleResponse, type TopupRequest, type TopupResponse, type TotpResponse, type TransactionType, type UpdateUserDetailsRequest, type UserResponse, type VerifyOptions, type WebhookDeliveryAttempt, type WebhookEvent, Webhooks };
3453
+ export { type Address, type AddressDetails, type AdminAdjustmentRequest, type AdminAdjustmentResponse, type AdminAnalyticsRequest, type AdminCustomerDetail, type AdminCustomerListParams, type AdminCustomerListResponse, type AdminSignInRequest, type AdminTransactionListParams, type AdminTransactionListResponse, type AllocationListResponse, type AllocationResponse, type AllocationTransferRequest, type AllocationTransferResponse, Analytics, AnalyticsDashboard, type ApiKeyCreateRequest, type ApiKeyCreateResponse, type ApiKeyExpiration, type ApiKeyResponse, type ApiKeyRevokeResponse, type ApiKeyUpdateRequest, type ApplePayVerificationRequest, type ApplePayVerificationResponse, type ApplePayVerifiedDomainsResponse, type AuditLogListParams, type AuditLogListResponse, type AuditLogResponse, type AuthResponse, type AuthenticationCreateRequest, type AuthenticationResponse, type AuthenticationStatus, type AuthenticationType, type AutoRechargeConfig, type AutoRechargeUpdateRequest, type BillingCompleteSetupRequest, type BillingProfileResponse, type BillingSetupRequest, type BillingSetupResponse, type BlocklistAddRequest, type BlocklistDataKind, type BlocklistResponse, Cache, type CaptureMethod, type CardDetail, type CardDetailFromLocker, type CardIssuerCreateRequest, type CardIssuerListResponse, type CardIssuerResponse, type CardIssuerUpdateRequest, Cards, type ChangePasswordRequest, Configs, type ConnectorCreateRequest, type ConnectorListResponse, type ConnectorResponse, type ConnectorType, type ConnectorUpdateRequest, type Currency, type CustomerCreateRequest, type CustomerListParams, type CustomerPaymentMethodsListParams, type CustomerPaymentMethodsListResponse, type CustomerResponse, type CustomerSummary, type CustomerUpdateRequest, type CustomerUser, type DashboardMetadataResponse, Delopay, DelopayAuthenticationError, DelopayError, type DelopayLogger, type DelopayOptions, type DisputeEvidenceRequest, type DisputeListParams, type DisputeResponse, type DisputeStage, type DisputeStatus, type EphemeralKeyCreateRequest, type EphemeralKeyCreateResponse, type EventClass, type EventDeliveryAttemptResponse, type EventDetailResponse, type EventListParams, type EventListResponse, type EventResponse, type EventType, Export, FeatureMatrix, type FeeOwner, type FeeScheduleCreateRequest, type FeeScheduleResponse, type FeeScheduleUpdateRequest, type FeeType, Files, Forex, type ForgotPasswordRequest, type GatewayConnectRequest, type GatewayResponse, type GsmDecision, type GsmRuleCreateRequest, type GsmRuleResponse, type GsmRuleUpdateRequest, type IntentStatus, type InviteUsersRequest, type InviteUsersResponse, type LedgerEntry, type LedgerListParams, type LedgerResponse, type MandateListParams, type MandateResponse, type MandateRevokedResponse, type MandateStatus, type MandateType, type MerchantAccountCreateRequest, type MerchantAccountResponse, type MerchantAccountType, type MerchantAccountUpdateRequest, type MerchantOverviewResponse, type MerchantOverviewStat, type OverviewStat, type OverviewStatsResponse, type PaymentAnalyticsRequest, type PaymentAnalyticsResponse, type PaymentCancelRequest, type PaymentCaptureRequest, type PaymentConfirmRequest, type PaymentCreateRequest, type PaymentLinkListParams, type PaymentLinkListResponse, type PaymentLinkResponse, type PaymentListParams, type PaymentListResponse, type PaymentMethod, type PaymentMethodCreateRequest, type PaymentMethodDeleteResponse, type PaymentMethodListParams, type PaymentMethodResponse, type PaymentMethodType, type PaymentMethodUpdateRequest, type PaymentResponse, type PaymentStat, type PaymentUpdateRequest, type PayoutCreateRequest, type PayoutListParams, type PayoutListResponse, type PayoutResponse, type PayoutStatus, type PayoutType, type PayoutUpdateRequest, type PhoneDetails, type PhoneOtpRequest, type PhoneOtpResponse, type PhoneOtpVerifyRequest, type PhoneOtpVerifyResponse, type PlatformAnalyticsResponse, type PollStatus, type PollStatusResponse, type ProfileAcquirerCreateRequest, type ProfileAcquirerResponse, type ProfileAcquirerUpdateRequest, type ProfileCreateRequest, type ProfileResponse, type ProfileUpdateRequest, type ProjectCreateRequest, type ProjectResponse, type ProjectStats, type ProjectStatsResponse, type ProjectUpdateRequest, type RecoveryCodesResponse, type RefundCreateRequest, type RefundListParams, type RefundListResponse, type RefundResponse, type RefundStatus, type RefundType, type RefundUpdateRequest, type RegionCreateRequest, type RegionResponse, type RegionUpdateRequest, Regions, type RelayRequest, type RelayResponse, type RelayStatus, type RelayType, type RequestFn, type RequestOptions, type ResetPasswordRequest, type RoutingConfigCreateRequest, type RoutingConfigResponse, type ShopCreateRequest, type ShopResponse, type ShopStats, type ShopUpdateRequest, type SignInRequest, type SignUpRequest, type SignUpWithMerchantRequest, type StripeConnectAccountRequest, type StripeConnectAccountResponse, type StripeConnectLinkRequest, type StripeConnectLinkResponse, type SubscriptionCreateRequest, type SubscriptionListParams, type SubscriptionListResponse, type SubscriptionResponse, type SubscriptionUpdateRequest, Subscriptions, type SwitchMerchantRequest, type SwitchProfileRequest, type ThreeDSDecision, type ThreeDsRuleExecuteRequest, type ThreeDsRuleResponse, type TopupRequest, type TopupResponse, type TotpResponse, type TransactionType, type UpdateUserDetailsRequest, type UserResponse, type VerifyOptions, type WebhookDeliveryAttempt, type WebhookEvent, Webhooks };