@atumlabs/payment-gateway-client 2.0.0 → 2.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
@@ -65,7 +65,6 @@ type OpenAPIConfig = {
65
65
  response: Interceptors<AxiosResponse>;
66
66
  };
67
67
  };
68
- declare const OpenAPI: OpenAPIConfig;
69
68
 
70
69
  declare abstract class BaseHttpRequest {
71
70
  readonly config: OpenAPIConfig;
@@ -203,7 +202,10 @@ type PaymentRequest = {
203
202
  */
204
203
  account: string;
205
204
  /**
206
- * The API endpoint URL where the verification service can be reached
205
+ * Origin of the fulfillment verifier service, with no path — the caller
206
+ * appends the verifier's own API paths. The gateway's `/defaults` response
207
+ * supplies the default fulfillment verifier for each chain.
208
+ *
207
209
  */
208
210
  endpoint: string;
209
211
  };
@@ -443,10 +445,16 @@ type VerifiableCredential = {
443
445
  };
444
446
  };
445
447
  /**
446
- * Response from submitting a payment request. If processing completes within 30 seconds,
447
- * the response will include a fulfillment_confirmation with full settlement details.
448
- * Otherwise, you'll receive a payment_id that you can use to poll the
449
- * /v1/payments/{paymentId}/status endpoint for updates.
448
+ * Response from submitting a payment request. If settlement completes inside the
449
+ * gateway's synchronous window, the response includes a fulfillment_confirmation with
450
+ * full settlement details. Otherwise you receive a payment_id plus the payment's
451
+ * current `status`, and can poll /v1/payments/{paymentId}/status for updates.
452
+ *
453
+ * Read `status` before deciding what to do next: a `pending` payment is in flight and
454
+ * must NOT be re-submitted under a new request_id (that would be a second payment),
455
+ * whereas a `failed` or `cancelled` one is terminal — re-submitting it under the SAME
456
+ * request_id resolves to the same terminal payment, so a genuine re-attempt needs a
457
+ * new request_id.
450
458
  *
451
459
  */
