@circle-fin/provider-cctp-v2 1.8.2 → 1.8.4

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.
Files changed (7) hide show
  1. package/CHANGELOG.md +34 -10
  2. package/index.cjs +3224 -3444
  3. package/index.d.cts +6814 -0
  4. package/index.d.mts +6814 -0
  5. package/index.d.ts +47 -5
  6. package/index.mjs +3222 -3442
  7. package/package.json +12 -5
package/index.d.ts CHANGED
@@ -3279,8 +3279,14 @@ interface AdapterCapabilities {
3279
3279
  /**
3280
3280
  * The set of blockchain networks this adapter supports.
3281
3281
  * Used for validation, capability discovery, and to restrict operations to supported chains.
3282
+ *
3283
+ * @remarks
3284
+ * Typed `readonly` to match the `@core/adapter-base` `AdapterCapabilities`
3285
+ * shape, so the /next adapters (which preserve `readonly` capabilities per
3286
+ * PR #853 A1) remain structurally assignable to this legacy `Adapter`
3287
+ * contract. The collection is only ever read, never mutated.
3282
3288
  */
3283
- supportedChains: ChainDefinition[];
3289
+ supportedChains: readonly ChainDefinition[];
3284
3290
  }
3285
3291
  /**
3286
3292
  * Abstract class defining the standard interface for an adapter that interacts with a specific blockchain.
@@ -3588,7 +3594,9 @@ declare abstract class Adapter<TAdapterCapabilities extends AdapterCapabilities
3588
3594
  * These settings control the behavior of the API polling process:
3589
3595
  * - timeout: Maximum time (ms) to wait for each request before aborting
3590
3596
  * - maxRetries: Maximum number of retry attempts for failed requests
3591
- * - retryDelay: Time (ms) to wait between retry attempts
3597
+ * - retryDelay: Base delay (ms); constant wait for `'fixed'` or exponential seed for `'exponential'`
3598
+ * - backoff: Retry-delay strategy, `'fixed'` (default) or `'exponential'`
3599
+ * - maxRetryDelayMs: Optional ceiling (ms) for a single backoff wait
3592
3600
  * - headers: Optional HTTP headers to include with each request
3593
3601
  */
3594
3602
  interface ApiPollingConfig {
@@ -3596,8 +3604,28 @@ interface ApiPollingConfig {
3596
3604
  timeout: number;
3597
3605
  /** Maximum number of retry attempts for failed requests */
3598
3606
  maxRetries: number;
3599
- /** Time in milliseconds to wait between retry attempts */
3607
+ /**
3608
+ * Delay in milliseconds between retry attempts. With the default
3609
+ * `backoff: 'fixed'` strategy this is the constant wait; with
3610
+ * `backoff: 'exponential'` it is the base the exponential backoff grows
3611
+ * from (see {@link pollApiWithValidation}).
3612
+ */
3600
3613
  retryDelay: number;
3614
+ /**
3615
+ * Retry-delay strategy. `'fixed'` (the default when omitted) waits a
3616
+ * constant `retryDelay` between attempts; `'exponential'` grows the wait
3617
+ * exponentially off `retryDelay` and randomizes it with full jitter, which
3618
+ * spreads out retries so rate-limited (429) bursts do not retry in
3619
+ * lockstep. Opt in per caller; existing callers keep the fixed delay.
3620
+ */
3621
+ backoff?: 'fixed' | 'exponential' | undefined;
3622
+ /**
3623
+ * Optional ceiling, in milliseconds, for a single backoff wait. Only
3624
+ * applies when `backoff` is `'exponential'`: the exponential delay is
3625
+ * capped at this value before jitter is applied. Defaults to
3626
+ * {@link DEFAULT_MAX_RETRY_DELAY_MS} when omitted.
3627
+ */
3628
+ maxRetryDelayMs?: number | undefined;
3601
3629
  /** Optional HTTP headers to include with requests */
3602
3630
  headers?: Record<string, string> | undefined;
3603
3631
  }
@@ -4840,6 +4868,18 @@ interface InvocationMeta {
4840
4868
  * Example: [app, kit, provider]
4841
4869
  */
4842
4870
  readonly callers?: readonly Caller[] | undefined;
4871
+ /**
4872
+ * Cooperative cancellation signal for the invocation.
4873
+ *
4874
+ * @remarks
4875
+ * When provided, the signal is threaded onto the resolved
4876
+ * {@link InvocationContext} so operations can forward it to
4877
+ * cancellable work (e.g. `fetch`, timers, adapter calls). Optional and
4878
+ * backwards-compatible: callers that do not support cancellation simply
4879
+ * omit it. Aborting the signal is the caller's responsibility; the
4880
+ * runtime only propagates it.
4881
+ */
4882
+ readonly signal?: AbortSignal | undefined;
4843
4883
  }
4844
4884
 
4845
4885
  /**
@@ -6491,8 +6531,10 @@ declare class CCTPV2BridgingProvider extends BridgingProvider<CCTPV2Actions> imp
6491
6531
  *
6492
6532
  * This method validates that both chains have CCTP v2 contracts deployed and configured.
6493
6533
  * It uses the `isCCTPV2Supported` guard function to check each chain individually.
6494
- * When `useForwarder` is `true`, additionally checks that the source chain supports
6495
- * forwarding as source and the destination chain supports forwarding as destination.
6534
+ * When `useForwarder` is `true`, additionally checks that the destination chain
6535
+ * supports forwarding as a destination. The source chain's forwarding support is not
6536
+ * checked: today's Forwarding Service operates on the destination, so any CCTP v2 chain
6537
+ * can originate a forwarded transfer.
6496
6538
  *
6497
6539
  * @param source - The source chain definition to check for CCTP v2 support
6498
6540
  * @param destination - The destination chain definition to check for CCTP v2 support