@hyperlane-xyz/sdk 41.3.1 → 42.0.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.
Files changed (166) hide show
  1. package/dist/ccip/consts.d.ts.map +1 -1
  2. package/dist/ccip/consts.js +20 -0
  3. package/dist/ccip/consts.js.map +1 -1
  4. package/dist/consts/multisigIsm.d.ts.map +1 -1
  5. package/dist/consts/multisigIsm.js +20 -0
  6. package/dist/consts/multisigIsm.js.map +1 -1
  7. package/dist/contracts/contracts.d.ts.map +1 -1
  8. package/dist/contracts/contracts.js +15 -0
  9. package/dist/contracts/contracts.js.map +1 -1
  10. package/dist/contracts/contracts.test.d.ts +2 -0
  11. package/dist/contracts/contracts.test.d.ts.map +1 -0
  12. package/dist/contracts/contracts.test.js +88 -0
  13. package/dist/contracts/contracts.test.js.map +1 -0
  14. package/dist/core/types.d.ts +80 -2602
  15. package/dist/core/types.d.ts.map +1 -1
  16. package/dist/core/types.js +19 -1
  17. package/dist/core/types.js.map +1 -1
  18. package/dist/core/types.test.js +58 -0
  19. package/dist/core/types.test.js.map +1 -1
  20. package/dist/deploy/warp.d.ts +119 -3
  21. package/dist/deploy/warp.d.ts.map +1 -1
  22. package/dist/deploy/warp.js +696 -33
  23. package/dist/deploy/warp.js.map +1 -1
  24. package/dist/deploy/warp.test.d.ts +2 -0
  25. package/dist/deploy/warp.test.d.ts.map +1 -0
  26. package/dist/deploy/warp.test.js +358 -0
  27. package/dist/deploy/warp.test.js.map +1 -0
  28. package/dist/deploy/warpHybridPlan.d.ts +104 -0
  29. package/dist/deploy/warpHybridPlan.d.ts.map +1 -0
  30. package/dist/deploy/warpHybridPlan.js +178 -0
  31. package/dist/deploy/warpHybridPlan.js.map +1 -0
  32. package/dist/deploy/warpHybridPlan.test.d.ts +2 -0
  33. package/dist/deploy/warpHybridPlan.test.d.ts.map +1 -0
  34. package/dist/deploy/warpHybridPlan.test.js +141 -0
  35. package/dist/deploy/warpHybridPlan.test.js.map +1 -0
  36. package/dist/hook/EvmHookModule.d.ts +1 -1
  37. package/dist/hook/EvmHookModule.d.ts.map +1 -1
  38. package/dist/hook/EvmHookModule.js +16 -3
  39. package/dist/hook/EvmHookModule.js.map +1 -1
  40. package/dist/hook/EvmHookReader.d.ts +10 -0
  41. package/dist/hook/EvmHookReader.d.ts.map +1 -1
  42. package/dist/hook/EvmHookReader.js +92 -11
  43. package/dist/hook/EvmHookReader.js.map +1 -1
  44. package/dist/hook/EvmHookReader.test.js +155 -1
  45. package/dist/hook/EvmHookReader.test.js.map +1 -1
  46. package/dist/hook/types.d.ts +107 -1983
  47. package/dist/hook/types.d.ts.map +1 -1
  48. package/dist/hook/types.js +49 -0
  49. package/dist/hook/types.js.map +1 -1
  50. package/dist/hook/types.test.js +21 -1
  51. package/dist/hook/types.test.js.map +1 -1
  52. package/dist/hook/updates.d.ts +1 -0
  53. package/dist/hook/updates.d.ts.map +1 -1
  54. package/dist/hook/updates.js +2 -2
  55. package/dist/hook/updates.js.map +1 -1
  56. package/dist/hook/utils.d.ts +28 -1
  57. package/dist/hook/utils.d.ts.map +1 -1
  58. package/dist/hook/utils.js +89 -0
  59. package/dist/hook/utils.js.map +1 -1
  60. package/dist/ica/types.d.ts +4 -674
  61. package/dist/ica/types.d.ts.map +1 -1
  62. package/dist/index.d.ts +6 -5
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +6 -5
  65. package/dist/index.js.map +1 -1
  66. package/dist/ism/EvmIsmModule.d.ts +28 -2
  67. package/dist/ism/EvmIsmModule.d.ts.map +1 -1
  68. package/dist/ism/EvmIsmModule.hardhat-test.js +478 -3
  69. package/dist/ism/EvmIsmModule.hardhat-test.js.map +1 -1
  70. package/dist/ism/EvmIsmModule.js +224 -10
  71. package/dist/ism/EvmIsmModule.js.map +1 -1
  72. package/dist/ism/EvmIsmReader.d.ts.map +1 -1
  73. package/dist/ism/EvmIsmReader.js +77 -1
  74. package/dist/ism/EvmIsmReader.js.map +1 -1
  75. package/dist/ism/EvmIsmReader.test.js +245 -4
  76. package/dist/ism/EvmIsmReader.test.js.map +1 -1
  77. package/dist/ism/HyperlaneIsmFactory.d.ts +14 -4
  78. package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
  79. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +372 -3
  80. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
  81. package/dist/ism/HyperlaneIsmFactory.js +80 -6
  82. package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
  83. package/dist/ism/delayedFlow.d.ts +31 -0
  84. package/dist/ism/delayedFlow.d.ts.map +1 -0
  85. package/dist/ism/delayedFlow.js +33 -0
  86. package/dist/ism/delayedFlow.js.map +1 -0
  87. package/dist/ism/types.d.ts +135 -4
  88. package/dist/ism/types.d.ts.map +1 -1
  89. package/dist/ism/types.js +263 -11
  90. package/dist/ism/types.js.map +1 -1
  91. package/dist/ism/types.test.js +433 -1
  92. package/dist/ism/types.test.js.map +1 -1
  93. package/dist/ism/utils.d.ts.map +1 -1
  94. package/dist/ism/utils.js +113 -3
  95. package/dist/ism/utils.js.map +1 -1
  96. package/dist/ism/utils.test.js +44 -0
  97. package/dist/ism/utils.test.js.map +1 -1
  98. package/dist/providers/MultiProviderAdapter.d.ts +3 -3
  99. package/dist/providers/MultiProviderAdapter.d.ts.map +1 -1
  100. package/dist/providers/MultiProviderAdapter.js +2 -1
  101. package/dist/providers/MultiProviderAdapter.js.map +1 -1
  102. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.d.ts.map +1 -1
  103. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.js +4 -0
  104. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.js.map +1 -1
  105. package/dist/providers/transactionFeeEstimators.d.ts +16 -9
  106. package/dist/providers/transactionFeeEstimators.d.ts.map +1 -1
  107. package/dist/providers/transactionFeeEstimators.js +66 -17
  108. package/dist/providers/transactionFeeEstimators.js.map +1 -1
  109. package/dist/providers/transactionFeeEstimators.test.js +153 -1
  110. package/dist/providers/transactionFeeEstimators.test.js.map +1 -1
  111. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.d.ts +14 -1
  112. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.d.ts.map +1 -1
  113. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.js +46 -5
  114. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.js.map +1 -1
  115. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.d.ts +2 -0
  116. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.d.ts.map +1 -0
  117. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.js +125 -0
  118. package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.js.map +1 -0
  119. package/dist/router/HyperlaneRouterDeployer.d.ts +3 -1
  120. package/dist/router/HyperlaneRouterDeployer.d.ts.map +1 -1
  121. package/dist/router/HyperlaneRouterDeployer.js +4 -2
  122. package/dist/router/HyperlaneRouterDeployer.js.map +1 -1
  123. package/dist/router/types.d.ts +6 -1011
  124. package/dist/router/types.d.ts.map +1 -1
  125. package/dist/test/testUtils.d.ts +1 -1
  126. package/dist/test/testUtils.d.ts.map +1 -1
  127. package/dist/test/testUtils.js +17 -0
  128. package/dist/test/testUtils.js.map +1 -1
  129. package/dist/test/testUtils.test.d.ts +2 -0
  130. package/dist/test/testUtils.test.d.ts.map +1 -0
  131. package/dist/test/testUtils.test.js +28 -0
  132. package/dist/test/testUtils.test.js.map +1 -0
  133. package/dist/token/EvmWarpModule.d.ts +44 -8
  134. package/dist/token/EvmWarpModule.d.ts.map +1 -1
  135. package/dist/token/EvmWarpModule.hardhat-test.js +574 -4
  136. package/dist/token/EvmWarpModule.hardhat-test.js.map +1 -1
  137. package/dist/token/EvmWarpModule.js +237 -25
  138. package/dist/token/EvmWarpModule.js.map +1 -1
  139. package/dist/token/configUtils.d.ts +17 -7
  140. package/dist/token/configUtils.d.ts.map +1 -1
  141. package/dist/token/configUtils.js +108 -0
  142. package/dist/token/configUtils.js.map +1 -1
  143. package/dist/token/configUtils.test.js +155 -1
  144. package/dist/token/configUtils.test.js.map +1 -1
  145. package/dist/token/deploy.d.ts +3 -1
  146. package/dist/token/deploy.d.ts.map +1 -1
  147. package/dist/token/deploy.hardhat-test.js +454 -3
  148. package/dist/token/deploy.hardhat-test.js.map +1 -1
  149. package/dist/token/deploy.js +25 -6
  150. package/dist/token/deploy.js.map +1 -1
  151. package/dist/token/types.d.ts +169 -2931
  152. package/dist/token/types.d.ts.map +1 -1
  153. package/dist/token/types.test.js +48 -0
  154. package/dist/token/types.test.js.map +1 -1
  155. package/dist/token/warpCheck.d.ts.map +1 -1
  156. package/dist/token/warpCheck.js +36 -1
  157. package/dist/token/warpCheck.js.map +1 -1
  158. package/dist/utils/ism.d.ts +167 -1
  159. package/dist/utils/ism.d.ts.map +1 -1
  160. package/dist/utils/ism.js +412 -2
  161. package/dist/utils/ism.js.map +1 -1
  162. package/dist/utils/ism.test.d.ts +2 -0
  163. package/dist/utils/ism.test.d.ts.map +1 -0
  164. package/dist/utils/ism.test.js +372 -0
  165. package/dist/utils/ism.test.js.map +1 -0
  166. package/package.json +10 -10
@@ -51,11 +51,25 @@ export declare const HookType: {
51
51
  * Warp-route only. Not valid for core required/default hooks.
52
52
  */
53
53
  readonly RATE_LIMITED: 'rateLimitedHook';
54
+ /**
55
+ * Hook view of the NetFlowRateLimitedHookIsm hybrid: one contract instance
56
+ * is installed as BOTH the hook and the ISM of a single warp router.
57
+ * Read-only on the hook side — deployed via the ISM config surface
58
+ * (IsmType.NET_FLOW_RATE_LIMITED) and referenced by address as the hook.
59
+ * Excluded from `DeployableHookType`.
60
+ */
61
+ readonly NET_FLOW_RATE_LIMITED: 'netFlowRateLimitedHookIsm';
62
+ /**
63
+ * Hook view of the DelayedFlowRouterHookIsm hybrid (see
64
+ * NET_FLOW_RATE_LIMITED above; ISM-side type is
65
+ * IsmType.DELAYED_FLOW_ROUTER). Excluded from `DeployableHookType`.
66
+ */
67
+ readonly DELAYED_FLOW_ROUTER: 'delayedFlowRouterHookIsm';
54
68
  readonly UNKNOWN: 'unknownHook';
55
69
  readonly PREDICATE: 'predicateHook';
56
70
  };
57
71
  export type HookType = (typeof HookType)[keyof typeof HookType];
58
- export type DeployableHookType = Exclude<HookType, typeof HookType.CUSTOM | typeof HookType.PREDICATE | typeof HookType.UNKNOWN | typeof HookType.CCTP>;
72
+ export type DeployableHookType = Exclude<HookType, typeof HookType.CUSTOM | typeof HookType.PREDICATE | typeof HookType.UNKNOWN | typeof HookType.CCTP | typeof HookType.NET_FLOW_RATE_LIMITED | typeof HookType.DELAYED_FLOW_ROUTER>;
59
73
  export declare const HookTypeToContractNameMap: Record<DeployableHookType, string>;
60
74
  export type MerkleTreeHookConfig = z.infer<typeof MerkleTreeSchema>;
61
75
  export type IgpHookConfig = z.infer<typeof IgpSchema>;