452
460
  type PaymentResponse = {
@@ -454,9 +462,71 @@ type PaymentResponse = {
454
462
  * Unique ID for tracking this payment. Save this to check status later.
455
463
  *
456
464
  */
457
- payment_id?: string;
465
+ payment_id: string;
466
+ /**
467
+ * Current status of the payment, with the same meaning as on
468
+ * /v1/payments/{paymentId}/status:
469
+ * - `pending`: accepted and being processed
470
+ * - `completed`: successfully delivered
471
+ * - `failed`: failed (funds returned if escrowed)
472
+ * - `cancelled`: cancelled before completion
473
+ *
474
+ * Present on every response. `completed` is always accompanied by
475
+ * fulfillment_confirmation; `failed` is accompanied by `error` where a reason has
476
+ * been recorded.
477
+ *
478
+ */
479
+ status: 'pending' | 'completed' | 'failed' | 'cancelled';
480
+ /**
481
+ * Whether this response describes a payment that already existed, rather than one
482
+ * created by this request. `true` means the request_id had been used before and you
483
+ * are being handed the ORIGINAL payment — no second payment was created and nothing
484
+ * additional was charged.
485
+ *
486
+ * **Re-attempting a payment.** Re-submit the same request and you get the same payment
487
+ * back. You may re-send the original bytes unchanged: the deadlines will have expired by
488
+ * then — `quote_deadline` bounds the auction and is short, while this endpoint may hold a
489
+ * submission for up to 30 seconds — and an expired deadline on a re-submission is not an
490
+ * error, because the request is resolved onto the payment that already exists rather than
491
+ * used to create one.
492
+ *
493
+ * Re-signing with fresh deadlines is equally fine and returns the same payment. What you
494
+ * must NOT change is the request_id, and what you must not change under it is the
495
+ * payment's economics — source, destination, fulfillment_amount, max_source_amount — which
496
+ * are rejected with 409 IDEMPOTENCY_TERMS_MISMATCH. Deadlines and the signature are
497
+ * exempt precisely so that a re-attempt is possible.
498
+ *
499
+ * A genuinely new payment needs a NEW request_id. In particular a `failed` payment is
500
+ * terminal: re-submitting its request_id keeps returning that dead payment, so recovering
501
+ * means starting a new one under a new key.
502
+ *
503
+ * Present on every response, `false` for a newly created payment. A response without
504
+ * the field is from a gateway predating it, not a newly created payment.
505
+ *
506
+ * This is the field to read when reconciling a suspected double charge: two
507
+ * submissions where the second reports `true` are one payment, whereas two both
508
+ * reporting `false` are two. It says nothing about how far the payment has got —
509
+ * read `status` for that.
510
+ *
511
+ */
512
+ idempotent_replay: boolean;
458
513
  fulfillment_confirmation?: FulfillmentConfirmation;
514
+ error?: PaymentError;
459
515
  };
516
+ /**
517
+ * Current status of the payment, with the same meaning as on
518
+ * /v1/payments/{paymentId}/status:
519
+ * - `pending`: accepted and being processed
520
+ * - `completed`: successfully delivered
521
+ * - `failed`: failed (funds returned if escrowed)
522
+ * - `cancelled`: cancelled before completion
523
+ *
524
+ * Present on every response. `completed` is always accompanied by
525
+ * fulfillment_confirmation; `failed` is accompanied by `error` where a reason has
526
+ * been recorded.
527
+ *
528
+ */
529
+ type status2 = 'pending' | 'completed' | 'failed' | 'cancelled';
460
530
  type GetPaymentStatusResponse = {
461
531
  /**
462
532
  * The payment ID you're checking status for.
@@ -479,15 +549,6 @@ type GetPaymentStatusResponse = {
479
549
  fulfillment_confirmation?: FulfillmentConfirmation;
480
550
  error?: PaymentError;
481
551
  };
482
- /**
483
- * Current status of your payment:
484
- * - `pending`: Payment is being processed
485
- * - `completed`: Payment successfully delivered
486
- * - `failed`: Payment failed (funds returned if escrowed)
487
- * - `cancelled`: Payment was cancelled before completion
488
- *
489
- */
490
- type status2 = 'pending' | 'completed' | 'failed' | 'cancelled';
491
552
  /**
492
553
  * Error details when payment status is "failed".
493
554
  * Only present when the payment has failed. Contains a machine-readable
@@ -893,7 +954,10 @@ type CreateQuoteRequest = {
893
954
  */
894
955
  account: string;
895
956
  /**
896
- * The API endpoint URL where the verification service can be reached
957
+ * Origin of the fulfillment verifier service, with no path — the caller
958
+ * appends the verifier's own API paths. The gateway's `/defaults` response
959
+ * supplies the default fulfillment verifier for each chain.
960
+ *
897
961
  */
898
962
  endpoint: string;
899
963
  };
@@ -975,7 +1039,7 @@ type Quote = {
975
1039
  quote_id: string;
976
1040
  /**
977
1041
  * The settler-signed FulfillmentQuote (structurally the canonical FulfillmentQuote/v1
978
- * declaration at https://schemas.atum.network/declarations/FulfillmentQuote/v1), returned
1042
+ * declaration at https://schemas.atum.xyz/declarations/FulfillmentQuote/v1), returned
979
1043
  * verbatim as an opaque signed document. A client recomputes quote_hash over the returned
980
1044
  * bytes and verifies the settler signature, then re-embeds them into
981
1045
  * bid_award.fulfillment_quote_json at award. quote_hash is canonicalization-based
@@ -997,7 +1061,7 @@ type AwardedQuote = {
997
1061
  quote_id: string;
998
1062
  /**
999
1063
  * The settler-signed FulfillmentQuote (structurally the canonical FulfillmentQuote/v1
1000
- * declaration at https://schemas.atum.network/declarations/FulfillmentQuote/v1), returned
1064
+ * declaration at https://schemas.atum.xyz/declarations/FulfillmentQuote/v1), returned
1001
1065
  * verbatim as an opaque signed document. A client recomputes quote_hash over the returned
1002
1066
  * bytes and verifies the settler signature, then re-embeds them into
1003
1067
  * bid_award.fulfillment_quote_json at award. quote_hash is canonicalization-based
@@ -1322,6 +1386,14 @@ type $OpenApiTs = {
1322
1386
  * Payment declined during counterparty authorization
1323
1387
  */
1324
1388
  403: ErrorResponse;
1389
+ /**
1390
+ * The `request_id` has already been used for a payment with different economics
1391
+ * (`IDEMPOTENCY_TERMS_MISMATCH`). Re-submitting one `request_id` is how a retry is
1392
+ * made safe, so it must identify one payment; use a distinct `request_id` per
1393
+ * payment.
1394
+ *
1395
+ */
1396
+ 409: ErrorResponse;
1325
1397
  /**
1326
1398
  * Payment request too large to process
1327
1399
  */
@@ -1550,8 +1622,26 @@ declare class PaymentsService {
1550
1622
  * 2. Find optimal settlement routes across chains/assets
1551
1623
  * 3. Secure funds in escrow
1552
1624
  * 4. Coordinate with settlement agents for execution
1553
- * 5. Return a real-time result if processing completes within 30 seconds,
1554
- * otherwise return a payment ID for status polling
1625
+ * 5. Return a real-time result if settlement completes inside the synchronous window,
1626
+ * otherwise return a payment ID and status for polling
1627
+ *
1628
+ * **Idempotency.** `request_id` is the idempotency key, scoped to the source account
1629
+ * and originator. Submitting the same `request_id` again returns the ORIGINAL payment
1630
+ * instead of charging a second time, so a client whose request timed out or failed
1631
+ * in transit can safely re-submit.
1632
+ *
1633
+ * Because a re-submission must be admissible on its own, some fields legitimately
1634
+ * differ between attempts and are excluded from the comparison: `quote_deadline` and
1635
+ * `fulfillment_deadline` (both must be in the future, so a later attempt has to move
1636
+ * them), and the `sender_auth` signature they are signed into.
1637
+ *
1638
+ * What must NOT differ is the payment's economics — source account and asset,
1639
+ * destination accounts and assets, `fulfillment_amount`, and `max_source_amount` (the
1640
+ * payer's own risk cap; lowering it on a retry describes a different payment, not the
1641
+ * same one with less headroom). Re-using one `request_id` for a genuinely different
1642
+ * payment is a client bug that would otherwise be silently collapsed onto the first
1643
+ * payment, so it is rejected with `409` and `IDEMPOTENCY_TERMS_MISMATCH`. Use a
1644
+ * distinct `request_id` per payment.
1555
1645
  *
1556
1646
  * @param data The data for the request.
1557
1647
  * @param data.requestBody
@@ -1996,8 +2086,8 @@ declare const $PaymentRequest: {
1996
2086
  readonly endpoint: {
1997
2087
  readonly type: "string";
1998
2088
  readonly format: "uri";
1999
- readonly description: "The API endpoint URL where the verification service can be reached";
2000
- readonly example: "https://verifier.atum.network/api/v1/verify";
2089
+ readonly description: "Origin of the fulfillment verifier service, with no path — the caller\nappends the verifier's own API paths. The gateway's `/defaults` response\nsupplies the default fulfillment verifier for each chain.\n";
2090
+ readonly example: "https://veri-fill.production-testnet.atum.xyz";
2001
2091
  };
2002
2092
  };
2003
2093
  };
@@ -2246,16 +2336,30 @@ declare const $VerifiableCredential: {
2246
2336
  };
2247
2337
  declare const $PaymentResponse: {
2248
2338
  readonly type: "object";
2249
- readonly description: "Response from submitting a payment request. If processing completes within 30 seconds,\nthe response will include a fulfillment_confirmation with full settlement details.\nOtherwise, you'll receive a payment_id that you can use to poll the\n/v1/payments/{paymentId}/status endpoint for updates.\n";
2339
+ readonly description: "Response from submitting a payment request. If settlement completes inside the\ngateway's synchronous window, the response includes a fulfillment_confirmation with\nfull settlement details. Otherwise you receive a payment_id plus the payment's\ncurrent `status`, and can poll /v1/payments/{paymentId}/status for updates.\n\nRead `status` before deciding what to do next: a `pending` payment is in flight and\nmust NOT be re-submitted under a new request_id (that would be a second payment),\nwhereas a `failed` or `cancelled` one is terminal — re-submitting it under the SAME\nrequest_id resolves to the same terminal payment, so a genuine re-attempt needs a\nnew request_id.\n";
2340
+ readonly required: readonly ["payment_id", "status", "idempotent_replay"];
2250
2341
  readonly properties: {
2251
2342
  readonly payment_id: {
2252
2343
  readonly type: "string";
2253
2344
  readonly description: "Unique ID for tracking this payment. Save this to check status later.\n";
2254
2345
  readonly example: "550e8400-e29b-41d4-a716-446655440000";
2255
2346
  };
2347
+ readonly status: {
2348
+ readonly type: "string";
2349
+ readonly enum: readonly ["pending", "completed", "failed", "cancelled"];
2350
+ readonly description: "Current status of the payment, with the same meaning as on\n/v1/payments/{paymentId}/status:\n- `pending`: accepted and being processed\n- `completed`: successfully delivered\n- `failed`: failed (funds returned if escrowed)\n- `cancelled`: cancelled before completion\n\nPresent on every response. `completed` is always accompanied by\nfulfillment_confirmation; `failed` is accompanied by `error` where a reason has\nbeen recorded.\n";
2351
+ };
2352
+ readonly idempotent_replay: {
2353
+ readonly type: "boolean";
2354
+ readonly description: "Whether this response describes a payment that already existed, rather than one\ncreated by this request. `true` means the request_id had been used before and you\nare being handed the ORIGINAL payment — no second payment was created and nothing\nadditional was charged.\n\n**Re-attempting a payment.** Re-submit the same request and you get the same payment\nback. You may re-send the original bytes unchanged: the deadlines will have expired by\nthen — `quote_deadline` bounds the auction and is short, while this endpoint may hold a\nsubmission for up to 30 seconds — and an expired deadline on a re-submission is not an\nerror, because the request is resolved onto the payment that already exists rather than\nused to create one.\n\nRe-signing with fresh deadlines is equally fine and returns the same payment. What you\nmust NOT change is the request_id, and what you must not change under it is the\npayment's economics — source, destination, fulfillment_amount, max_source_amount — which\nare rejected with 409 IDEMPOTENCY_TERMS_MISMATCH. Deadlines and the signature are\nexempt precisely so that a re-attempt is possible.\n\nA genuinely new payment needs a NEW request_id. In particular a `failed` payment is\nterminal: re-submitting its request_id keeps returning that dead payment, so recovering\nmeans starting a new one under a new key.\n\nPresent on every response, `false` for a newly created payment. A response without\nthe field is from a gateway predating it, not a newly created payment.\n\nThis is the field to read when reconciling a suspected double charge: two\nsubmissions where the second reports `true` are one payment, whereas two both\nreporting `false` are two. It says nothing about how far the payment has got —\nread `status` for that.\n";
2355
+ readonly example: false;
2356
+ };
2256
2357
  readonly fulfillment_confirmation: {
2257
2358
  readonly $ref: "#/components/schemas/FulfillmentConfirmation";
2258
2359
  };
2360
+ readonly error: {
2361
+ readonly $ref: "#/components/schemas/PaymentError";
2362
+ };
2259
2363
  };
2260
2364
  };
2261
2365
  declare const $GetPaymentStatusResponse: {
@@ -2705,8 +2809,8 @@ declare const $CreateQuoteRequest: {
2705
2809
  readonly endpoint: {
2706
2810
  readonly type: "string";
2707
2811
  readonly format: "uri";
2708
- readonly description: "The API endpoint URL where the verification service can be reached";
2709
- readonly example: "https://verifier.atum.network/api/v1/verify";
2812
+ readonly description: "Origin of the fulfillment verifier service, with no path — the caller\nappends the verifier's own API paths. The gateway's `/defaults` response\nsupplies the default fulfillment verifier for each chain.\n";
2813
+ readonly example: "https://veri-fill.production-testnet.atum.xyz";
2710
2814
  };
2711
2815
  };
2712
2816
  };
@@ -2817,7 +2921,7 @@ declare const $Quote: {
2817
2921
  };
2818
2922
  readonly fulfillment_quote: {
2819
2923
  readonly type: "object";
2820
- readonly description: "The settler-signed FulfillmentQuote (structurally the canonical FulfillmentQuote/v1\ndeclaration at https://schemas.atum.network/declarations/FulfillmentQuote/v1), returned\nverbatim as an opaque signed document. A client recomputes quote_hash over the returned\nbytes and verifies the settler signature, then re-embeds them into\nbid_award.fulfillment_quote_json at award. quote_hash is canonicalization-based\n(URDNA2015), so it is stable across JSON key-order/whitespace normalization. The\nreturned bytes are hash-equivalent to, but not necessarily byte-identical with, what the\nsettler emitted (quotes are stored as JSONB, which normalizes on write). The gateway\nstill never re-serializes the quote through a typed struct (that renormalizes timestamp\nvalues and WOULD change quote_hash), so the Go binding exposes it as a raw JSON passthrough.\n";
2924
+ readonly description: "The settler-signed FulfillmentQuote (structurally the canonical FulfillmentQuote/v1\ndeclaration at https://schemas.atum.xyz/declarations/FulfillmentQuote/v1), returned\nverbatim as an opaque signed document. A client recomputes quote_hash over the returned\nbytes and verifies the settler signature, then re-embeds them into\nbid_award.fulfillment_quote_json at award. quote_hash is canonicalization-based\n(URDNA2015), so it is stable across JSON key-order/whitespace normalization. The\nreturned bytes are hash-equivalent to, but not necessarily byte-identical with, what the\nsettler emitted (quotes are stored as JSONB, which normalizes on write). The gateway\nstill never re-serializes the quote through a typed struct (that renormalizes timestamp\nvalues and WOULD change quote_hash), so the Go binding exposes it as a raw JSON passthrough.\n";
2821
2925
  readonly 'x-go-type': "json.RawMessage";
2822
2926
  };
2823
2927
  };
@@ -2833,7 +2937,7 @@ declare const $AwardedQuote: {
2833
2937
  };
2834
2938
  readonly fulfillment_quote: {
2835
2939
  readonly type: "object";
2836
- readonly description: "The settler-signed FulfillmentQuote (structurally the canonical FulfillmentQuote/v1\ndeclaration at https://schemas.atum.network/declarations/FulfillmentQuote/v1), returned\nverbatim as an opaque signed document. A client recomputes quote_hash over the returned\nbytes and verifies the settler signature, then re-embeds them into\nbid_award.fulfillment_quote_json at award. quote_hash is canonicalization-based\n(URDNA2015), so it is stable across JSON key-order/whitespace normalization. The\nreturned bytes are hash-equivalent to, but not necessarily byte-identical with, what the\nsettler emitted (quotes are stored as JSONB, which normalizes on write). The gateway\nstill never re-serializes the quote through a typed struct (that renormalizes timestamp\nvalues and WOULD change quote_hash), so the Go binding exposes it as a raw JSON passthrough.\n";
2940
+ readonly description: "The settler-signed FulfillmentQuote (structurally the canonical FulfillmentQuote/v1\ndeclaration at https://schemas.atum.xyz/declarations/FulfillmentQuote/v1), returned\nverbatim as an opaque signed document. A client recomputes quote_hash over the returned\nbytes and verifies the settler signature, then re-embeds them into\nbid_award.fulfillment_quote_json at award. quote_hash is canonicalization-based\n(URDNA2015), so it is stable across JSON key-order/whitespace normalization. The\nreturned bytes are hash-equivalent to, but not necessarily byte-identical with, what the\nsettler emitted (quotes are stored as JSONB, which normalizes on write). The gateway\nstill never re-serializes the quote through a typed struct (that renormalizes timestamp\nvalues and WOULD change quote_hash), so the Go binding exposes it as a raw JSON passthrough.\n";
2837
2941
  readonly 'x-go-type': "json.RawMessage";
2838
2942
  };
2839
2943
  readonly awarded_payment_id: {
@@ -3096,6 +3200,38 @@ declare class ApiError extends Error {
3096
3200
  constructor(request: ApiRequestOptions, response: ApiResult, message: string);
3097
3201
  }
3098
3202
 
3203
+ /**
3204
+ * Type guard for the SDK's transport-level error.
3205
+ *
3206
+ * Every non-2xx gateway response is thrown by the generated client as an
3207
+ * {@link ApiError}, which also carries the transport detail (`status`, `url`).
3208
+ */
3209
+ declare function isApiError(err: unknown): err is ApiError;
3210
+ /**
3211
+ * Return the typed, public-facing gateway error carried by a caught
3212
+ * {@link ApiError}, or `undefined` when the value is not an `ApiError` or its
3213
+ * body is not the public {@link ErrorResponse} shape.
3214
+ *
3215
+ * The gateway serializes errors as an {@link ErrorResponse}
3216
+ * (`{ code, message, request_id?, docs_url?, domain? }`), but the generated
3217
+ * client widens the parsed body to `unknown`. This helper narrows it back so
3218
+ * consumers can branch on `code` and quote `request_id` to support. It only
3219
+ * ever exposes this outward-facing shape — never any internal error taxonomy.
3220
+ *
3221
+ * @example
3222
+ * try {
3223
+ * await client.payments.submitPayment({ requestBody });
3224
+ * } catch (err) {
3225
+ * const gwError = getErrorResponse(err);
3226
+ * if (gwError) {
3227
+ * console.error(gwError.code, gwError.message, gwError.request_id);
3228
+ * } else {
3229
+ * throw err;
3230
+ * }
3231
+ * }
3232
+ */
3233
+ declare function getErrorResponse(err: unknown): ErrorResponse | undefined;
3234
+
3099
3235
  /**
3100
3236
  * EVM Permit2 PermitWitnessTransferFrom deposit prehash + EIP-712 digest.
3101
3237
  *
@@ -3486,6 +3622,21 @@ declare const PAYMENT_REQUEST_VERSION = "1.0";
3486
3622
  declare function signPaymentRequest(request: PaymentRequest, signer: SenderSigner): Promise<PaymentRequest>;
3487
3623
  type HttpRequestConstructor = new (config: OpenAPIConfig) => BaseHttpRequest;
3488
3624
  declare const defaultGateway: string;
3625
+ /**
3626
+ * Default request-layer configuration, with `BASE` set to this package's default
3627
+ * gateway ({@link defaultGateway}, production-testnet).
3628
+ *
3629
+ * The generated value mirrors the first `servers` entry of the OpenAPI contract,
3630
+ * which is mainnet. This package defaults to testnet instead, so a client created
3631
+ * without an explicit URL never targets a live-funds environment. The override
3632
+ * lives here rather than in `src/generated/`, which is reproduced from the
3633
+ * contract and stays in sync with it.
3634
+ *
3635
+ * Exported for callers that want the default configuration shape.
3636
+ * {@link PaymentGatewayClient} does not read it: the client resolves its own
3637
+ * `BASE` and passes it explicitly.
3638
+ */
3639
+ declare const OpenAPI: OpenAPIConfig;
3489
3640
  /**
3490
3641
  * Default quote-collection window for {@link PaymentGatewayClient.prepareQuoteRequest}
3491
3642
  * (`quote_deadline = now + this`, in seconds). Chosen as the largest value that still
@@ -3658,4 +3809,4 @@ declare class PaymentGatewayClient extends PaymentGatewayClient$1 {
3658
3809
  }): Promise<CreateQuoteRequest>;
3659
3810
  }
3660
3811
 
3661
- export { $AuthorizationResult, $AwardAccepted, $AwardRequest, $AwardResponse, $AwardedPayment, $AwardedQuote, $BidAward, $CreateQuoteRequest, $DataIntegrityProof, $ErrorResponse, $FulfillmentConfirmation, $GetPaymentStatusResponse, type $OpenApiTs, $OwnedAsset, $PaymentBlockchainContext, $PaymentError, $PaymentRequest, $PaymentResponse, $PaymentSummary, $PaymentTimelineResponse, $PreparePaymentRequest, $PreparePaymentResponse, $Quote, $QuoteRequestAccepted, $QuoteRequestResponse, $QuoteRequestStatusResponse, $ResolvePaymentResponse, $SenderAuth, $SenderAuthMessageScheme, $SignedMessage, $TimelineError, $TimelineStep, $VerifiableCredential, $VerifiableCredentialAuth, ApiError, type ApiRequestOptions, type ApiResult, type AuthorizationResult, AuthorizationsService, type AuthorizePaymentData, type AuthorizePaymentResponse, type AwardAccepted, type AwardQuoteData, type AwardQuoteResponse, type AwardRequest, type AwardResponse, type AwardedPayment, type AwardedQuote, type BidAward, CancelError, CancelablePromise, type ChainDefaults, type CreateQuoteRequest, type CreateQuoteRequestData, type CreateQuoteRequestResponse, DEFAULT_FULFILLMENT_DEADLINE_SECONDS, DEFAULT_PAYMENT_QUOTE_DEADLINE_SECONDS, DEFAULT_QUOTE_DEADLINE_SECONDS, DEPOSIT_MESSAGE_SIZE, type DataIntegrityProof, type ErrorResponse, type FulfillmentConfirmation, type GetPaymentStatusData, type GetPaymentStatusResponse, type GetPaymentStatusResponse2, type GetPaymentTimelineData, type GetPaymentTimelineResponse, type GetQuoteRequestStatusData, type GetQuoteRequestStatusResponse, type HealthCheckResponse, HealthService, Interceptors, MAX_VALID_SLOT, type OnCancel, OpenAPI, type OpenAPIConfig, type OwnedAsset, PAYMENT_REQUEST_VERSION, PERMIT2_CONTRACT_ADDRESS, type PaymentBlockchainContext, type PaymentError, PaymentGatewayClient, type PaymentRequest, type PaymentResponse, type PaymentSummary, type PaymentTimelineResponse, PaymentsService, type PermitWitnessTransferFromParams, type PreparePaymentData, type PreparePaymentRequest, type PreparePaymentResponse, type PreparePaymentResponse2, type Quote, type QuoteRequestAccepted, type QuoteRequestResponse, type QuoteRequestStatusResponse, QuoteRequestsService, REPLAY_HORIZON_SECS, type ResolvePaymentData, type ResolvePaymentResponse, type ResolvePaymentResponse2, type SenderAuth, type SenderAuthMessageScheme, type SenderSignature, type SenderSigner, type SenderSignerOptions, type SignedMessage, type SolanaClusterUnixTimeReader, type SolanaDepositParams, type SolanaDepositPrehash, type SubmitPaymentData, type SubmitPaymentResponse, TOTAL_BUCKETS, type TimelineError, type TimelineStep, type TurnkeyConfig, TurnkeySenderSigner, type TvmPermitWitnessTransferFromParams, type VerifiableCredential, type VerifiableCredentialAuth, base58ToBytes, base58ToHex, bytesToHex, createPermitWitnessTransferFromPrehash, createSenderSigner, createSolanaDepositPrehash, createTvmPermitWitnessTransferFromPrehash, defaultGateway, type domain, encodeU64LE, type error_code, generateSolanaNonce, generateSolanaPaymentId, hashPermitWitnessTransferFrom, hashRequestId, hashSolanaDeposit, hashTvmPermitWitnessTransferFrom, hexToBytes, maskChainId, normalizeAddress, resolveTurnkeyAddresses, signPaymentRequest, type status, type status2, type status3, type status4, type status5, type status6, type status7, type status8, type status9 };
3812
+ export { $AuthorizationResult, $AwardAccepted, $AwardRequest, $AwardResponse, $AwardedPayment, $AwardedQuote, $BidAward, $CreateQuoteRequest, $DataIntegrityProof, $ErrorResponse, $FulfillmentConfirmation, $GetPaymentStatusResponse, type $OpenApiTs, $OwnedAsset, $PaymentBlockchainContext, $PaymentError, $PaymentRequest, $PaymentResponse, $PaymentSummary, $PaymentTimelineResponse, $PreparePaymentRequest, $PreparePaymentResponse, $Quote, $QuoteRequestAccepted, $QuoteRequestResponse, $QuoteRequestStatusResponse, $ResolvePaymentResponse, $SenderAuth, $SenderAuthMessageScheme, $SignedMessage, $TimelineError, $TimelineStep, $VerifiableCredential, $VerifiableCredentialAuth, ApiError, type ApiRequestOptions, type ApiResult, type AuthorizationResult, AuthorizationsService, type AuthorizePaymentData, type AuthorizePaymentResponse, type AwardAccepted, type AwardQuoteData, type AwardQuoteResponse, type AwardRequest, type AwardResponse, type AwardedPayment, type AwardedQuote, type BidAward, CancelError, CancelablePromise, type ChainDefaults, type CreateQuoteRequest, type CreateQuoteRequestData, type CreateQuoteRequestResponse, DEFAULT_FULFILLMENT_DEADLINE_SECONDS, DEFAULT_PAYMENT_QUOTE_DEADLINE_SECONDS, DEFAULT_QUOTE_DEADLINE_SECONDS, DEPOSIT_MESSAGE_SIZE, type DataIntegrityProof, type ErrorResponse, type FulfillmentConfirmation, type GetPaymentStatusData, type GetPaymentStatusResponse, type GetPaymentStatusResponse2, type GetPaymentTimelineData, type GetPaymentTimelineResponse, type GetQuoteRequestStatusData, type GetQuoteRequestStatusResponse, type HealthCheckResponse, HealthService, Interceptors, MAX_VALID_SLOT, type OnCancel, OpenAPI, type OpenAPIConfig, type OwnedAsset, PAYMENT_REQUEST_VERSION, PERMIT2_CONTRACT_ADDRESS, type PaymentBlockchainContext, type PaymentError, PaymentGatewayClient, type PaymentRequest, type PaymentResponse, type PaymentSummary, type PaymentTimelineResponse, PaymentsService, type PermitWitnessTransferFromParams, type PreparePaymentData, type PreparePaymentRequest, type PreparePaymentResponse, type PreparePaymentResponse2, type Quote, type QuoteRequestAccepted, type QuoteRequestResponse, type QuoteRequestStatusResponse, QuoteRequestsService, REPLAY_HORIZON_SECS, type ResolvePaymentData, type ResolvePaymentResponse, type ResolvePaymentResponse2, type SenderAuth, type SenderAuthMessageScheme, type SenderSignature, type SenderSigner, type SenderSignerOptions, type SignedMessage, type SolanaClusterUnixTimeReader, type SolanaDepositParams, type SolanaDepositPrehash, type SubmitPaymentData, type SubmitPaymentResponse, TOTAL_BUCKETS, type TimelineError, type TimelineStep, type TurnkeyConfig, TurnkeySenderSigner, type TvmPermitWitnessTransferFromParams, type VerifiableCredential, type VerifiableCredentialAuth, base58ToBytes, base58ToHex, bytesToHex, createPermitWitnessTransferFromPrehash, createSenderSigner, createSolanaDepositPrehash, createTvmPermitWitnessTransferFromPrehash, defaultGateway, type domain, encodeU64LE, type error_code, generateSolanaNonce, generateSolanaPaymentId, getErrorResponse, hashPermitWitnessTransferFrom, hashRequestId, hashSolanaDeposit, hashTvmPermitWitnessTransferFrom, hexToBytes, isApiError, maskChainId, normalizeAddress, resolveTurnkeyAddresses, signPaymentRequest, type status, type status2, type status3, type status4, type status5, type status6, type status7, type status8, type status9 };