@@ -92,7 +106,7 @@ export type AmountRoutingHookConfig = {
92
106
  lowerHook: HookConfig;
93
107
  upperHook: HookConfig;
94
108
  };
95
- export type HookConfig = z.infer<typeof HookConfigSchema>;
109
+ export type HookConfig = Address | ProtocolFeeHookConfig | PausableHookConfig | OpStackHookConfig | MerkleTreeHookConfig | IgpHookConfig | DomainRoutingHookConfig | FallbackRoutingHookConfig | AmountRoutingHookConfig | AggregationHookConfig | ArbL2ToL1HookConfig | MailboxDefaultHookConfig | CCIPHookConfig | CctpHookConfig | RateLimitedHookConfig | NetFlowRateLimitedHookConfig | DelayedFlowRouterHookConfig | UnknownHookConfig | PredicateHookConfig;
96
110
  export type DerivedHookConfig = WithAddress<Exclude<HookConfig, Address>>;
97
111
  export declare enum IgpVersion {
98
112
  Legacy = "legacy",
@@ -395,2015 +409,125 @@ export declare const RateLimitedHookSchema: z.ZodEffects<z.ZodEffects<z.ZodEffec
395
409
  maxCapacity: string;
396
410
  duration?: string | number | bigint | undefined;
397
411
  }>;
398
- /**
399
- * Recursively normalizes unknown hook type values to HookType.UNKNOWN.
400
- * Use this before parsing with HookConfigSchema when configs may contain
401
- * hook types not yet known to this SDK version.
402
- *
403
- * Note: String address configs (e.g., "0x...") are passed through unchanged
404
- * since they represent deployed hook addresses, not hook type configs.
405
- */
406
- export declare function normalizeUnknownHookTypes<T>(config: T): T;
407
- export declare const HookConfigSchema: z.ZodUnion<[z.ZodString, z.ZodObject<{
408
- owner: z.ZodString;
409
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
410
- } & {
411
- type: z.ZodLiteral<"protocolFee">;
412
- beneficiary: z.ZodString;
413
- maxProtocolFee: z.ZodString;
414
- protocolFee: z.ZodString;
415
- }, "strip", z.ZodTypeAny, {
416
- owner: string;
417
- ownerOverrides?: Record<string, string> | undefined;
418
- type: "protocolFee";
419
- beneficiary: string;
420
- maxProtocolFee: string;
421
- protocolFee: string;
422
- }, {
423
- owner: string;
424
- ownerOverrides?: Record<string, string> | undefined;
425
- type: "protocolFee";
426
- beneficiary: string;
427
- maxProtocolFee: string;
428
- protocolFee: string;
429
- }>, z.ZodObject<{
430
- owner: z.ZodString;
431
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
432
- } & {
433
- paused: z.ZodBoolean;
434
- } & {
435
- type: z.ZodLiteral<"pausableHook">;
436
- }, "strip", z.ZodTypeAny, {
437
- owner: string;
438
- ownerOverrides?: Record<string, string> | undefined;
439
- paused: boolean;
440
- type: "pausableHook";
441
- }, {
442
- owner: string;
443
- ownerOverrides?: Record<string, string> | undefined;
444
- paused: boolean;
445
- type: "pausableHook";
446
- }>, z.ZodObject<{
447
- owner: z.ZodString;
448
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
449
- } & {
450
- type: z.ZodLiteral<"opStackHook">;
451
- nativeBridge: z.ZodString;
452
- destinationChain: z.ZodString;
453
- }, "strip", z.ZodTypeAny, {
454
- owner: string;
455
- ownerOverrides?: Record<string, string> | undefined;
456
- type: "opStackHook";
457
- nativeBridge: string;
458
- destinationChain: string;
459
- }, {
460
- owner: string;
461
- ownerOverrides?: Record<string, string> | undefined;
462
- type: "opStackHook";
463
- nativeBridge: string;
464
- destinationChain: string;
465
- }>, z.ZodObject<{
466
- type: z.ZodLiteral<"merkleTreeHook">;
467
- }, "strip", z.ZodTypeAny, {
468
- type: "merkleTreeHook";
469
- }, {
470
- type: "merkleTreeHook";
471
- }>, z.ZodObject<{
472
- owner: z.ZodString;
473
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
474
- } & {
475
- type: z.ZodLiteral<"interchainGasPaymaster">;
476
- beneficiary: z.ZodString;
477
- oracleKey: z.ZodString;
478
- overhead: z.ZodRecord<z.ZodString, z.ZodNumber>;
479
- oracleConfig: z.ZodRecord<z.ZodString, z.ZodObject<{
480
- gasPrice: z.ZodString;
481
- tokenExchangeRate: z.ZodString;
482
- } & {
483
- tokenDecimals: z.ZodOptional<z.ZodNumber>;
484
- } & {
485
- typicalCost: z.ZodOptional<z.ZodObject<{
486
- handleGasAmount: z.ZodNumber;
487
- totalGasAmount: z.ZodNumber;
488
- totalUsdCost: z.ZodNumber;
489
- }, "strip", z.ZodTypeAny, {
490
- handleGasAmount: number;
491
- totalGasAmount: number;
492
- totalUsdCost: number;
493
- }, {
494
- handleGasAmount: number;
495
- totalGasAmount: number;
496
- totalUsdCost: number;
497
- }>>;
498
- }, "strip", z.ZodTypeAny, {
499
- gasPrice: string;
500
- tokenExchangeRate: string;
501
- tokenDecimals?: number | undefined;
502
- typicalCost?: {
503
- handleGasAmount: number;
504
- totalGasAmount: number;
505
- totalUsdCost: number;
506
- } | undefined;
507
- }, {
508
- gasPrice: string;
509
- tokenExchangeRate: string;
510
- tokenDecimals?: number | undefined;
511
- typicalCost?: {
512
- handleGasAmount: number;
513
- totalGasAmount: number;
514
- totalUsdCost: number;
515
- } | undefined;
516
- }>>;
517
- igpVersion: z.ZodOptional<z.ZodNativeEnum<typeof IgpVersion>>;
518
- quoteSigners: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
519
- contractVersion: z.ZodOptional<z.ZodString>;
520
- tokenOracleConfig: z.ZodOptional<z.ZodRecord<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, z.ZodRecord<z.ZodString, z.ZodObject<{
521
- gasPrice: z.ZodString;
522
- tokenExchangeRate: z.ZodString;
523
- } & {
524
- tokenDecimals: z.ZodOptional<z.ZodNumber>;
525
- }, "strip", z.ZodTypeAny, {
526
- gasPrice: string;
527
- tokenExchangeRate: string;
528
- tokenDecimals?: number | undefined;
529
- }, {
530
- gasPrice: string;
531
- tokenExchangeRate: string;
532
- tokenDecimals?: number | undefined;
533
- }>>>>;
534
- }, "strip", z.ZodTypeAny, {
535
- owner: string;
536
- ownerOverrides?: Record<string, string> | undefined;
537
- type: "interchainGasPaymaster";
538
- beneficiary: string;
539
- oracleKey: string;
540
- overhead: Record<string, number>;
541
- oracleConfig: Record<string, {
542
- gasPrice: string;
543
- tokenExchangeRate: string;
544
- tokenDecimals?: number | undefined;
545
- typicalCost?: {
546
- handleGasAmount: number;
547
- totalGasAmount: number;
548
- totalUsdCost: number;
549
- } | undefined;
550
- }>;
551
- igpVersion?: IgpVersion | undefined;
552
- quoteSigners?: string[] | undefined;
553
- contractVersion?: string | undefined;
554
- tokenOracleConfig?: Record<string, Record<string, {
555
- gasPrice: string;
556
- tokenExchangeRate: string;
557
- tokenDecimals?: number | undefined;
558
- }>> | undefined;
559
- }, {
560
- owner: string;
561
- ownerOverrides?: Record<string, string> | undefined;
562
- type: "interchainGasPaymaster";
563
- beneficiary: string;
564
- oracleKey: string;
565
- overhead: Record<string, number>;
566
- oracleConfig: Record<string, {
567
- gasPrice: string;
568
- tokenExchangeRate: string;
569
- tokenDecimals?: number | undefined;
570
- typicalCost?: {
571
- handleGasAmount: number;
572
- totalGasAmount: number;
573
- totalUsdCost: number;
574
- } | undefined;
575
- }>;
576
- igpVersion?: IgpVersion | undefined;
577
- quoteSigners?: string[] | undefined;
578
- contractVersion?: string | undefined;
579
- tokenOracleConfig?: Record<string, Record<string, {
580
- gasPrice: string;
581
- tokenExchangeRate: string;
582
- tokenDecimals?: number | undefined;
583
- }>> | undefined;
584
- }>, z.ZodType<DomainRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<FallbackRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<AmountRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<AggregationHookConfig, z.ZodTypeDef, unknown>, z.ZodType<ArbL2ToL1HookConfig, z.ZodTypeDef, unknown>, z.ZodObject<{
585
- type: z.ZodLiteral<"defaultHook">;
586
- }, "strip", z.ZodTypeAny, {
587
- type: "defaultHook";
588
- }, {
589
- type: "defaultHook";
590
- }>, z.ZodObject<{
591
- type: z.ZodLiteral<"ccipHook">;
592
- destinationChain: z.ZodString;
593
- }, "strip", z.ZodTypeAny, {
594
- type: "ccipHook";
595
- destinationChain: string;
412
+ export declare const NetFlowRateLimitedHookConfigSchema: z.ZodEffects<z.ZodObject<{
413
+ type: z.ZodLiteral<"netFlowRateLimitedHookIsm">;
414
+ warpRouter: z.ZodOptional<z.ZodString>;
415
+ thresholdBps: z.ZodNumber;
416
+ duration: z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>;
417
+ owner: z.ZodOptional<z.ZodString>;
418
+ }, "strip", z.ZodTypeAny, {
419
+ type: "netFlowRateLimitedHookIsm";
420
+ warpRouter?: string | undefined;
421
+ thresholdBps: number;
422
+ duration: bigint;
423
+ owner?: string | undefined;
596
424
  }, {
597
- type: "ccipHook";
598
- destinationChain: string;
599
- }>, z.ZodObject<{
600
- type: z.ZodLiteral<"cctpHook">;
601
- address: z.ZodString;
602
- }, "strip", z.ZodTypeAny, {
603
- type: "cctpHook";
604
- address: string;
425
+ type: "netFlowRateLimitedHookIsm";
426
+ warpRouter?: string | undefined;
427
+ thresholdBps: number;
428
+ duration: string | number | bigint;
429
+ owner?: string | undefined;
430
+ }>, {
431
+ type: "netFlowRateLimitedHookIsm";
432
+ warpRouter?: string | undefined;
433
+ thresholdBps: number;
434
+ duration: bigint;
435
+ owner?: string | undefined;
605
436
  }, {
606
- type: "cctpHook";
607
- address: string;
608
- }>, z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
437
+ type: "netFlowRateLimitedHookIsm";
438
+ warpRouter?: string | undefined;
439
+ thresholdBps: number;
440
+ duration: string | number | bigint;
441
+ owner?: string | undefined;
442
+ }>;
443
+ export type NetFlowRateLimitedHookConfig = z.infer<typeof NetFlowRateLimitedHookConfigSchema>;
444
+ export declare const DelayedFlowRouterHookConfigSchema: z.ZodEffects<z.ZodObject<{
609
445
  owner: z.ZodString;
610
446
  ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
611
447
  } & {
612
- type: z.ZodLiteral<"rateLimitedHook">;
613
- maxCapacity: z.ZodString;
448
+ type: z.ZodLiteral<"delayedFlowRouterHookIsm">;
449
+ warpRouter: z.ZodOptional<z.ZodString>;
450
+ thresholdBps: z.ZodNumber;
451
+ /** Cap on any single message's wait, in seconds. */
452
+ maxDelay: z.ZodNumber;
453
+ duration: z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>;
614
454
  /**
615
- * Refill window in seconds must match the on-chain immutable
616
- * `DURATION`. Defaults to 1 day (86400s) when omitted, matching the
617
- * previous hard-coded on-chain window.
455
+ * Enrolled remote counterparts, keyed by chain name; values are the remote
456
+ * DelayedFlowRouterHookIsm instances (the contract is itself a Router, so
457
+ * on-chain nomenclature keeps "router": enrollRemoteRouters/routers()).
618
458
  */
619
- duration: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>>;
459
+ remoteIsms: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>>;
620
460
  }, "strip", z.ZodTypeAny, {
621
461
  owner: string;
622
462
  ownerOverrides?: Record<string, string> | undefined;
623
- type: "rateLimitedHook";
624
- maxCapacity: string;
463
+ type: "delayedFlowRouterHookIsm";
464
+ warpRouter?: string | undefined;
465
+ thresholdBps: number;
466
+ maxDelay: number;
625
467
  duration: bigint;
468
+ remoteIsms?: Record<string, string> | undefined;
626
469
  }, {
627
470
  owner: string;
628
471
  ownerOverrides?: Record<string, string> | undefined;
629
- type: "rateLimitedHook";
630
- maxCapacity: string;
631
- duration?: string | number | bigint | undefined;
472
+ type: "delayedFlowRouterHookIsm";
473
+ warpRouter?: string | undefined;
474
+ thresholdBps: number;
475
+ maxDelay: number;
476
+ duration: string | number | bigint;
477
+ remoteIsms?: Record<string, string> | undefined;
632
478
  }>, {
633
479
  owner: string;
634
480
  ownerOverrides?: Record<string, string> | undefined;
635
- type: "rateLimitedHook";
636
- maxCapacity: string;
481
+ type: "delayedFlowRouterHookIsm";
482
+ warpRouter?: string | undefined;
483
+ thresholdBps: number;
484
+ maxDelay: number;
637
485
  duration: bigint;
486
+ remoteIsms?: Record<string, string> | undefined;
638
487
  }, {
639
488
  owner: string;
640
489
  ownerOverrides?: Record<string, string> | undefined;
641
- type: "rateLimitedHook";
642
- maxCapacity: string;
643
- duration?: string | number | bigint | undefined;
644
- }>, {
645
- owner: string;
646
- ownerOverrides?: Record<string, string> | undefined;
647
- type: "rateLimitedHook";
648
- maxCapacity: string;
649
- duration: bigint;
650
- }, {
651
- owner: string;
652
- ownerOverrides?: Record<string, string> | undefined;
653
- type: "rateLimitedHook";
654
- maxCapacity: string;
655
- duration?: string | number | bigint | undefined;
656
- }>, {
657
- owner: string;
658
- ownerOverrides?: Record<string, string> | undefined;
659
- type: "rateLimitedHook";
660
- maxCapacity: string;
661
- duration: bigint;
662
- }, {
663
- owner: string;
664
- ownerOverrides?: Record<string, string> | undefined;
665
- type: "rateLimitedHook";
666
- maxCapacity: string;
667
- duration?: string | number | bigint | undefined;
668
- }>, z.ZodObject<{
669
- type: z.ZodLiteral<"unknownHook">;
670
- }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
671
- type: z.ZodLiteral<"unknownHook">;
672
- }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
673
- type: z.ZodLiteral<"unknownHook">;
674
- }, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
675
- type: z.ZodLiteral<"predicateHook">;
676
- address: z.ZodString;
677
- }, "strip", z.ZodTypeAny, {
678
- type: "predicateHook";
679
- address: string;
680
- }, {
681
- type: "predicateHook";
682
- address: string;
683
- }>]>;
684
- /**
685
- * Forward-compatible hook config schema that normalizes unknown hook types.
686
- * Use this instead of HookConfigSchema when parsing configs that may contain
687
- * hook types added in newer registry versions.
688
- */
689
- export declare const SafeParseHookConfigSchema: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodObject<{
690
- owner: z.ZodString;
691
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
692
- } & {
693
- type: z.ZodLiteral<"protocolFee">;
694
- beneficiary: z.ZodString;
695
- maxProtocolFee: z.ZodString;
696
- protocolFee: z.ZodString;
697
- }, "strip", z.ZodTypeAny, {
698
- owner: string;
699
- ownerOverrides?: Record<string, string> | undefined;
700
- type: "protocolFee";
701
- beneficiary: string;
702
- maxProtocolFee: string;
703
- protocolFee: string;
704
- }, {
705
- owner: string;
706
- ownerOverrides?: Record<string, string> | undefined;
707
- type: "protocolFee";
708
- beneficiary: string;
709
- maxProtocolFee: string;
710
- protocolFee: string;
711
- }>, z.ZodObject<{
712
- owner: z.ZodString;
713
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
714
- } & {
715
- paused: z.ZodBoolean;
716
- } & {
717
- type: z.ZodLiteral<"pausableHook">;
718
- }, "strip", z.ZodTypeAny, {
719
- owner: string;
720
- ownerOverrides?: Record<string, string> | undefined;
721
- paused: boolean;
722
- type: "pausableHook";
723
- }, {
724
- owner: string;
725
- ownerOverrides?: Record<string, string> | undefined;
726
- paused: boolean;
727
- type: "pausableHook";
728
- }>, z.ZodObject<{
729
- owner: z.ZodString;
730
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
731
- } & {
732
- type: z.ZodLiteral<"opStackHook">;
733
- nativeBridge: z.ZodString;
734
- destinationChain: z.ZodString;
735
- }, "strip", z.ZodTypeAny, {
736
- owner: string;
737
- ownerOverrides?: Record<string, string> | undefined;
738
- type: "opStackHook";
739
- nativeBridge: string;
740
- destinationChain: string;
741
- }, {
742
- owner: string;
743
- ownerOverrides?: Record<string, string> | undefined;
744
- type: "opStackHook";
745
- nativeBridge: string;
746
- destinationChain: string;
747
- }>, z.ZodObject<{
748
- type: z.ZodLiteral<"merkleTreeHook">;
749
- }, "strip", z.ZodTypeAny, {
750
- type: "merkleTreeHook";
751
- }, {
752
- type: "merkleTreeHook";
753
- }>, z.ZodObject<{
754
- owner: z.ZodString;
755
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
756
- } & {
757
- type: z.ZodLiteral<"interchainGasPaymaster">;
758
- beneficiary: z.ZodString;
759
- oracleKey: z.ZodString;
760
- overhead: z.ZodRecord<z.ZodString, z.ZodNumber>;
761
- oracleConfig: z.ZodRecord<z.ZodString, z.ZodObject<{
762
- gasPrice: z.ZodString;
763
- tokenExchangeRate: z.ZodString;
764
- } & {
765
- tokenDecimals: z.ZodOptional<z.ZodNumber>;
766
- } & {
767
- typicalCost: z.ZodOptional<z.ZodObject<{
768
- handleGasAmount: z.ZodNumber;
769
- totalGasAmount: z.ZodNumber;
770
- totalUsdCost: z.ZodNumber;
771
- }, "strip", z.ZodTypeAny, {
772
- handleGasAmount: number;
773
- totalGasAmount: number;
774
- totalUsdCost: number;
775
- }, {
776
- handleGasAmount: number;
777
- totalGasAmount: number;
778
- totalUsdCost: number;
779
- }>>;
780
- }, "strip", z.ZodTypeAny, {
781
- gasPrice: string;
782
- tokenExchangeRate: string;
783
- tokenDecimals?: number | undefined;
784
- typicalCost?: {
785
- handleGasAmount: number;
786
- totalGasAmount: number;
787
- totalUsdCost: number;
788
- } | undefined;
789
- }, {
790
- gasPrice: string;
791
- tokenExchangeRate: string;
792
- tokenDecimals?: number | undefined;
793
- typicalCost?: {
794
- handleGasAmount: number;
795
- totalGasAmount: number;
796
- totalUsdCost: number;
797
- } | undefined;
798
- }>>;
799
- igpVersion: z.ZodOptional<z.ZodNativeEnum<typeof IgpVersion>>;
800
- quoteSigners: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
801
- contractVersion: z.ZodOptional<z.ZodString>;
802
- tokenOracleConfig: z.ZodOptional<z.ZodRecord<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, z.ZodRecord<z.ZodString, z.ZodObject<{
803
- gasPrice: z.ZodString;
804
- tokenExchangeRate: z.ZodString;
805
- } & {
806
- tokenDecimals: z.ZodOptional<z.ZodNumber>;
807
- }, "strip", z.ZodTypeAny, {
808
- gasPrice: string;
809
- tokenExchangeRate: string;
810
- tokenDecimals?: number | undefined;
811
- }, {
812
- gasPrice: string;
813
- tokenExchangeRate: string;
814
- tokenDecimals?: number | undefined;
815
- }>>>>;
816
- }, "strip", z.ZodTypeAny, {
817
- owner: string;
818
- ownerOverrides?: Record<string, string> | undefined;
819
- type: "interchainGasPaymaster";
820
- beneficiary: string;
821
- oracleKey: string;
822
- overhead: Record<string, number>;
823
- oracleConfig: Record<string, {
824
- gasPrice: string;
825
- tokenExchangeRate: string;
826
- tokenDecimals?: number | undefined;
827
- typicalCost?: {
828
- handleGasAmount: number;
829
- totalGasAmount: number;
830
- totalUsdCost: number;
831
- } | undefined;
832
- }>;
833
- igpVersion?: IgpVersion | undefined;
834
- quoteSigners?: string[] | undefined;
835
- contractVersion?: string | undefined;
836
- tokenOracleConfig?: Record<string, Record<string, {
837
- gasPrice: string;
838
- tokenExchangeRate: string;
839
- tokenDecimals?: number | undefined;
840
- }>> | undefined;
841
- }, {
842
- owner: string;
843
- ownerOverrides?: Record<string, string> | undefined;
844
- type: "interchainGasPaymaster";
845
- beneficiary: string;
846
- oracleKey: string;
847
- overhead: Record<string, number>;
848
- oracleConfig: Record<string, {
849
- gasPrice: string;
850
- tokenExchangeRate: string;
851
- tokenDecimals?: number | undefined;
852
- typicalCost?: {
853
- handleGasAmount: number;
854
- totalGasAmount: number;
855
- totalUsdCost: number;
856
- } | undefined;
857
- }>;
858
- igpVersion?: IgpVersion | undefined;
859
- quoteSigners?: string[] | undefined;
860
- contractVersion?: string | undefined;
861
- tokenOracleConfig?: Record<string, Record<string, {
862
- gasPrice: string;
863
- tokenExchangeRate: string;
864
- tokenDecimals?: number | undefined;
865
- }>> | undefined;
866
- }>, z.ZodType<DomainRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<FallbackRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<AmountRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<AggregationHookConfig, z.ZodTypeDef, unknown>, z.ZodType<ArbL2ToL1HookConfig, z.ZodTypeDef, unknown>, z.ZodObject<{
867
- type: z.ZodLiteral<"defaultHook">;
868
- }, "strip", z.ZodTypeAny, {
869
- type: "defaultHook";
870
- }, {
871
- type: "defaultHook";
872
- }>, z.ZodObject<{
873
- type: z.ZodLiteral<"ccipHook">;
874
- destinationChain: z.ZodString;
875
- }, "strip", z.ZodTypeAny, {
876
- type: "ccipHook";
877
- destinationChain: string;
878
- }, {
879
- type: "ccipHook";
880
- destinationChain: string;
881
- }>, z.ZodObject<{
882
- type: z.ZodLiteral<"cctpHook">;
883
- address: z.ZodString;
884
- }, "strip", z.ZodTypeAny, {
885
- type: "cctpHook";
886
- address: string;
887
- }, {
888
- type: "cctpHook";
889
- address: string;
890
- }>, z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
891
- owner: z.ZodString;
892
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
893
- } & {
894
- type: z.ZodLiteral<"rateLimitedHook">;
895
- maxCapacity: z.ZodString;
896
- /**
897
- * Refill window in seconds — must match the on-chain immutable
898
- * `DURATION`. Defaults to 1 day (86400s) when omitted, matching the
899
- * previous hard-coded on-chain window.
900
- */
901
- duration: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>>;
902
- }, "strip", z.ZodTypeAny, {
903
- owner: string;
904
- ownerOverrides?: Record<string, string> | undefined;
905
- type: "rateLimitedHook";
906
- maxCapacity: string;
907
- duration: bigint;
908
- }, {
909
- owner: string;
910
- ownerOverrides?: Record<string, string> | undefined;
911
- type: "rateLimitedHook";
912
- maxCapacity: string;
913
- duration?: string | number | bigint | undefined;
914
- }>, {
915
- owner: string;
916
- ownerOverrides?: Record<string, string> | undefined;
917
- type: "rateLimitedHook";
918
- maxCapacity: string;
919
- duration: bigint;
920
- }, {
921
- owner: string;
922
- ownerOverrides?: Record<string, string> | undefined;
923
- type: "rateLimitedHook";
924
- maxCapacity: string;
925
- duration?: string | number | bigint | undefined;
926
- }>, {
927
- owner: string;
928
- ownerOverrides?: Record<string, string> | undefined;
929
- type: "rateLimitedHook";
930
- maxCapacity: string;
931
- duration: bigint;
932
- }, {
933
- owner: string;
934
- ownerOverrides?: Record<string, string> | undefined;
935
- type: "rateLimitedHook";
936
- maxCapacity: string;
937
- duration?: string | number | bigint | undefined;
938
- }>, {
939
- owner: string;
940
- ownerOverrides?: Record<string, string> | undefined;
941
- type: "rateLimitedHook";
942
- maxCapacity: string;
943
- duration: bigint;
944
- }, {
945
- owner: string;
946
- ownerOverrides?: Record<string, string> | undefined;
947
- type: "rateLimitedHook";
948
- maxCapacity: string;
949
- duration?: string | number | bigint | undefined;
950
- }>, z.ZodObject<{
951
- type: z.ZodLiteral<"unknownHook">;
952
- }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
953
- type: z.ZodLiteral<"unknownHook">;
954
- }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
955
- type: z.ZodLiteral<"unknownHook">;
956
- }, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
957
- type: z.ZodLiteral<"predicateHook">;
958
- address: z.ZodString;
959
- }, "strip", z.ZodTypeAny, {
960
- type: "predicateHook";
961
- address: string;
962
- }, {
963
- type: "predicateHook";
964
- address: string;
965
- }>]>, string | AggregationHookConfig | AmountRoutingHookConfig | ArbL2ToL1HookConfig | {
966
- type: "merkleTreeHook";
967
- } | {
968
- owner: string;
969
- ownerOverrides?: Record<string, string> | undefined;
970
- type: "interchainGasPaymaster";
971
- beneficiary: string;
972
- oracleKey: string;
973
- overhead: Record<string, number>;
974
- oracleConfig: Record<string, {
975
- gasPrice: string;
976
- tokenExchangeRate: string;
977
- tokenDecimals?: number | undefined;
978
- typicalCost?: {
979
- handleGasAmount: number;
980
- totalGasAmount: number;
981
- totalUsdCost: number;
982
- } | undefined;
983
- }>;
984
- igpVersion?: IgpVersion | undefined;
985
- quoteSigners?: string[] | undefined;
986
- contractVersion?: string | undefined;
987
- tokenOracleConfig?: Record<string, Record<string, {
988
- gasPrice: string;
989
- tokenExchangeRate: string;
990
- tokenDecimals?: number | undefined;
991
- }>> | undefined;
992
- } | {
993
- owner: string;
994
- ownerOverrides?: Record<string, string> | undefined;
995
- type: "protocolFee";
996
- beneficiary: string;
997
- maxProtocolFee: string;
998
- protocolFee: string;
999
- } | {
1000
- owner: string;
1001
- ownerOverrides?: Record<string, string> | undefined;
1002
- paused: boolean;
1003
- type: "pausableHook";
1004
- } | {
1005
- owner: string;
1006
- ownerOverrides?: Record<string, string> | undefined;
1007
- type: "opStackHook";
1008
- nativeBridge: string;
1009
- destinationChain: string;
1010
- } | {
1011
- type: "defaultHook";
1012
- } | {
1013
- type: "ccipHook";
1014
- destinationChain: string;
1015
- } | {
1016
- type: "cctpHook";
1017
- address: string;
1018
- } | {
1019
- owner: string;
1020
- ownerOverrides?: Record<string, string> | undefined;
1021
- type: "rateLimitedHook";
1022
- maxCapacity: string;
1023
- duration: bigint;
1024
- } | {
1025
- type: "predicateHook";
1026
- address: string;
1027
- } | DomainRoutingHookConfig | FallbackRoutingHookConfig | z.objectOutputType<{
1028
- type: z.ZodLiteral<"unknownHook">;
1029
- }, z.ZodTypeAny, "passthrough">, unknown>;
1030
- export declare const HooksConfigSchema: z.ZodObject<{
1031
- default: z.ZodUnion<[z.ZodString, z.ZodObject<{
1032
- owner: z.ZodString;
1033
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1034
- } & {
1035
- type: z.ZodLiteral<"protocolFee">;
1036
- beneficiary: z.ZodString;
1037
- maxProtocolFee: z.ZodString;
1038
- protocolFee: z.ZodString;
1039
- }, "strip", z.ZodTypeAny, {
1040
- owner: string;
1041
- ownerOverrides?: Record<string, string> | undefined;
1042
- type: "protocolFee";
1043
- beneficiary: string;
1044
- maxProtocolFee: string;
1045
- protocolFee: string;
1046
- }, {
1047
- owner: string;
1048
- ownerOverrides?: Record<string, string> | undefined;
1049
- type: "protocolFee";
1050
- beneficiary: string;
1051
- maxProtocolFee: string;
1052
- protocolFee: string;
1053
- }>, z.ZodObject<{
1054
- owner: z.ZodString;
1055
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1056
- } & {
1057
- paused: z.ZodBoolean;
1058
- } & {
1059
- type: z.ZodLiteral<"pausableHook">;
1060
- }, "strip", z.ZodTypeAny, {
1061
- owner: string;
1062
- ownerOverrides?: Record<string, string> | undefined;
1063
- paused: boolean;
1064
- type: "pausableHook";
1065
- }, {
1066
- owner: string;
1067
- ownerOverrides?: Record<string, string> | undefined;
1068
- paused: boolean;
1069
- type: "pausableHook";
1070
- }>, z.ZodObject<{
1071
- owner: z.ZodString;
1072
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1073
- } & {
1074
- type: z.ZodLiteral<"opStackHook">;
1075
- nativeBridge: z.ZodString;
1076
- destinationChain: z.ZodString;
1077
- }, "strip", z.ZodTypeAny, {
1078
- owner: string;
1079
- ownerOverrides?: Record<string, string> | undefined;
1080
- type: "opStackHook";
1081
- nativeBridge: string;
1082
- destinationChain: string;
1083
- }, {
1084
- owner: string;
1085
- ownerOverrides?: Record<string, string> | undefined;
1086
- type: "opStackHook";
1087
- nativeBridge: string;
1088
- destinationChain: string;
1089
- }>, z.ZodObject<{
1090
- type: z.ZodLiteral<"merkleTreeHook">;
1091
- }, "strip", z.ZodTypeAny, {
1092
- type: "merkleTreeHook";
1093
- }, {
1094
- type: "merkleTreeHook";
1095
- }>, z.ZodObject<{
1096
- owner: z.ZodString;
1097
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1098
- } & {
1099
- type: z.ZodLiteral<"interchainGasPaymaster">;
1100
- beneficiary: z.ZodString;
1101
- oracleKey: z.ZodString;
1102
- overhead: z.ZodRecord<z.ZodString, z.ZodNumber>;
1103
- oracleConfig: z.ZodRecord<z.ZodString, z.ZodObject<{
1104
- gasPrice: z.ZodString;
1105
- tokenExchangeRate: z.ZodString;
1106
- } & {
1107
- tokenDecimals: z.ZodOptional<z.ZodNumber>;
1108
- } & {
1109
- typicalCost: z.ZodOptional<z.ZodObject<{
1110
- handleGasAmount: z.ZodNumber;
1111
- totalGasAmount: z.ZodNumber;
1112
- totalUsdCost: z.ZodNumber;
1113
- }, "strip", z.ZodTypeAny, {
1114
- handleGasAmount: number;
1115
- totalGasAmount: number;
1116
- totalUsdCost: number;
1117
- }, {
1118
- handleGasAmount: number;
1119
- totalGasAmount: number;
1120
- totalUsdCost: number;
1121
- }>>;
1122
- }, "strip", z.ZodTypeAny, {
1123
- gasPrice: string;
1124
- tokenExchangeRate: string;
1125
- tokenDecimals?: number | undefined;
1126
- typicalCost?: {
1127
- handleGasAmount: number;
1128
- totalGasAmount: number;
1129
- totalUsdCost: number;
1130
- } | undefined;
1131
- }, {
1132
- gasPrice: string;
1133
- tokenExchangeRate: string;
1134
- tokenDecimals?: number | undefined;
1135
- typicalCost?: {
1136
- handleGasAmount: number;
1137
- totalGasAmount: number;
1138
- totalUsdCost: number;
1139
- } | undefined;
1140
- }>>;
1141
- igpVersion: z.ZodOptional<z.ZodNativeEnum<typeof IgpVersion>>;
1142
- quoteSigners: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1143
- contractVersion: z.ZodOptional<z.ZodString>;
1144
- tokenOracleConfig: z.ZodOptional<z.ZodRecord<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, z.ZodRecord<z.ZodString, z.ZodObject<{
1145
- gasPrice: z.ZodString;
1146
- tokenExchangeRate: z.ZodString;
1147
- } & {
1148
- tokenDecimals: z.ZodOptional<z.ZodNumber>;
1149
- }, "strip", z.ZodTypeAny, {
1150
- gasPrice: string;
1151
- tokenExchangeRate: string;
1152
- tokenDecimals?: number | undefined;
1153
- }, {
1154
- gasPrice: string;
1155
- tokenExchangeRate: string;
1156
- tokenDecimals?: number | undefined;
1157
- }>>>>;
1158
- }, "strip", z.ZodTypeAny, {
1159
- owner: string;
1160
- ownerOverrides?: Record<string, string> | undefined;
1161
- type: "interchainGasPaymaster";
1162
- beneficiary: string;
1163
- oracleKey: string;
1164
- overhead: Record<string, number>;
1165
- oracleConfig: Record<string, {
1166
- gasPrice: string;
1167
- tokenExchangeRate: string;
1168
- tokenDecimals?: number | undefined;
1169
- typicalCost?: {
1170
- handleGasAmount: number;
1171
- totalGasAmount: number;
1172
- totalUsdCost: number;
1173
- } | undefined;
1174
- }>;
1175
- igpVersion?: IgpVersion | undefined;
1176
- quoteSigners?: string[] | undefined;
1177
- contractVersion?: string | undefined;
1178
- tokenOracleConfig?: Record<string, Record<string, {
1179
- gasPrice: string;
1180
- tokenExchangeRate: string;
1181
- tokenDecimals?: number | undefined;
1182
- }>> | undefined;
1183
- }, {
1184
- owner: string;
1185
- ownerOverrides?: Record<string, string> | undefined;
1186
- type: "interchainGasPaymaster";
1187
- beneficiary: string;
1188
- oracleKey: string;
1189
- overhead: Record<string, number>;
1190
- oracleConfig: Record<string, {
1191
- gasPrice: string;
1192
- tokenExchangeRate: string;
1193
- tokenDecimals?: number | undefined;
1194
- typicalCost?: {
1195
- handleGasAmount: number;
1196
- totalGasAmount: number;
1197
- totalUsdCost: number;
1198
- } | undefined;
1199
- }>;
1200
- igpVersion?: IgpVersion | undefined;
1201
- quoteSigners?: string[] | undefined;
1202
- contractVersion?: string | undefined;
1203
- tokenOracleConfig?: Record<string, Record<string, {
1204
- gasPrice: string;
1205
- tokenExchangeRate: string;
1206
- tokenDecimals?: number | undefined;
1207
- }>> | undefined;
1208
- }>, z.ZodType<DomainRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<FallbackRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<AmountRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<AggregationHookConfig, z.ZodTypeDef, unknown>, z.ZodType<ArbL2ToL1HookConfig, z.ZodTypeDef, unknown>, z.ZodObject<{
1209
- type: z.ZodLiteral<"defaultHook">;
1210
- }, "strip", z.ZodTypeAny, {
1211
- type: "defaultHook";
1212
- }, {
1213
- type: "defaultHook";
1214
- }>, z.ZodObject<{
1215
- type: z.ZodLiteral<"ccipHook">;
1216
- destinationChain: z.ZodString;
1217
- }, "strip", z.ZodTypeAny, {
1218
- type: "ccipHook";
1219
- destinationChain: string;
1220
- }, {
1221
- type: "ccipHook";
1222
- destinationChain: string;
1223
- }>, z.ZodObject<{
1224
- type: z.ZodLiteral<"cctpHook">;
1225
- address: z.ZodString;
1226
- }, "strip", z.ZodTypeAny, {
1227
- type: "cctpHook";
1228
- address: string;
1229
- }, {
1230
- type: "cctpHook";
1231
- address: string;
1232
- }>, z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
1233
- owner: z.ZodString;
1234
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1235
- } & {
1236
- type: z.ZodLiteral<"rateLimitedHook">;
1237
- maxCapacity: z.ZodString;
1238
- /**
1239
- * Refill window in seconds — must match the on-chain immutable
1240
- * `DURATION`. Defaults to 1 day (86400s) when omitted, matching the
1241
- * previous hard-coded on-chain window.
1242
- */
1243
- duration: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>>;
1244
- }, "strip", z.ZodTypeAny, {
1245
- owner: string;
1246
- ownerOverrides?: Record<string, string> | undefined;
1247
- type: "rateLimitedHook";
1248
- maxCapacity: string;
1249
- duration: bigint;
1250
- }, {
1251
- owner: string;
1252
- ownerOverrides?: Record<string, string> | undefined;
1253
- type: "rateLimitedHook";
1254
- maxCapacity: string;
1255
- duration?: string | number | bigint | undefined;
1256
- }>, {
1257
- owner: string;
1258
- ownerOverrides?: Record<string, string> | undefined;
1259
- type: "rateLimitedHook";
1260
- maxCapacity: string;
1261
- duration: bigint;
1262
- }, {
1263
- owner: string;
1264
- ownerOverrides?: Record<string, string> | undefined;
1265
- type: "rateLimitedHook";
1266
- maxCapacity: string;
1267
- duration?: string | number | bigint | undefined;
1268
- }>, {
1269
- owner: string;
1270
- ownerOverrides?: Record<string, string> | undefined;
1271
- type: "rateLimitedHook";
1272
- maxCapacity: string;
1273
- duration: bigint;
1274
- }, {
1275
- owner: string;
1276
- ownerOverrides?: Record<string, string> | undefined;
1277
- type: "rateLimitedHook";
1278
- maxCapacity: string;
1279
- duration?: string | number | bigint | undefined;
1280
- }>, {
1281
- owner: string;
1282
- ownerOverrides?: Record<string, string> | undefined;
1283
- type: "rateLimitedHook";
1284
- maxCapacity: string;
1285
- duration: bigint;
1286
- }, {
1287
- owner: string;
1288
- ownerOverrides?: Record<string, string> | undefined;
1289
- type: "rateLimitedHook";
1290
- maxCapacity: string;
1291
- duration?: string | number | bigint | undefined;
1292
- }>, z.ZodObject<{
1293
- type: z.ZodLiteral<"unknownHook">;
1294
- }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1295
- type: z.ZodLiteral<"unknownHook">;
1296
- }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1297
- type: z.ZodLiteral<"unknownHook">;
1298
- }, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
1299
- type: z.ZodLiteral<"predicateHook">;
1300
- address: z.ZodString;
1301
- }, "strip", z.ZodTypeAny, {
1302
- type: "predicateHook";
1303
- address: string;
1304
- }, {
1305
- type: "predicateHook";
1306
- address: string;
1307
- }>]>;
1308
- required: z.ZodUnion<[z.ZodString, z.ZodObject<{
1309
- owner: z.ZodString;
1310
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1311
- } & {
1312
- type: z.ZodLiteral<"protocolFee">;
1313
- beneficiary: z.ZodString;
1314
- maxProtocolFee: z.ZodString;
1315
- protocolFee: z.ZodString;
1316
- }, "strip", z.ZodTypeAny, {
1317
- owner: string;
1318
- ownerOverrides?: Record<string, string> | undefined;
1319
- type: "protocolFee";
1320
- beneficiary: string;
1321
- maxProtocolFee: string;
1322
- protocolFee: string;
1323
- }, {
1324
- owner: string;
1325
- ownerOverrides?: Record<string, string> | undefined;
1326
- type: "protocolFee";
1327
- beneficiary: string;
1328
- maxProtocolFee: string;
1329
- protocolFee: string;
1330
- }>, z.ZodObject<{
1331
- owner: z.ZodString;
1332
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1333
- } & {
1334
- paused: z.ZodBoolean;
1335
- } & {
1336
- type: z.ZodLiteral<"pausableHook">;
1337
- }, "strip", z.ZodTypeAny, {
1338
- owner: string;
1339
- ownerOverrides?: Record<string, string> | undefined;
1340
- paused: boolean;
1341
- type: "pausableHook";
1342
- }, {
1343
- owner: string;
1344
- ownerOverrides?: Record<string, string> | undefined;
1345
- paused: boolean;
1346
- type: "pausableHook";
1347
- }>, z.ZodObject<{
1348
- owner: z.ZodString;
1349
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1350
- } & {
1351
- type: z.ZodLiteral<"opStackHook">;
1352
- nativeBridge: z.ZodString;
1353
- destinationChain: z.ZodString;
1354
- }, "strip", z.ZodTypeAny, {
1355
- owner: string;
1356
- ownerOverrides?: Record<string, string> | undefined;
1357
- type: "opStackHook";
1358
- nativeBridge: string;
1359
- destinationChain: string;
1360
- }, {
1361
- owner: string;
1362
- ownerOverrides?: Record<string, string> | undefined;
1363
- type: "opStackHook";
1364
- nativeBridge: string;
1365
- destinationChain: string;
1366
- }>, z.ZodObject<{
1367
- type: z.ZodLiteral<"merkleTreeHook">;
1368
- }, "strip", z.ZodTypeAny, {
1369
- type: "merkleTreeHook";
1370
- }, {
1371
- type: "merkleTreeHook";
1372
- }>, z.ZodObject<{
1373
- owner: z.ZodString;
1374
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1375
- } & {
1376
- type: z.ZodLiteral<"interchainGasPaymaster">;
1377
- beneficiary: z.ZodString;
1378
- oracleKey: z.ZodString;
1379
- overhead: z.ZodRecord<z.ZodString, z.ZodNumber>;
1380
- oracleConfig: z.ZodRecord<z.ZodString, z.ZodObject<{
1381
- gasPrice: z.ZodString;
1382
- tokenExchangeRate: z.ZodString;
1383
- } & {
1384
- tokenDecimals: z.ZodOptional<z.ZodNumber>;
1385
- } & {
1386
- typicalCost: z.ZodOptional<z.ZodObject<{
1387
- handleGasAmount: z.ZodNumber;
1388
- totalGasAmount: z.ZodNumber;
1389
- totalUsdCost: z.ZodNumber;
1390
- }, "strip", z.ZodTypeAny, {
1391
- handleGasAmount: number;
1392
- totalGasAmount: number;
1393
- totalUsdCost: number;
1394
- }, {
1395
- handleGasAmount: number;
1396
- totalGasAmount: number;
1397
- totalUsdCost: number;
1398
- }>>;
1399
- }, "strip", z.ZodTypeAny, {
1400
- gasPrice: string;
1401
- tokenExchangeRate: string;
1402
- tokenDecimals?: number | undefined;
1403
- typicalCost?: {
1404
- handleGasAmount: number;
1405
- totalGasAmount: number;
1406
- totalUsdCost: number;
1407
- } | undefined;
1408
- }, {
1409
- gasPrice: string;
1410
- tokenExchangeRate: string;
1411
- tokenDecimals?: number | undefined;
1412
- typicalCost?: {
1413
- handleGasAmount: number;
1414
- totalGasAmount: number;
1415
- totalUsdCost: number;
1416
- } | undefined;
1417
- }>>;
1418
- igpVersion: z.ZodOptional<z.ZodNativeEnum<typeof IgpVersion>>;
1419
- quoteSigners: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1420
- contractVersion: z.ZodOptional<z.ZodString>;
1421
- tokenOracleConfig: z.ZodOptional<z.ZodRecord<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, z.ZodRecord<z.ZodString, z.ZodObject<{
1422
- gasPrice: z.ZodString;
1423
- tokenExchangeRate: z.ZodString;
1424
- } & {
1425
- tokenDecimals: z.ZodOptional<z.ZodNumber>;
1426
- }, "strip", z.ZodTypeAny, {
1427
- gasPrice: string;
1428
- tokenExchangeRate: string;
1429
- tokenDecimals?: number | undefined;
1430
- }, {
1431
- gasPrice: string;
1432
- tokenExchangeRate: string;
1433
- tokenDecimals?: number | undefined;
1434
- }>>>>;
1435
- }, "strip", z.ZodTypeAny, {
1436
- owner: string;
1437
- ownerOverrides?: Record<string, string> | undefined;
1438
- type: "interchainGasPaymaster";
1439
- beneficiary: string;
1440
- oracleKey: string;
1441
- overhead: Record<string, number>;
1442
- oracleConfig: Record<string, {
1443
- gasPrice: string;
1444
- tokenExchangeRate: string;
1445
- tokenDecimals?: number | undefined;
1446
- typicalCost?: {
1447
- handleGasAmount: number;
1448
- totalGasAmount: number;
1449
- totalUsdCost: number;
1450
- } | undefined;
1451
- }>;
1452
- igpVersion?: IgpVersion | undefined;
1453
- quoteSigners?: string[] | undefined;
1454
- contractVersion?: string | undefined;
1455
- tokenOracleConfig?: Record<string, Record<string, {
1456
- gasPrice: string;
1457
- tokenExchangeRate: string;
1458
- tokenDecimals?: number | undefined;
1459
- }>> | undefined;
1460
- }, {
1461
- owner: string;
1462
- ownerOverrides?: Record<string, string> | undefined;
1463
- type: "interchainGasPaymaster";
1464
- beneficiary: string;
1465
- oracleKey: string;
1466
- overhead: Record<string, number>;
1467
- oracleConfig: Record<string, {
1468
- gasPrice: string;
1469
- tokenExchangeRate: string;
1470
- tokenDecimals?: number | undefined;
1471
- typicalCost?: {
1472
- handleGasAmount: number;
1473
- totalGasAmount: number;
1474
- totalUsdCost: number;
1475
- } | undefined;
1476
- }>;
1477
- igpVersion?: IgpVersion | undefined;
1478
- quoteSigners?: string[] | undefined;
1479
- contractVersion?: string | undefined;
1480
- tokenOracleConfig?: Record<string, Record<string, {
1481
- gasPrice: string;
1482
- tokenExchangeRate: string;
1483
- tokenDecimals?: number | undefined;
1484
- }>> | undefined;
1485
- }>, z.ZodType<DomainRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<FallbackRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<AmountRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<AggregationHookConfig, z.ZodTypeDef, unknown>, z.ZodType<ArbL2ToL1HookConfig, z.ZodTypeDef, unknown>, z.ZodObject<{
1486
- type: z.ZodLiteral<"defaultHook">;
1487
- }, "strip", z.ZodTypeAny, {
1488
- type: "defaultHook";
1489
- }, {
1490
- type: "defaultHook";
1491
- }>, z.ZodObject<{
1492
- type: z.ZodLiteral<"ccipHook">;
1493
- destinationChain: z.ZodString;
1494
- }, "strip", z.ZodTypeAny, {
1495
- type: "ccipHook";
1496
- destinationChain: string;
1497
- }, {
1498
- type: "ccipHook";
1499
- destinationChain: string;
1500
- }>, z.ZodObject<{
1501
- type: z.ZodLiteral<"cctpHook">;
1502
- address: z.ZodString;
1503
- }, "strip", z.ZodTypeAny, {
1504
- type: "cctpHook";
1505
- address: string;
1506
- }, {
1507
- type: "cctpHook";
1508
- address: string;
1509
- }>, z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
1510
- owner: z.ZodString;
1511
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1512
- } & {
1513
- type: z.ZodLiteral<"rateLimitedHook">;
1514
- maxCapacity: z.ZodString;
1515
- /**
1516
- * Refill window in seconds — must match the on-chain immutable
1517
- * `DURATION`. Defaults to 1 day (86400s) when omitted, matching the
1518
- * previous hard-coded on-chain window.
1519
- */
1520
- duration: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>>;
1521
- }, "strip", z.ZodTypeAny, {
1522
- owner: string;
1523
- ownerOverrides?: Record<string, string> | undefined;
1524
- type: "rateLimitedHook";
1525
- maxCapacity: string;
1526
- duration: bigint;
1527
- }, {
1528
- owner: string;
1529
- ownerOverrides?: Record<string, string> | undefined;
1530
- type: "rateLimitedHook";
1531
- maxCapacity: string;
1532
- duration?: string | number | bigint | undefined;
1533
- }>, {
1534
- owner: string;
1535
- ownerOverrides?: Record<string, string> | undefined;
1536
- type: "rateLimitedHook";
1537
- maxCapacity: string;
1538
- duration: bigint;
1539
- }, {
1540
- owner: string;
1541
- ownerOverrides?: Record<string, string> | undefined;
1542
- type: "rateLimitedHook";
1543
- maxCapacity: string;
1544
- duration?: string | number | bigint | undefined;
1545
- }>, {
1546
- owner: string;
1547
- ownerOverrides?: Record<string, string> | undefined;
1548
- type: "rateLimitedHook";
1549
- maxCapacity: string;
1550
- duration: bigint;
1551
- }, {
1552
- owner: string;
1553
- ownerOverrides?: Record<string, string> | undefined;
1554
- type: "rateLimitedHook";
1555
- maxCapacity: string;
1556
- duration?: string | number | bigint | undefined;
1557
- }>, {
1558
- owner: string;
1559
- ownerOverrides?: Record<string, string> | undefined;
1560
- type: "rateLimitedHook";
1561
- maxCapacity: string;
1562
- duration: bigint;
1563
- }, {
1564
- owner: string;
1565
- ownerOverrides?: Record<string, string> | undefined;
1566
- type: "rateLimitedHook";
1567
- maxCapacity: string;
1568
- duration?: string | number | bigint | undefined;
1569
- }>, z.ZodObject<{
1570
- type: z.ZodLiteral<"unknownHook">;
1571
- }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1572
- type: z.ZodLiteral<"unknownHook">;
1573
- }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1574
- type: z.ZodLiteral<"unknownHook">;
1575
- }, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
1576
- type: z.ZodLiteral<"predicateHook">;
1577
- address: z.ZodString;
1578
- }, "strip", z.ZodTypeAny, {
1579
- type: "predicateHook";
1580
- address: string;
1581
- }, {
1582
- type: "predicateHook";
1583
- address: string;
1584
- }>]>;
1585
- }, "strip", z.ZodTypeAny, {
1586
- default: string | AggregationHookConfig | AmountRoutingHookConfig | ArbL2ToL1HookConfig | {
1587
- type: "merkleTreeHook";
1588
- } | {
1589
- owner: string;
1590
- ownerOverrides?: Record<string, string> | undefined;
1591
- type: "interchainGasPaymaster";
1592
- beneficiary: string;
1593
- oracleKey: string;
1594
- overhead: Record<string, number>;
1595
- oracleConfig: Record<string, {
1596
- gasPrice: string;
1597
- tokenExchangeRate: string;
1598
- tokenDecimals?: number | undefined;
1599
- typicalCost?: {
1600
- handleGasAmount: number;
1601
- totalGasAmount: number;
1602
- totalUsdCost: number;
1603
- } | undefined;
1604
- }>;
1605
- igpVersion?: IgpVersion | undefined;
1606
- quoteSigners?: string[] | undefined;
1607
- contractVersion?: string | undefined;
1608
- tokenOracleConfig?: Record<string, Record<string, {
1609
- gasPrice: string;
1610
- tokenExchangeRate: string;
1611
- tokenDecimals?: number | undefined;
1612
- }>> | undefined;
1613
- } | {
1614
- owner: string;
1615
- ownerOverrides?: Record<string, string> | undefined;
1616
- type: "protocolFee";
1617
- beneficiary: string;
1618
- maxProtocolFee: string;
1619
- protocolFee: string;
1620
- } | {
1621
- owner: string;
1622
- ownerOverrides?: Record<string, string> | undefined;
1623
- paused: boolean;
1624
- type: "pausableHook";
1625
- } | {
1626
- owner: string;
1627
- ownerOverrides?: Record<string, string> | undefined;
1628
- type: "opStackHook";
1629
- nativeBridge: string;
1630
- destinationChain: string;
1631
- } | {
1632
- type: "defaultHook";
1633
- } | {
1634
- type: "ccipHook";
1635
- destinationChain: string;
1636
- } | {
1637
- type: "cctpHook";
1638
- address: string;
1639
- } | {
1640
- owner: string;
1641
- ownerOverrides?: Record<string, string> | undefined;
1642
- type: "rateLimitedHook";
1643
- maxCapacity: string;
1644
- duration: bigint;
1645
- } | {
1646
- type: "predicateHook";
1647
- address: string;
1648
- } | DomainRoutingHookConfig | FallbackRoutingHookConfig | z.objectOutputType<{
1649
- type: z.ZodLiteral<"unknownHook">;
1650
- }, z.ZodTypeAny, "passthrough">;
1651
- required: string | AggregationHookConfig | AmountRoutingHookConfig | ArbL2ToL1HookConfig | {
1652
- type: "merkleTreeHook";
1653
- } | {
1654
- owner: string;
1655
- ownerOverrides?: Record<string, string> | undefined;
1656
- type: "interchainGasPaymaster";
1657
- beneficiary: string;
1658
- oracleKey: string;
1659
- overhead: Record<string, number>;
1660
- oracleConfig: Record<string, {
1661
- gasPrice: string;
1662
- tokenExchangeRate: string;
1663
- tokenDecimals?: number | undefined;
1664
- typicalCost?: {
1665
- handleGasAmount: number;
1666
- totalGasAmount: number;
1667
- totalUsdCost: number;
1668
- } | undefined;
1669
- }>;
1670
- igpVersion?: IgpVersion | undefined;
1671
- quoteSigners?: string[] | undefined;
1672
- contractVersion?: string | undefined;
1673
- tokenOracleConfig?: Record<string, Record<string, {
1674
- gasPrice: string;
1675
- tokenExchangeRate: string;
1676
- tokenDecimals?: number | undefined;
1677
- }>> | undefined;
1678
- } | {
1679
- owner: string;
1680
- ownerOverrides?: Record<string, string> | undefined;
1681
- type: "protocolFee";
1682
- beneficiary: string;
1683
- maxProtocolFee: string;
1684
- protocolFee: string;
1685
- } | {
1686
- owner: string;
1687
- ownerOverrides?: Record<string, string> | undefined;
1688
- paused: boolean;
1689
- type: "pausableHook";
1690
- } | {
1691
- owner: string;
1692
- ownerOverrides?: Record<string, string> | undefined;
1693
- type: "opStackHook";
1694
- nativeBridge: string;
1695
- destinationChain: string;
1696
- } | {
1697
- type: "defaultHook";
1698
- } | {
1699
- type: "ccipHook";
1700
- destinationChain: string;
1701
- } | {
1702
- type: "cctpHook";
1703
- address: string;
1704
- } | {
1705
- owner: string;
1706
- ownerOverrides?: Record<string, string> | undefined;
1707
- type: "rateLimitedHook";
1708
- maxCapacity: string;
1709
- duration: bigint;
1710
- } | {
1711
- type: "predicateHook";
1712
- address: string;
1713
- } | DomainRoutingHookConfig | FallbackRoutingHookConfig | z.objectOutputType<{
1714
- type: z.ZodLiteral<"unknownHook">;
1715
- }, z.ZodTypeAny, "passthrough">;
490
+ type: "delayedFlowRouterHookIsm";
491
+ warpRouter?: string | undefined;
492
+ thresholdBps: number;
493
+ maxDelay: number;
494
+ duration: string | number | bigint;
495
+ remoteIsms?: Record<string, string> | undefined;
496
+ }>;
497
+ export type DelayedFlowRouterHookConfig = z.infer<typeof DelayedFlowRouterHookConfigSchema>;
498
+ /**
499
+ * Recursively normalizes unknown hook type values to HookType.UNKNOWN.
500
+ * Use this before parsing with HookConfigSchema when configs may contain
501
+ * hook types not yet known to this SDK version.
502
+ *
503
+ * Note: String address configs (e.g., "0x...") are passed through unchanged
504
+ * since they represent deployed hook addresses, not hook type configs.
505
+ */
506
+ export declare function normalizeUnknownHookTypes<T>(config: T): T;
507
+ export declare const HookConfigSchema: z.ZodType<HookConfig, z.ZodTypeDef, unknown>;
508
+ /**
509
+ * Forward-compatible hook config schema that normalizes unknown hook types.
510
+ * Use this instead of HookConfigSchema when parsing configs that may contain
511
+ * hook types added in newer registry versions.
512
+ */
513
+ export declare const SafeParseHookConfigSchema: z.ZodEffects<z.ZodType<HookConfig, z.ZodTypeDef, unknown>, HookConfig, unknown>;
514
+ export declare const HooksConfigSchema: z.ZodObject<{
515
+ default: z.ZodType<HookConfig, z.ZodTypeDef, unknown>;
516
+ required: z.ZodType<HookConfig, z.ZodTypeDef, unknown>;
517
+ }, "strip", z.ZodTypeAny, {
518
+ default: HookConfig;
519
+ required: HookConfig;
1716
520
  }, {
1717
521
  default?: unknown;
1718
522
  required?: unknown;
1719
523
  }>;
1720
524
  export type HooksConfig = z.infer<typeof HooksConfigSchema>;
1721
525
  export declare const HooksConfigMapSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
1722
- default: z.ZodUnion<[z.ZodString, z.ZodObject<{
1723
- owner: z.ZodString;
1724
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1725
- } & {
1726
- type: z.ZodLiteral<"protocolFee">;
1727
- beneficiary: z.ZodString;
1728
- maxProtocolFee: z.ZodString;
1729
- protocolFee: z.ZodString;
1730
- }, "strip", z.ZodTypeAny, {
1731
- owner: string;
1732
- ownerOverrides?: Record<string, string> | undefined;
1733
- type: "protocolFee";
1734
- beneficiary: string;
1735
- maxProtocolFee: string;
1736
- protocolFee: string;
1737
- }, {
1738
- owner: string;
1739
- ownerOverrides?: Record<string, string> | undefined;
1740
- type: "protocolFee";
1741
- beneficiary: string;
1742
- maxProtocolFee: string;
1743
- protocolFee: string;
1744
- }>, z.ZodObject<{
1745
- owner: z.ZodString;
1746
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1747
- } & {
1748
- paused: z.ZodBoolean;
1749
- } & {
1750
- type: z.ZodLiteral<"pausableHook">;
1751
- }, "strip", z.ZodTypeAny, {
1752
- owner: string;
1753
- ownerOverrides?: Record<string, string> | undefined;
1754
- paused: boolean;
1755
- type: "pausableHook";
1756
- }, {
1757
- owner: string;
1758
- ownerOverrides?: Record<string, string> | undefined;
1759
- paused: boolean;
1760
- type: "pausableHook";
1761
- }>, z.ZodObject<{
1762
- owner: z.ZodString;
1763
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1764
- } & {
1765
- type: z.ZodLiteral<"opStackHook">;
1766
- nativeBridge: z.ZodString;
1767
- destinationChain: z.ZodString;
1768
- }, "strip", z.ZodTypeAny, {
1769
- owner: string;
1770
- ownerOverrides?: Record<string, string> | undefined;
1771
- type: "opStackHook";
1772
- nativeBridge: string;
1773
- destinationChain: string;
1774
- }, {
1775
- owner: string;
1776
- ownerOverrides?: Record<string, string> | undefined;
1777
- type: "opStackHook";
1778
- nativeBridge: string;
1779
- destinationChain: string;
1780
- }>, z.ZodObject<{
1781
- type: z.ZodLiteral<"merkleTreeHook">;
1782
- }, "strip", z.ZodTypeAny, {
1783
- type: "merkleTreeHook";
1784
- }, {
1785
- type: "merkleTreeHook";
1786
- }>, z.ZodObject<{
1787
- owner: z.ZodString;
1788
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1789
- } & {
1790
- type: z.ZodLiteral<"interchainGasPaymaster">;
1791
- beneficiary: z.ZodString;
1792
- oracleKey: z.ZodString;
1793
- overhead: z.ZodRecord<z.ZodString, z.ZodNumber>;
1794
- oracleConfig: z.ZodRecord<z.ZodString, z.ZodObject<{
1795
- gasPrice: z.ZodString;
1796
- tokenExchangeRate: z.ZodString;
1797
- } & {
1798
- tokenDecimals: z.ZodOptional<z.ZodNumber>;
1799
- } & {
1800
- typicalCost: z.ZodOptional<z.ZodObject<{
1801
- handleGasAmount: z.ZodNumber;
1802
- totalGasAmount: z.ZodNumber;
1803
- totalUsdCost: z.ZodNumber;
1804
- }, "strip", z.ZodTypeAny, {
1805
- handleGasAmount: number;
1806
- totalGasAmount: number;
1807
- totalUsdCost: number;
1808
- }, {
1809
- handleGasAmount: number;
1810
- totalGasAmount: number;
1811
- totalUsdCost: number;
1812
- }>>;
1813
- }, "strip", z.ZodTypeAny, {
1814
- gasPrice: string;
1815
- tokenExchangeRate: string;
1816
- tokenDecimals?: number | undefined;
1817
- typicalCost?: {
1818
- handleGasAmount: number;
1819
- totalGasAmount: number;
1820
- totalUsdCost: number;
1821
- } | undefined;
1822
- }, {
1823
- gasPrice: string;
1824
- tokenExchangeRate: string;
1825
- tokenDecimals?: number | undefined;
1826
- typicalCost?: {
1827
- handleGasAmount: number;
1828
- totalGasAmount: number;
1829
- totalUsdCost: number;
1830
- } | undefined;
1831
- }>>;
1832
- igpVersion: z.ZodOptional<z.ZodNativeEnum<typeof IgpVersion>>;
1833
- quoteSigners: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1834
- contractVersion: z.ZodOptional<z.ZodString>;
1835
- tokenOracleConfig: z.ZodOptional<z.ZodRecord<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, z.ZodRecord<z.ZodString, z.ZodObject<{
1836
- gasPrice: z.ZodString;
1837
- tokenExchangeRate: z.ZodString;
1838
- } & {
1839
- tokenDecimals: z.ZodOptional<z.ZodNumber>;
1840
- }, "strip", z.ZodTypeAny, {
1841
- gasPrice: string;
1842
- tokenExchangeRate: string;
1843
- tokenDecimals?: number | undefined;
1844
- }, {
1845
- gasPrice: string;
1846
- tokenExchangeRate: string;
1847
- tokenDecimals?: number | undefined;
1848
- }>>>>;
1849
- }, "strip", z.ZodTypeAny, {
1850
- owner: string;
1851
- ownerOverrides?: Record<string, string> | undefined;
1852
- type: "interchainGasPaymaster";
1853
- beneficiary: string;
1854
- oracleKey: string;
1855
- overhead: Record<string, number>;
1856
- oracleConfig: Record<string, {
1857
- gasPrice: string;
1858
- tokenExchangeRate: string;
1859
- tokenDecimals?: number | undefined;
1860
- typicalCost?: {
1861
- handleGasAmount: number;
1862
- totalGasAmount: number;
1863
- totalUsdCost: number;
1864
- } | undefined;
1865
- }>;
1866
- igpVersion?: IgpVersion | undefined;
1867
- quoteSigners?: string[] | undefined;
1868
- contractVersion?: string | undefined;
1869
- tokenOracleConfig?: Record<string, Record<string, {
1870
- gasPrice: string;
1871
- tokenExchangeRate: string;
1872
- tokenDecimals?: number | undefined;
1873
- }>> | undefined;
1874
- }, {
1875
- owner: string;
1876
- ownerOverrides?: Record<string, string> | undefined;
1877
- type: "interchainGasPaymaster";
1878
- beneficiary: string;
1879
- oracleKey: string;
1880
- overhead: Record<string, number>;
1881
- oracleConfig: Record<string, {
1882
- gasPrice: string;
1883
- tokenExchangeRate: string;
1884
- tokenDecimals?: number | undefined;
1885
- typicalCost?: {
1886
- handleGasAmount: number;
1887
- totalGasAmount: number;
1888
- totalUsdCost: number;
1889
- } | undefined;
1890
- }>;
1891
- igpVersion?: IgpVersion | undefined;
1892
- quoteSigners?: string[] | undefined;
1893
- contractVersion?: string | undefined;
1894
- tokenOracleConfig?: Record<string, Record<string, {
1895
- gasPrice: string;
1896
- tokenExchangeRate: string;
1897
- tokenDecimals?: number | undefined;
1898
- }>> | undefined;
1899
- }>, z.ZodType<DomainRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<FallbackRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<AmountRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<AggregationHookConfig, z.ZodTypeDef, unknown>, z.ZodType<ArbL2ToL1HookConfig, z.ZodTypeDef, unknown>, z.ZodObject<{
1900
- type: z.ZodLiteral<"defaultHook">;
1901
- }, "strip", z.ZodTypeAny, {
1902
- type: "defaultHook";
1903
- }, {
1904
- type: "defaultHook";
1905
- }>, z.ZodObject<{
1906
- type: z.ZodLiteral<"ccipHook">;
1907
- destinationChain: z.ZodString;
1908
- }, "strip", z.ZodTypeAny, {
1909
- type: "ccipHook";
1910
- destinationChain: string;
1911
- }, {
1912
- type: "ccipHook";
1913
- destinationChain: string;
1914
- }>, z.ZodObject<{
1915
- type: z.ZodLiteral<"cctpHook">;
1916
- address: z.ZodString;
1917
- }, "strip", z.ZodTypeAny, {
1918
- type: "cctpHook";
1919
- address: string;
1920
- }, {
1921
- type: "cctpHook";
1922
- address: string;
1923
- }>, z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
1924
- owner: z.ZodString;
1925
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1926
- } & {
1927
- type: z.ZodLiteral<"rateLimitedHook">;
1928
- maxCapacity: z.ZodString;
1929
- /**
1930
- * Refill window in seconds — must match the on-chain immutable
1931
- * `DURATION`. Defaults to 1 day (86400s) when omitted, matching the
1932
- * previous hard-coded on-chain window.
1933
- */
1934
- duration: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>>;
1935
- }, "strip", z.ZodTypeAny, {
1936
- owner: string;
1937
- ownerOverrides?: Record<string, string> | undefined;
1938
- type: "rateLimitedHook";
1939
- maxCapacity: string;
1940
- duration: bigint;
1941
- }, {
1942
- owner: string;
1943
- ownerOverrides?: Record<string, string> | undefined;
1944
- type: "rateLimitedHook";
1945
- maxCapacity: string;
1946
- duration?: string | number | bigint | undefined;
1947
- }>, {
1948
- owner: string;
1949
- ownerOverrides?: Record<string, string> | undefined;
1950
- type: "rateLimitedHook";
1951
- maxCapacity: string;
1952
- duration: bigint;
1953
- }, {
1954
- owner: string;
1955
- ownerOverrides?: Record<string, string> | undefined;
1956
- type: "rateLimitedHook";
1957
- maxCapacity: string;
1958
- duration?: string | number | bigint | undefined;
1959
- }>, {
1960
- owner: string;
1961
- ownerOverrides?: Record<string, string> | undefined;
1962
- type: "rateLimitedHook";
1963
- maxCapacity: string;
1964
- duration: bigint;
1965
- }, {
1966
- owner: string;
1967
- ownerOverrides?: Record<string, string> | undefined;
1968
- type: "rateLimitedHook";
1969
- maxCapacity: string;
1970
- duration?: string | number | bigint | undefined;
1971
- }>, {
1972
- owner: string;
1973
- ownerOverrides?: Record<string, string> | undefined;
1974
- type: "rateLimitedHook";
1975
- maxCapacity: string;
1976
- duration: bigint;
1977
- }, {
1978
- owner: string;
1979
- ownerOverrides?: Record<string, string> | undefined;
1980
- type: "rateLimitedHook";
1981
- maxCapacity: string;
1982
- duration?: string | number | bigint | undefined;
1983
- }>, z.ZodObject<{
1984
- type: z.ZodLiteral<"unknownHook">;
1985
- }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1986
- type: z.ZodLiteral<"unknownHook">;
1987
- }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1988
- type: z.ZodLiteral<"unknownHook">;
1989
- }, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
1990
- type: z.ZodLiteral<"predicateHook">;
1991
- address: z.ZodString;
1992
- }, "strip", z.ZodTypeAny, {
1993
- type: "predicateHook";
1994
- address: string;
1995
- }, {
1996
- type: "predicateHook";
1997
- address: string;
1998
- }>]>;
1999
- required: z.ZodUnion<[z.ZodString, z.ZodObject<{
2000
- owner: z.ZodString;
2001
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2002
- } & {
2003
- type: z.ZodLiteral<"protocolFee">;
2004
- beneficiary: z.ZodString;
2005
- maxProtocolFee: z.ZodString;
2006
- protocolFee: z.ZodString;
2007
- }, "strip", z.ZodTypeAny, {
2008
- owner: string;
2009
- ownerOverrides?: Record<string, string> | undefined;
2010
- type: "protocolFee";
2011
- beneficiary: string;
2012
- maxProtocolFee: string;
2013
- protocolFee: string;
2014
- }, {
2015
- owner: string;
2016
- ownerOverrides?: Record<string, string> | undefined;
2017
- type: "protocolFee";
2018
- beneficiary: string;
2019
- maxProtocolFee: string;
2020
- protocolFee: string;
2021
- }>, z.ZodObject<{
2022
- owner: z.ZodString;
2023
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2024
- } & {
2025
- paused: z.ZodBoolean;
2026
- } & {
2027
- type: z.ZodLiteral<"pausableHook">;
2028
- }, "strip", z.ZodTypeAny, {
2029
- owner: string;
2030
- ownerOverrides?: Record<string, string> | undefined;
2031
- paused: boolean;
2032
- type: "pausableHook";
2033
- }, {
2034
- owner: string;
2035
- ownerOverrides?: Record<string, string> | undefined;
2036
- paused: boolean;
2037
- type: "pausableHook";
2038
- }>, z.ZodObject<{
2039
- owner: z.ZodString;
2040
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2041
- } & {
2042
- type: z.ZodLiteral<"opStackHook">;
2043
- nativeBridge: z.ZodString;
2044
- destinationChain: z.ZodString;
2045
- }, "strip", z.ZodTypeAny, {
2046
- owner: string;
2047
- ownerOverrides?: Record<string, string> | undefined;
2048
- type: "opStackHook";
2049
- nativeBridge: string;
2050
- destinationChain: string;
2051
- }, {
2052
- owner: string;
2053
- ownerOverrides?: Record<string, string> | undefined;
2054
- type: "opStackHook";
2055
- nativeBridge: string;
2056
- destinationChain: string;
2057
- }>, z.ZodObject<{
2058
- type: z.ZodLiteral<"merkleTreeHook">;
2059
- }, "strip", z.ZodTypeAny, {
2060
- type: "merkleTreeHook";
2061
- }, {
2062
- type: "merkleTreeHook";
2063
- }>, z.ZodObject<{
2064
- owner: z.ZodString;
2065
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2066
- } & {
2067
- type: z.ZodLiteral<"interchainGasPaymaster">;
2068
- beneficiary: z.ZodString;
2069
- oracleKey: z.ZodString;
2070
- overhead: z.ZodRecord<z.ZodString, z.ZodNumber>;
2071
- oracleConfig: z.ZodRecord<z.ZodString, z.ZodObject<{
2072
- gasPrice: z.ZodString;
2073
- tokenExchangeRate: z.ZodString;
2074
- } & {
2075
- tokenDecimals: z.ZodOptional<z.ZodNumber>;
2076
- } & {
2077
- typicalCost: z.ZodOptional<z.ZodObject<{
2078
- handleGasAmount: z.ZodNumber;
2079
- totalGasAmount: z.ZodNumber;
2080
- totalUsdCost: z.ZodNumber;
2081
- }, "strip", z.ZodTypeAny, {
2082
- handleGasAmount: number;
2083
- totalGasAmount: number;
2084
- totalUsdCost: number;
2085
- }, {
2086
- handleGasAmount: number;
2087
- totalGasAmount: number;
2088
- totalUsdCost: number;
2089
- }>>;
2090
- }, "strip", z.ZodTypeAny, {
2091
- gasPrice: string;
2092
- tokenExchangeRate: string;
2093
- tokenDecimals?: number | undefined;
2094
- typicalCost?: {
2095
- handleGasAmount: number;
2096
- totalGasAmount: number;
2097
- totalUsdCost: number;
2098
- } | undefined;
2099
- }, {
2100
- gasPrice: string;
2101
- tokenExchangeRate: string;
2102
- tokenDecimals?: number | undefined;
2103
- typicalCost?: {
2104
- handleGasAmount: number;
2105
- totalGasAmount: number;
2106
- totalUsdCost: number;
2107
- } | undefined;
2108
- }>>;
2109
- igpVersion: z.ZodOptional<z.ZodNativeEnum<typeof IgpVersion>>;
2110
- quoteSigners: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2111
- contractVersion: z.ZodOptional<z.ZodString>;
2112
- tokenOracleConfig: z.ZodOptional<z.ZodRecord<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, z.ZodRecord<z.ZodString, z.ZodObject<{
2113
- gasPrice: z.ZodString;
2114
- tokenExchangeRate: z.ZodString;
2115
- } & {
2116
- tokenDecimals: z.ZodOptional<z.ZodNumber>;
2117
- }, "strip", z.ZodTypeAny, {
2118
- gasPrice: string;
2119
- tokenExchangeRate: string;
2120
- tokenDecimals?: number | undefined;
2121
- }, {
2122
- gasPrice: string;
2123
- tokenExchangeRate: string;
2124
- tokenDecimals?: number | undefined;
2125
- }>>>>;
2126
- }, "strip", z.ZodTypeAny, {
2127
- owner: string;
2128
- ownerOverrides?: Record<string, string> | undefined;
2129
- type: "interchainGasPaymaster";
2130
- beneficiary: string;
2131
- oracleKey: string;
2132
- overhead: Record<string, number>;
2133
- oracleConfig: Record<string, {
2134
- gasPrice: string;
2135
- tokenExchangeRate: string;
2136
- tokenDecimals?: number | undefined;
2137
- typicalCost?: {
2138
- handleGasAmount: number;
2139
- totalGasAmount: number;
2140
- totalUsdCost: number;
2141
- } | undefined;
2142
- }>;
2143
- igpVersion?: IgpVersion | undefined;
2144
- quoteSigners?: string[] | undefined;
2145
- contractVersion?: string | undefined;
2146
- tokenOracleConfig?: Record<string, Record<string, {
2147
- gasPrice: string;
2148
- tokenExchangeRate: string;
2149
- tokenDecimals?: number | undefined;
2150
- }>> | undefined;
2151
- }, {
2152
- owner: string;
2153
- ownerOverrides?: Record<string, string> | undefined;
2154
- type: "interchainGasPaymaster";
2155
- beneficiary: string;
2156
- oracleKey: string;
2157
- overhead: Record<string, number>;
2158
- oracleConfig: Record<string, {
2159
- gasPrice: string;
2160
- tokenExchangeRate: string;
2161
- tokenDecimals?: number | undefined;
2162
- typicalCost?: {
2163
- handleGasAmount: number;
2164
- totalGasAmount: number;
2165
- totalUsdCost: number;
2166
- } | undefined;
2167
- }>;
2168
- igpVersion?: IgpVersion | undefined;
2169
- quoteSigners?: string[] | undefined;
2170
- contractVersion?: string | undefined;
2171
- tokenOracleConfig?: Record<string, Record<string, {
2172
- gasPrice: string;
2173
- tokenExchangeRate: string;
2174
- tokenDecimals?: number | undefined;
2175
- }>> | undefined;
2176
- }>, z.ZodType<DomainRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<FallbackRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<AmountRoutingHookConfig, z.ZodTypeDef, unknown>, z.ZodType<AggregationHookConfig, z.ZodTypeDef, unknown>, z.ZodType<ArbL2ToL1HookConfig, z.ZodTypeDef, unknown>, z.ZodObject<{
2177
- type: z.ZodLiteral<"defaultHook">;
2178
- }, "strip", z.ZodTypeAny, {
2179
- type: "defaultHook";
2180
- }, {
2181
- type: "defaultHook";
2182
- }>, z.ZodObject<{
2183
- type: z.ZodLiteral<"ccipHook">;
2184
- destinationChain: z.ZodString;
2185
- }, "strip", z.ZodTypeAny, {
2186
- type: "ccipHook";
2187
- destinationChain: string;
2188
- }, {
2189
- type: "ccipHook";
2190
- destinationChain: string;
2191
- }>, z.ZodObject<{
2192
- type: z.ZodLiteral<"cctpHook">;
2193
- address: z.ZodString;
2194
- }, "strip", z.ZodTypeAny, {
2195
- type: "cctpHook";
2196
- address: string;
2197
- }, {
2198
- type: "cctpHook";
2199
- address: string;
2200
- }>, z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
2201
- owner: z.ZodString;
2202
- ownerOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2203
- } & {
2204
- type: z.ZodLiteral<"rateLimitedHook">;
2205
- maxCapacity: z.ZodString;
2206
- /**
2207
- * Refill window in seconds — must match the on-chain immutable
2208
- * `DURATION`. Defaults to 1 day (86400s) when omitted, matching the
2209
- * previous hard-coded on-chain window.
2210
- */
2211
- duration: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>>;
2212
- }, "strip", z.ZodTypeAny, {
2213
- owner: string;
2214
- ownerOverrides?: Record<string, string> | undefined;
2215
- type: "rateLimitedHook";
2216
- maxCapacity: string;
2217
- duration: bigint;
2218
- }, {
2219
- owner: string;
2220
- ownerOverrides?: Record<string, string> | undefined;
2221
- type: "rateLimitedHook";
2222
- maxCapacity: string;
2223
- duration?: string | number | bigint | undefined;
2224
- }>, {
2225
- owner: string;
2226
- ownerOverrides?: Record<string, string> | undefined;
2227
- type: "rateLimitedHook";
2228
- maxCapacity: string;
2229
- duration: bigint;
2230
- }, {
2231
- owner: string;
2232
- ownerOverrides?: Record<string, string> | undefined;
2233
- type: "rateLimitedHook";
2234
- maxCapacity: string;
2235
- duration?: string | number | bigint | undefined;
2236
- }>, {
2237
- owner: string;
2238
- ownerOverrides?: Record<string, string> | undefined;
2239
- type: "rateLimitedHook";
2240
- maxCapacity: string;
2241
- duration: bigint;
2242
- }, {
2243
- owner: string;
2244
- ownerOverrides?: Record<string, string> | undefined;
2245
- type: "rateLimitedHook";
2246
- maxCapacity: string;
2247
- duration?: string | number | bigint | undefined;
2248
- }>, {
2249
- owner: string;
2250
- ownerOverrides?: Record<string, string> | undefined;
2251
- type: "rateLimitedHook";
2252
- maxCapacity: string;
2253
- duration: bigint;
2254
- }, {
2255
- owner: string;
2256
- ownerOverrides?: Record<string, string> | undefined;
2257
- type: "rateLimitedHook";
2258
- maxCapacity: string;
2259
- duration?: string | number | bigint | undefined;
2260
- }>, z.ZodObject<{
2261
- type: z.ZodLiteral<"unknownHook">;
2262
- }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
2263
- type: z.ZodLiteral<"unknownHook">;
2264
- }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
2265
- type: z.ZodLiteral<"unknownHook">;
2266
- }, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
2267
- type: z.ZodLiteral<"predicateHook">;
2268
- address: z.ZodString;
2269
- }, "strip", z.ZodTypeAny, {
2270
- type: "predicateHook";
2271
- address: string;
2272
- }, {
2273
- type: "predicateHook";
2274
- address: string;
2275
- }>]>;
526
+ default: z.ZodType<HookConfig, z.ZodTypeDef, unknown>;
527
+ required: z.ZodType<HookConfig, z.ZodTypeDef, unknown>;
2276
528
  }, "strip", z.ZodTypeAny, {
2277
- default: string | AggregationHookConfig | AmountRoutingHookConfig | ArbL2ToL1HookConfig | {
2278
- type: "merkleTreeHook";
2279
- } | {
2280
- owner: string;
2281
- ownerOverrides?: Record<string, string> | undefined;
2282
- type: "interchainGasPaymaster";
2283
- beneficiary: string;
2284
- oracleKey: string;
2285
- overhead: Record<string, number>;
2286
- oracleConfig: Record<string, {
2287
- gasPrice: string;
2288
- tokenExchangeRate: string;
2289
- tokenDecimals?: number | undefined;
2290
- typicalCost?: {
2291
- handleGasAmount: number;
2292
- totalGasAmount: number;
2293
- totalUsdCost: number;
2294
- } | undefined;
2295
- }>;
2296
- igpVersion?: IgpVersion | undefined;
2297
- quoteSigners?: string[] | undefined;
2298
- contractVersion?: string | undefined;
2299
- tokenOracleConfig?: Record<string, Record<string, {
2300
- gasPrice: string;
2301
- tokenExchangeRate: string;
2302
- tokenDecimals?: number | undefined;
2303
- }>> | undefined;
2304
- } | {
2305
- owner: string;
2306
- ownerOverrides?: Record<string, string> | undefined;
2307
- type: "protocolFee";
2308
- beneficiary: string;
2309
- maxProtocolFee: string;
2310
- protocolFee: string;
2311
- } | {
2312
- owner: string;
2313
- ownerOverrides?: Record<string, string> | undefined;
2314
- paused: boolean;
2315
- type: "pausableHook";
2316
- } | {
2317
- owner: string;
2318
- ownerOverrides?: Record<string, string> | undefined;
2319
- type: "opStackHook";
2320
- nativeBridge: string;
2321
- destinationChain: string;
2322
- } | {
2323
- type: "defaultHook";
2324
- } | {
2325
- type: "ccipHook";
2326
- destinationChain: string;
2327
- } | {
2328
- type: "cctpHook";
2329
- address: string;
2330
- } | {
2331
- owner: string;
2332
- ownerOverrides?: Record<string, string> | undefined;
2333
- type: "rateLimitedHook";
2334
- maxCapacity: string;
2335
- duration: bigint;
2336
- } | {
2337
- type: "predicateHook";
2338
- address: string;
2339
- } | DomainRoutingHookConfig | FallbackRoutingHookConfig | z.objectOutputType<{
2340
- type: z.ZodLiteral<"unknownHook">;
2341
- }, z.ZodTypeAny, "passthrough">;
2342
- required: string | AggregationHookConfig | AmountRoutingHookConfig | ArbL2ToL1HookConfig | {
2343
- type: "merkleTreeHook";
2344
- } | {
2345
- owner: string;
2346
- ownerOverrides?: Record<string, string> | undefined;
2347
- type: "interchainGasPaymaster";
2348
- beneficiary: string;
2349
- oracleKey: string;
2350
- overhead: Record<string, number>;
2351
- oracleConfig: Record<string, {
2352
- gasPrice: string;
2353
- tokenExchangeRate: string;
2354
- tokenDecimals?: number | undefined;
2355
- typicalCost?: {
2356
- handleGasAmount: number;
2357
- totalGasAmount: number;
2358
- totalUsdCost: number;
2359
- } | undefined;
2360
- }>;
2361
- igpVersion?: IgpVersion | undefined;
2362
- quoteSigners?: string[] | undefined;
2363
- contractVersion?: string | undefined;
2364
- tokenOracleConfig?: Record<string, Record<string, {
2365
- gasPrice: string;
2366
- tokenExchangeRate: string;
2367
- tokenDecimals?: number | undefined;
2368
- }>> | undefined;
2369
- } | {
2370
- owner: string;
2371
- ownerOverrides?: Record<string, string> | undefined;
2372
- type: "protocolFee";
2373
- beneficiary: string;
2374
- maxProtocolFee: string;
2375
- protocolFee: string;
2376
- } | {
2377
- owner: string;
2378
- ownerOverrides?: Record<string, string> | undefined;
2379
- paused: boolean;
2380
- type: "pausableHook";
2381
- } | {
2382
- owner: string;
2383
- ownerOverrides?: Record<string, string> | undefined;
2384
- type: "opStackHook";
2385
- nativeBridge: string;
2386
- destinationChain: string;
2387
- } | {
2388
- type: "defaultHook";
2389
- } | {
2390
- type: "ccipHook";
2391
- destinationChain: string;
2392
- } | {
2393
- type: "cctpHook";
2394
- address: string;
2395
- } | {
2396
- owner: string;
2397
- ownerOverrides?: Record<string, string> | undefined;
2398
- type: "rateLimitedHook";
2399
- maxCapacity: string;
2400
- duration: bigint;
2401
- } | {
2402
- type: "predicateHook";
2403
- address: string;
2404
- } | DomainRoutingHookConfig | FallbackRoutingHookConfig | z.objectOutputType<{
2405
- type: z.ZodLiteral<"unknownHook">;
2406
- }, z.ZodTypeAny, "passthrough">;
529
+ default: HookConfig;
530
+ required: HookConfig;
2407
531
  }, {
2408
532
  default?: unknown;
2409
533
  required?: unknown;