@pufferfinance/puffer-sdk 1.28.5 → 1.28.6

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 (135) hide show
  1. package/dist/api/puffer-client-helpers.cjs +1 -1
  2. package/dist/api/puffer-client-helpers.cjs.map +1 -1
  3. package/dist/api/puffer-client-helpers.js +3 -3
  4. package/dist/api/puffer-client-helpers.js.map +1 -1
  5. package/dist/api/puffer-client.cjs +1 -1
  6. package/dist/api/puffer-client.js +2 -2
  7. package/dist/{ccip-LIGR3N1A.cjs → ccip-Dv8Z-tXr.cjs} +2 -2
  8. package/dist/{ccip-LIGR3N1A.cjs.map → ccip-Dv8Z-tXr.cjs.map} +1 -1
  9. package/dist/{ccip-78YM988s.js → ccip-dYaIZXTj.js} +4 -4
  10. package/dist/{ccip-78YM988s.js.map → ccip-dYaIZXTj.js.map} +1 -1
  11. package/dist/chains/constants.cjs +1 -1
  12. package/dist/chains/constants.js +1 -1
  13. package/dist/constants-4-ehn8UI.cjs +9 -0
  14. package/dist/constants-4-ehn8UI.cjs.map +1 -0
  15. package/dist/{constants-CuIEh_ZS.js → constants-BO_Dvglw.js} +163 -143
  16. package/dist/constants-BO_Dvglw.js.map +1 -0
  17. package/dist/contracts/addresses.cjs +1 -1
  18. package/dist/contracts/addresses.js +1 -1
  19. package/dist/contracts/handlers/carrot-staking-handler.cjs +1 -1
  20. package/dist/contracts/handlers/carrot-staking-handler.d.ts +18 -0
  21. package/dist/contracts/handlers/carrot-staking-handler.js +2 -2
  22. package/dist/contracts/handlers/carrot-vesting-handler.cjs +1 -1
  23. package/dist/contracts/handlers/carrot-vesting-handler.d.ts +18 -0
  24. package/dist/contracts/handlers/carrot-vesting-handler.js +2 -2
  25. package/dist/contracts/handlers/concrete-vault-handler.cjs +1 -1
  26. package/dist/contracts/handlers/concrete-vault-handler.d.ts +18 -0
  27. package/dist/contracts/handlers/concrete-vault-handler.js +2 -2
  28. package/dist/contracts/handlers/distributor-handler.cjs +1 -1
  29. package/dist/contracts/handlers/distributor-handler.d.ts +18 -0
  30. package/dist/contracts/handlers/distributor-handler.js +2 -2
  31. package/dist/contracts/handlers/erc20-permit-handler.cjs +1 -1
  32. package/dist/contracts/handlers/erc20-permit-handler.cjs.map +1 -1
  33. package/dist/contracts/handlers/erc20-permit-handler.d.ts +18 -0
  34. package/dist/contracts/handlers/erc20-permit-handler.js +3 -3
  35. package/dist/contracts/handlers/erc20-permit-handler.js.map +1 -1
  36. package/dist/contracts/handlers/gauge-registry-handler.cjs +1 -1
  37. package/dist/contracts/handlers/gauge-registry-handler.d.ts +18 -0
  38. package/dist/contracts/handlers/gauge-registry-handler.js +2 -2
  39. package/dist/contracts/handlers/guardian-module-handler.cjs +1 -1
  40. package/dist/contracts/handlers/guardian-module-handler.d.ts +18 -0
  41. package/dist/contracts/handlers/guardian-module-handler.js +2 -2
  42. package/dist/contracts/handlers/institutional-access-manager-handler.cjs +1 -1
  43. package/dist/contracts/handlers/institutional-access-manager-handler.d.ts +18 -0
  44. package/dist/contracts/handlers/institutional-access-manager-handler.js +3 -3
  45. package/dist/contracts/handlers/institutional-vault-handler.cjs +1 -1
  46. package/dist/contracts/handlers/institutional-vault-handler.d.ts +18 -0
  47. package/dist/contracts/handlers/institutional-vault-handler.js +2 -2
  48. package/dist/contracts/handlers/l1-reward-manager-handler.cjs +1 -1
  49. package/dist/contracts/handlers/l1-reward-manager-handler.d.ts +18 -0
  50. package/dist/contracts/handlers/l1-reward-manager-handler.js +2 -2
  51. package/dist/contracts/handlers/l2-reward-manager-handler.cjs +1 -1
  52. package/dist/contracts/handlers/l2-reward-manager-handler.d.ts +18 -0
  53. package/dist/contracts/handlers/l2-reward-manager-handler.js +2 -2
  54. package/dist/contracts/handlers/lagoon-vault-handler.cjs +1 -1
  55. package/dist/contracts/handlers/lagoon-vault-handler.d.ts +18 -0
  56. package/dist/contracts/handlers/lagoon-vault-handler.js +2 -2
  57. package/dist/contracts/handlers/mtw-carrot-handler.cjs +1 -1
  58. package/dist/contracts/handlers/mtw-carrot-handler.d.ts +18 -0
  59. package/dist/contracts/handlers/mtw-carrot-handler.js +2 -2
  60. package/dist/contracts/handlers/nucleus-accountant-handler.cjs +1 -1
  61. package/dist/contracts/handlers/nucleus-accountant-handler.d.ts +18 -0
  62. package/dist/contracts/handlers/nucleus-accountant-handler.js +1 -1
  63. package/dist/contracts/handlers/nucleus-atomic-queue-handler.cjs +1 -1
  64. package/dist/contracts/handlers/nucleus-atomic-queue-handler.d.ts +18 -0
  65. package/dist/contracts/handlers/nucleus-atomic-queue-handler.js +2 -2
  66. package/dist/contracts/handlers/nucleus-boring-vault-handler.cjs +1 -1
  67. package/dist/contracts/handlers/nucleus-boring-vault-handler.d.ts +18 -0
  68. package/dist/contracts/handlers/nucleus-boring-vault-handler.js +2 -2
  69. package/dist/contracts/handlers/nucleus-teller-handler.cjs +1 -1
  70. package/dist/contracts/handlers/nucleus-teller-handler.d.ts +18 -0
  71. package/dist/contracts/handlers/nucleus-teller-handler.js +2 -2
  72. package/dist/contracts/handlers/puf-locker-handler.cjs +1 -1
  73. package/dist/contracts/handlers/puf-locker-handler.d.ts +18 -0
  74. package/dist/contracts/handlers/puf-locker-handler.js +2 -2
  75. package/dist/contracts/handlers/puffer-depositor-handler.cjs +1 -1
  76. package/dist/contracts/handlers/puffer-depositor-handler.d.ts +18 -0
  77. package/dist/contracts/handlers/puffer-depositor-handler.js +2 -2
  78. package/dist/contracts/handlers/puffer-l2-depositor-handler.cjs +1 -1
  79. package/dist/contracts/handlers/puffer-l2-depositor-handler.d.ts +18 -0
  80. package/dist/contracts/handlers/puffer-l2-depositor-handler.js +2 -2
  81. package/dist/contracts/handlers/puffer-oracle-v2-handler.cjs +1 -1
  82. package/dist/contracts/handlers/puffer-oracle-v2-handler.d.ts +18 -0
  83. package/dist/contracts/handlers/puffer-oracle-v2-handler.js +2 -2
  84. package/dist/contracts/handlers/puffer-protocol-handler.cjs +1 -1
  85. package/dist/contracts/handlers/puffer-protocol-handler.d.ts +18 -0
  86. package/dist/contracts/handlers/puffer-protocol-handler.js +2 -2
  87. package/dist/contracts/handlers/puffer-vault-handler.cjs +1 -1
  88. package/dist/contracts/handlers/puffer-vault-handler.d.ts +18 -0
  89. package/dist/contracts/handlers/puffer-vault-handler.js +2 -2
  90. package/dist/contracts/handlers/puffer-withdrawal-manager-handler.cjs +1 -1
  91. package/dist/contracts/handlers/puffer-withdrawal-manager-handler.d.ts +18 -0
  92. package/dist/contracts/handlers/puffer-withdrawal-manager-handler.js +2 -2
  93. package/dist/contracts/handlers/validator-ticket-handler.cjs +1 -1
  94. package/dist/contracts/handlers/validator-ticket-handler.d.ts +18 -0
  95. package/dist/contracts/handlers/validator-ticket-handler.js +2 -2
  96. package/dist/contracts/handlers/vl-puffer-handler.cjs +1 -1
  97. package/dist/contracts/handlers/vl-puffer-handler.d.ts +18 -0
  98. package/dist/contracts/handlers/vl-puffer-handler.js +2 -2
  99. package/dist/contracts/tokens.cjs +1 -1
  100. package/dist/contracts/tokens.js +1 -1
  101. package/dist/contracts/vaults-addresses.cjs +1 -1
  102. package/dist/contracts/vaults-addresses.js +1 -1
  103. package/dist/{getContract-D4_SEfqa.cjs → getContract-C6a8L2Jd.cjs} +2 -2
  104. package/dist/{getContract-D4_SEfqa.cjs.map → getContract-C6a8L2Jd.cjs.map} +1 -1
  105. package/dist/{getContract-DQN7VDBo.js → getContract-DRjKmuyC.js} +2 -2
  106. package/dist/{getContract-DQN7VDBo.js.map → getContract-DRjKmuyC.js.map} +1 -1
  107. package/dist/http-CRYDzx7w.cjs +5 -0
  108. package/dist/http-CRYDzx7w.cjs.map +1 -0
  109. package/dist/{http-CajzXkt4.js → http-ZcKHvn9V.js} +1313 -1116
  110. package/dist/http-ZcKHvn9V.js.map +1 -0
  111. package/dist/{localBatchGatewayRequest-C7zYTS2c.cjs → localBatchGatewayRequest-BTy8p6qj.cjs} +2 -2
  112. package/dist/{localBatchGatewayRequest-C7zYTS2c.cjs.map → localBatchGatewayRequest-BTy8p6qj.cjs.map} +1 -1
  113. package/dist/{localBatchGatewayRequest-DtOvBmA9.js → localBatchGatewayRequest-Cb0QKL0s.js} +3 -3
  114. package/dist/{localBatchGatewayRequest-DtOvBmA9.js.map → localBatchGatewayRequest-Cb0QKL0s.js.map} +1 -1
  115. package/dist/main.cjs +1 -1
  116. package/dist/main.js +1 -1
  117. package/dist/{secp256k1-CMP_u7qb.cjs → secp256k1-CzsL7iVx.cjs} +2 -2
  118. package/dist/{secp256k1-CMP_u7qb.cjs.map → secp256k1-CzsL7iVx.cjs.map} +1 -1
  119. package/dist/{secp256k1-DCMgMsfV.js → secp256k1-Dx1prb1E.js} +2 -2
  120. package/dist/{secp256k1-DCMgMsfV.js.map → secp256k1-Dx1prb1E.js.map} +1 -1
  121. package/dist/utils/version.cjs +1 -1
  122. package/dist/utils/version.js +1 -1
  123. package/dist/{writeContract-DYAfDrRz.js → writeContract-BFxyLFA9.js} +881 -902
  124. package/dist/writeContract-BFxyLFA9.js.map +1 -0
  125. package/dist/{writeContract-BnmmOPwy.cjs → writeContract-HBsqM_Od.cjs} +22 -22
  126. package/dist/writeContract-HBsqM_Od.cjs.map +1 -0
  127. package/package.json +12 -12
  128. package/dist/constants-6kuRTsbU.cjs +0 -9
  129. package/dist/constants-6kuRTsbU.cjs.map +0 -1
  130. package/dist/constants-CuIEh_ZS.js.map +0 -1
  131. package/dist/http-CajzXkt4.js.map +0 -1
  132. package/dist/http-qhIDc8Dn.cjs +0 -5
  133. package/dist/http-qhIDc8Dn.cjs.map +0 -1
  134. package/dist/writeContract-BnmmOPwy.cjs.map +0 -1
  135. package/dist/writeContract-DYAfDrRz.js.map +0 -1
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../constants-6kuRTsbU.cjs"),a={[e.Chain.Mainnet]:{PufferVault:"0xD9A442856C234a39a81a089C06451EBAa4306a72",PufferDepositor:"0x4aa799c5dfc01ee7d790e3bf1a7c2257ce1dceff",PufferL2Depositor:"0x3436E0B85cd929929F5802e792CFE282166E0259",PufLocker:"0x48e8dE138C246c14248C94d2D616a2F9eb4590D2",L1RewardManager:"0x157788cc028Ac6405bD406f2D1e0A8A22b3cf17b",L2RewardManager:"0x0000000000000000000000000000000000000000",PufferWithdrawalManager:"0xDdA0483184E75a5579ef9635ED14BacCf9d50283",NucleusAtomicQueue:"0x228c44bb4885c6633f4b6c83f14622f37d5112e5",CarrotStaker:"0x99c599227c65132822f0290d9e5b4b0430d6c0d6",Distributor:"0x3Ef3D8bA38EBe18DB133cEc108f4D14CE00Dd9Ae",ValidatorTicket:"0x7D26AD6F6BA9D6bA1de0218Ae5e20CD3a273a55A",PufferOracleV2:"0x0BE2aE0edbeBb517541DF217EF0074FC9a9e994f",PufferProtocol:"0xf7b6B32492c2e13799D921E84202450131bd238B",GuardianModule:"0x628b183F248a142A598AA2dcCCD6f7E480a7CcF2",GaugeRegistry:"0x27ef0bc5eaa61dc6e7d08f17eb00de7d94398a25",CarrotVesting:"0xff00c2dd07d811bea632cb9f9e4919dd6fcbc82b"},[e.Chain.Holesky]:{PufferVault:"0x9196830bB4c05504E0A8475A0aD566AceEB6BeC9",PufferDepositor:"0x824AC05aeb86A0aD770b8acDe0906d2d4a6c4A8c",PufferL2Depositor:"0x0af6998e4828ad8ef8f79a9288d0a861890f791d",PufLocker:"0xa58983ad0899a452b7420bc57228e329d7ba92b6",L1RewardManager:"0x10f970bcb84B82B82a65eBCbF45F26dD26D69F12",L2RewardManager:"0x58C046794f69A8830b0BE737022a45b4acd01dE5",PufferWithdrawalManager:"0x5A3E1069B66800c0ecbc91bd81b1AE4D1804DBc4",ValidatorTicket:"0xB028194785178a94Fe608994A4d5AD84c285A640",PufferOracleV2:"0x8e043ed3f06720615685d4978770cd5c8fe90fe3",PufferProtocol:"0xE00c79408B9De5BaD2FDEbB1688997a68eC988CD",GuardianModule:"0x0910310130d1c062def8b807528bdac80203bc66",GaugeRegistry:"0x0000000000000000000000000000000000000000",CarrotVesting:"0x0000000000000000000000000000000000000000"},[e.Chain.Sepolia]:{GaugeRegistry:"0x14b25b3a3C1e6032e7Fbf0309d1ef6881e9A8D7A"},[e.Chain.Base]:{L2RewardManager:"0xF9Dd335bF363b2E4ecFe3c94A86EBD7Dd3Dcf0e7"}};exports.CONTRACT_ADDRESSES=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../constants-4-ehn8UI.cjs"),a={[e.Chain.Mainnet]:{PufferVault:"0xD9A442856C234a39a81a089C06451EBAa4306a72",PufferDepositor:"0x4aa799c5dfc01ee7d790e3bf1a7c2257ce1dceff",PufferL2Depositor:"0x3436E0B85cd929929F5802e792CFE282166E0259",PufLocker:"0x48e8dE138C246c14248C94d2D616a2F9eb4590D2",L1RewardManager:"0x157788cc028Ac6405bD406f2D1e0A8A22b3cf17b",L2RewardManager:"0x0000000000000000000000000000000000000000",PufferWithdrawalManager:"0xDdA0483184E75a5579ef9635ED14BacCf9d50283",NucleusAtomicQueue:"0x228c44bb4885c6633f4b6c83f14622f37d5112e5",CarrotStaker:"0x99c599227c65132822f0290d9e5b4b0430d6c0d6",Distributor:"0x3Ef3D8bA38EBe18DB133cEc108f4D14CE00Dd9Ae",ValidatorTicket:"0x7D26AD6F6BA9D6bA1de0218Ae5e20CD3a273a55A",PufferOracleV2:"0x0BE2aE0edbeBb517541DF217EF0074FC9a9e994f",PufferProtocol:"0xf7b6B32492c2e13799D921E84202450131bd238B",GuardianModule:"0x628b183F248a142A598AA2dcCCD6f7E480a7CcF2",GaugeRegistry:"0x27ef0bc5eaa61dc6e7d08f17eb00de7d94398a25",CarrotVesting:"0xff00c2dd07d811bea632cb9f9e4919dd6fcbc82b"},[e.Chain.Holesky]:{PufferVault:"0x9196830bB4c05504E0A8475A0aD566AceEB6BeC9",PufferDepositor:"0x824AC05aeb86A0aD770b8acDe0906d2d4a6c4A8c",PufferL2Depositor:"0x0af6998e4828ad8ef8f79a9288d0a861890f791d",PufLocker:"0xa58983ad0899a452b7420bc57228e329d7ba92b6",L1RewardManager:"0x10f970bcb84B82B82a65eBCbF45F26dD26D69F12",L2RewardManager:"0x58C046794f69A8830b0BE737022a45b4acd01dE5",PufferWithdrawalManager:"0x5A3E1069B66800c0ecbc91bd81b1AE4D1804DBc4",ValidatorTicket:"0xB028194785178a94Fe608994A4d5AD84c285A640",PufferOracleV2:"0x8e043ed3f06720615685d4978770cd5c8fe90fe3",PufferProtocol:"0xE00c79408B9De5BaD2FDEbB1688997a68eC988CD",GuardianModule:"0x0910310130d1c062def8b807528bdac80203bc66",GaugeRegistry:"0x0000000000000000000000000000000000000000",CarrotVesting:"0x0000000000000000000000000000000000000000"},[e.Chain.Sepolia]:{GaugeRegistry:"0x14b25b3a3C1e6032e7Fbf0309d1ef6881e9A8D7A"},[e.Chain.Base]:{L2RewardManager:"0xF9Dd335bF363b2E4ecFe3c94A86EBD7Dd3Dcf0e7"}};exports.CONTRACT_ADDRESSES=a;
2
2
  //# sourceMappingURL=addresses.cjs.map
@@ -1,4 +1,4 @@
1
- import { C as e } from "../constants-CuIEh_ZS.js";
1
+ import { C as e } from "../constants-BO_Dvglw.js";
2
2
  const f = {
3
3
  // Casting to number so the consumer can use chain ids. Also not using
4
4
  // a generic type for the variable so the consumer knows which
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../../constants-6kuRTsbU.cjs"),n=require("../tokens.cjs"),i=require("../abis/mainnet/CarrotStaker.cjs"),s=require("../../getContract-D4_SEfqa.cjs");class c{constructor(t,e,a){this.chain=t,this.walletClient=e,this.publicClient=a,this.viemChain=r.VIEM_CHAINS[t]}viemChain;getContract(){const t=n.TOKENS_ADDRESSES[n.Token.sCARROT][this.chain],e=i.CarrotStaker,a={public:this.publicClient,wallet:this.walletClient};return s.getContract({address:t,abi:e,client:a})}allowance(t,e){return this.getContract().read.allowance([t,e])}balanceOf(t){return this.getContract().read.balanceOf([t])}decimals(){return this.getContract().read.decimals()}isUnstakingAllowed(){return this.getContract().read.isUnstakingAllowed()}totalSupply(){return this.getContract().read.totalSupply()}stake(t,e){return this.getContract().write.stake([e],{account:t,chain:this.viemChain})}unstake(t,e,a){return this.getContract().write.unstake([e,a],{account:t,chain:this.viemChain})}}exports.CarrotStakingHandler=c;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../../constants-4-ehn8UI.cjs"),n=require("../tokens.cjs"),i=require("../abis/mainnet/CarrotStaker.cjs"),s=require("../../getContract-C6a8L2Jd.cjs");class c{constructor(t,e,a){this.chain=t,this.walletClient=e,this.publicClient=a,this.viemChain=r.VIEM_CHAINS[t]}viemChain;getContract(){const t=n.TOKENS_ADDRESSES[n.Token.sCARROT][this.chain],e=i.CarrotStaker,a={public:this.publicClient,wallet:this.walletClient};return s.getContract({address:t,abi:e,client:a})}allowance(t,e){return this.getContract().read.allowance([t,e])}balanceOf(t){return this.getContract().read.balanceOf([t])}decimals(){return this.getContract().read.decimals()}isUnstakingAllowed(){return this.getContract().read.isUnstakingAllowed()}totalSupply(){return this.getContract().read.totalSupply()}stake(t,e){return this.getContract().write.stake([e],{account:t,chain:this.viemChain})}unstake(t,e,a){return this.getContract().write.unstake([e,a],{account:t,chain:this.viemChain})}}exports.CarrotStakingHandler=c;
2
2
  //# sourceMappingURL=carrot-staking-handler.cjs.map
@@ -3705,6 +3705,7 @@ export declare class CarrotStakingHandler {
3705
3705
  }, (request["parameters"] extends readonly import('viem').PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "fees" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "type") extends infer T_13 ? T_13 extends (request["parameters"] extends readonly import('viem').PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "fees" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "type") ? T_13 extends "fees" ? "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" : T_13 : never : never> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">) extends infer T ? { [K in keyof T]: T[K]; } : never>;
3706
3706
  readContract: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "pure" | "view">, const args extends import('viem').ContractFunctionArgs<abi, "pure" | "view", functionName>>(args: import('viem').ReadContractParameters<abi, functionName, args>) => Promise<import('viem').ReadContractReturnType<abi, functionName, args>>;
3707
3707
  sendRawTransaction: (args: import('viem').SendRawTransactionParameters) => Promise<import('viem').SendRawTransactionReturnType>;
3708
+ sendRawTransactionSync: (args: import('viem').SendRawTransactionSyncParameters) => Promise<import('viem').TransactionReceipt>;
3708
3709
  simulate: <const calls extends readonly unknown[]>(args: import('viem').SimulateBlocksParameters<calls>) => Promise<import('viem').SimulateBlocksReturnType<calls>>;
3709
3710
  simulateBlocks: <const calls extends readonly unknown[]>(args: import('viem').SimulateBlocksParameters<calls>) => Promise<import('viem').SimulateBlocksReturnType<calls>>;
3710
3711
  simulateCalls: <const calls extends readonly unknown[]>(args: import('viem').SimulateCallsParameters<calls>) => Promise<import('viem').SimulateCallsReturnType<calls>>;
@@ -7034,8 +7035,24 @@ export declare class CarrotStakingHandler {
7034
7035
  } | undefined;
7035
7036
  id: string;
7036
7037
  }>;
7038
+ sendCallsSync: <const calls extends readonly unknown[], chainOverride extends ViemChain | undefined = undefined>(parameters: import('viem').SendCallsSyncParameters<ViemChain | undefined, import('viem').Account | undefined, chainOverride, calls>) => Promise<{
7039
+ id: string;
7040
+ chainId: number;
7041
+ version: string;
7042
+ atomic: boolean;
7043
+ capabilities?: {
7044
+ [key: string]: any;
7045
+ } | {
7046
+ [x: string]: any;
7047
+ } | undefined;
7048
+ receipts?: import('viem').WalletCallReceipt<bigint, "success" | "reverted">[] | undefined;
7049
+ statusCode: number;
7050
+ status: "pending" | "success" | "failure" | undefined;
7051
+ }>;
7037
7052
  sendRawTransaction: (args: import('viem').SendRawTransactionParameters) => Promise<import('viem').SendRawTransactionReturnType>;
7053
+ sendRawTransactionSync: (args: import('viem').SendRawTransactionSyncParameters) => Promise<import('viem').TransactionReceipt>;
7038
7054
  sendTransaction: <const request extends import('viem').SendTransactionRequest<ViemChain | undefined, chainOverride>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').SendTransactionParameters<ViemChain | undefined, import('viem').Account | undefined, chainOverride, request>) => Promise<import('viem').SendTransactionReturnType>;
7055
+ sendTransactionSync: <const request extends import('viem').SendTransactionSyncRequest<ViemChain | undefined, chainOverride>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').SendTransactionSyncParameters<ViemChain | undefined, import('viem').Account | undefined, chainOverride, request>) => Promise<import('viem').SendTransactionSyncReturnType>;
7039
7056
  showCallsStatus: (parameters: import('viem').ShowCallsStatusParameters) => Promise<import('viem').ShowCallsStatusReturnType>;
7040
7057
  signAuthorization: (parameters: import('viem').SignAuthorizationParameters<import('viem').Account | undefined>) => Promise<import('viem').SignAuthorizationReturnType>;
7041
7058
  signMessage: (args: import('viem').SignMessageParameters<import('viem').Account | undefined>) => Promise<import('viem').SignMessageReturnType>;
@@ -8143,6 +8160,7 @@ export declare class CarrotStakingHandler {
8143
8160
  waitForCallsStatus: (parameters: import('viem').WaitForCallsStatusParameters) => Promise<import('viem').WaitForCallsStatusReturnType>;
8144
8161
  watchAsset: (args: import('viem').WatchAssetParameters) => Promise<import('viem').WatchAssetReturnType>;
8145
8162
  writeContract: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "nonpayable" | "payable">, args_1 extends import('viem').ContractFunctionArgs<abi, "nonpayable" | "payable", functionName>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').WriteContractParameters<abi, functionName, args_1, ViemChain | undefined, import('viem').Account | undefined, chainOverride>) => Promise<import('viem').WriteContractReturnType>;
8163
+ writeContractSync: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "nonpayable" | "payable">, args_1 extends import('viem').ContractFunctionArgs<abi, "nonpayable" | "payable", functionName>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').WriteContractSyncParameters<abi, functionName, args_1, ViemChain | undefined, import('viem').Account | undefined, chainOverride>) => Promise<import('viem').WriteContractSyncReturnType>;
8146
8164
  extend: <const client extends {
8147
8165
  [x: string]: unknown;
8148
8166
  account?: undefined;
@@ -1,7 +1,7 @@
1
- import { V as r } from "../../constants-CuIEh_ZS.js";
1
+ import { V as r } from "../../constants-BO_Dvglw.js";
2
2
  import { TOKENS_ADDRESSES as i, Token as n } from "../tokens.js";
3
3
  import { CarrotStaker as s } from "../abis/mainnet/CarrotStaker.js";
4
- import { g as l } from "../../getContract-DQN7VDBo.js";
4
+ import { g as l } from "../../getContract-DRjKmuyC.js";
5
5
  class m {
6
6
  /**
7
7
  * Create the handler for the `CarrotStaker` contract exposing
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("../../constants-6kuRTsbU.cjs"),i=require("../abis/mainnet/CarrotVesting.cjs"),s=require("../addresses.cjs"),c=require("../tokens.cjs"),o=require("./erc20-permit-handler.cjs"),g=require("../../getContract-D4_SEfqa.cjs");class h{constructor(t,e,r){this.chain=t,this.walletClient=e,this.publicClient=r,this.viemChain=n.VIEM_CHAINS[t],this.erc20PermitHandler=new o.ERC20PermitHandler(t,e,r)}viemChain;erc20PermitHandler;getContract(){const t=s.CONTRACT_ADDRESSES[this.chain].CarrotVesting,e=i.CarrotVesting,r={public:this.publicClient,wallet:this.walletClient};return g.getContract({address:t,abi:e,client:r})}owner(){return this.getContract().read.owner()}calculateClaimableAmount(t){return this.getContract().read.calculateClaimableAmount([t])}exchangeRate(){return this.getContract().read.EXCHANGE_RATE()}claim(){return this.getContract().write.claim({account:this.walletClient.account,chain:this.viemChain})}getCarrotAddress(){return this.getContract().read.CARROT()}getPufferAddress(){return this.getContract().read.PUFFER()}totalPufferRewards(){return this.getContract().read.TOTAL_PUFFER_REWARDS()}getSteps(){return this.getContract().read.getSteps()}maxCarrotAmount(){return this.getContract().read.MAX_CARROT_AMOUNT()}async getVestings(t){return await this.getContract().read.getVestings([t])}getStartTimestamp(){return this.getContract().read.getStartTimestamp()}startVestingPreapproved(t){return this.getContract().write.startVesting([t],{account:this.walletClient.account,chain:this.viemChain})}startVestingWithPermit(t){return this.getContract().write.startVestingWithPermit([t],{account:this.walletClient.account,chain:this.viemChain})}async startVesting(t,e){if(e)return this.startVestingPreapproved(t);const r=this.walletClient.account,a=await this.erc20PermitHandler.withToken(c.Token.CARROT).getPermitData(r.address,this.getContract().address,t);return this.startVestingWithPermit(a)}getTotalDepositedAmount(){return this.getContract().read.getTotalDepositedAmount()}getDuration(){return this.getContract().read.getDuration()}}exports.CarrotVestingHandler=h;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("../../constants-4-ehn8UI.cjs"),i=require("../abis/mainnet/CarrotVesting.cjs"),s=require("../addresses.cjs"),c=require("../tokens.cjs"),o=require("./erc20-permit-handler.cjs"),g=require("../../getContract-C6a8L2Jd.cjs");class h{constructor(t,e,r){this.chain=t,this.walletClient=e,this.publicClient=r,this.viemChain=n.VIEM_CHAINS[t],this.erc20PermitHandler=new o.ERC20PermitHandler(t,e,r)}viemChain;erc20PermitHandler;getContract(){const t=s.CONTRACT_ADDRESSES[this.chain].CarrotVesting,e=i.CarrotVesting,r={public:this.publicClient,wallet:this.walletClient};return g.getContract({address:t,abi:e,client:r})}owner(){return this.getContract().read.owner()}calculateClaimableAmount(t){return this.getContract().read.calculateClaimableAmount([t])}exchangeRate(){return this.getContract().read.EXCHANGE_RATE()}claim(){return this.getContract().write.claim({account:this.walletClient.account,chain:this.viemChain})}getCarrotAddress(){return this.getContract().read.CARROT()}getPufferAddress(){return this.getContract().read.PUFFER()}totalPufferRewards(){return this.getContract().read.TOTAL_PUFFER_REWARDS()}getSteps(){return this.getContract().read.getSteps()}maxCarrotAmount(){return this.getContract().read.MAX_CARROT_AMOUNT()}async getVestings(t){return await this.getContract().read.getVestings([t])}getStartTimestamp(){return this.getContract().read.getStartTimestamp()}startVestingPreapproved(t){return this.getContract().write.startVesting([t],{account:this.walletClient.account,chain:this.viemChain})}startVestingWithPermit(t){return this.getContract().write.startVestingWithPermit([t],{account:this.walletClient.account,chain:this.viemChain})}async startVesting(t,e){if(e)return this.startVestingPreapproved(t);const r=this.walletClient.account,a=await this.erc20PermitHandler.withToken(c.Token.CARROT).getPermitData(r.address,this.getContract().address,t);return this.startVestingWithPermit(a)}getTotalDepositedAmount(){return this.getContract().read.getTotalDepositedAmount()}getDuration(){return this.getContract().read.getDuration()}}exports.CarrotVestingHandler=h;
2
2
  //# sourceMappingURL=carrot-vesting-handler.cjs.map
@@ -3622,6 +3622,7 @@ export declare class CarrotVestingHandler {
3622
3622
  }, (request["parameters"] extends readonly import('viem').PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "fees" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "type") extends infer T_13 ? T_13 extends (request["parameters"] extends readonly import('viem').PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "fees" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "type") ? T_13 extends "fees" ? "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" : T_13 : never : never> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">) extends infer T ? { [K in keyof T]: T[K]; } : never>;
3623
3623
  readContract: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "pure" | "view">, const args extends import('viem').ContractFunctionArgs<abi, "pure" | "view", functionName>>(args: import('viem').ReadContractParameters<abi, functionName, args>) => Promise<import('viem').ReadContractReturnType<abi, functionName, args>>;
3624
3624
  sendRawTransaction: (args: import('viem').SendRawTransactionParameters) => Promise<import('viem').SendRawTransactionReturnType>;
3625
+ sendRawTransactionSync: (args: import('viem').SendRawTransactionSyncParameters) => Promise<import('viem').TransactionReceipt>;
3625
3626
  simulate: <const calls extends readonly unknown[]>(args: import('viem').SimulateBlocksParameters<calls>) => Promise<import('viem').SimulateBlocksReturnType<calls>>;
3626
3627
  simulateBlocks: <const calls extends readonly unknown[]>(args: import('viem').SimulateBlocksParameters<calls>) => Promise<import('viem').SimulateBlocksReturnType<calls>>;
3627
3628
  simulateCalls: <const calls extends readonly unknown[]>(args: import('viem').SimulateCallsParameters<calls>) => Promise<import('viem').SimulateCallsReturnType<calls>>;
@@ -6951,8 +6952,24 @@ export declare class CarrotVestingHandler {
6951
6952
  } | undefined;
6952
6953
  id: string;
6953
6954
  }>;
6955
+ sendCallsSync: <const calls extends readonly unknown[], chainOverride extends ViemChain | undefined = undefined>(parameters: import('viem').SendCallsSyncParameters<ViemChain | undefined, Account | undefined, chainOverride, calls>) => Promise<{
6956
+ id: string;
6957
+ chainId: number;
6958
+ version: string;
6959
+ atomic: boolean;
6960
+ capabilities?: {
6961
+ [key: string]: any;
6962
+ } | {
6963
+ [x: string]: any;
6964
+ } | undefined;
6965
+ receipts?: import('viem').WalletCallReceipt<bigint, "success" | "reverted">[] | undefined;
6966
+ statusCode: number;
6967
+ status: "pending" | "success" | "failure" | undefined;
6968
+ }>;
6954
6969
  sendRawTransaction: (args: import('viem').SendRawTransactionParameters) => Promise<import('viem').SendRawTransactionReturnType>;
6970
+ sendRawTransactionSync: (args: import('viem').SendRawTransactionSyncParameters) => Promise<import('viem').TransactionReceipt>;
6955
6971
  sendTransaction: <const request extends import('viem').SendTransactionRequest<ViemChain | undefined, chainOverride>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').SendTransactionParameters<ViemChain | undefined, Account | undefined, chainOverride, request>) => Promise<import('viem').SendTransactionReturnType>;
6972
+ sendTransactionSync: <const request extends import('viem').SendTransactionSyncRequest<ViemChain | undefined, chainOverride>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').SendTransactionSyncParameters<ViemChain | undefined, Account | undefined, chainOverride, request>) => Promise<import('viem').SendTransactionSyncReturnType>;
6956
6973
  showCallsStatus: (parameters: import('viem').ShowCallsStatusParameters) => Promise<import('viem').ShowCallsStatusReturnType>;
6957
6974
  signAuthorization: (parameters: import('viem').SignAuthorizationParameters<Account | undefined>) => Promise<import('viem').SignAuthorizationReturnType>;
6958
6975
  signMessage: (args: import('viem').SignMessageParameters<Account | undefined>) => Promise<import('viem').SignMessageReturnType>;
@@ -8060,6 +8077,7 @@ export declare class CarrotVestingHandler {
8060
8077
  waitForCallsStatus: (parameters: import('viem').WaitForCallsStatusParameters) => Promise<import('viem').WaitForCallsStatusReturnType>;
8061
8078
  watchAsset: (args: import('viem').WatchAssetParameters) => Promise<import('viem').WatchAssetReturnType>;
8062
8079
  writeContract: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "nonpayable" | "payable">, args_1 extends import('viem').ContractFunctionArgs<abi, "nonpayable" | "payable", functionName>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').WriteContractParameters<abi, functionName, args_1, ViemChain | undefined, Account | undefined, chainOverride>) => Promise<import('viem').WriteContractReturnType>;
8080
+ writeContractSync: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "nonpayable" | "payable">, args_1 extends import('viem').ContractFunctionArgs<abi, "nonpayable" | "payable", functionName>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').WriteContractSyncParameters<abi, functionName, args_1, ViemChain | undefined, Account | undefined, chainOverride>) => Promise<import('viem').WriteContractSyncReturnType>;
8063
8081
  extend: <const client extends {
8064
8082
  [x: string]: unknown;
8065
8083
  account?: undefined;
@@ -1,9 +1,9 @@
1
- import { V as i } from "../../constants-CuIEh_ZS.js";
1
+ import { V as i } from "../../constants-BO_Dvglw.js";
2
2
  import { CarrotVesting as n } from "../abis/mainnet/CarrotVesting.js";
3
3
  import { CONTRACT_ADDRESSES as s } from "../addresses.js";
4
4
  import { Token as o } from "../tokens.js";
5
5
  import { ERC20PermitHandler as c } from "./erc20-permit-handler.js";
6
- import { g as h } from "../../getContract-DQN7VDBo.js";
6
+ import { g as h } from "../../getContract-DRjKmuyC.js";
7
7
  class A {
8
8
  /**
9
9
  * Create the handler for the `CarrotVesting` contract exposing methods to
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("../../constants-6kuRTsbU.cjs"),r=require("../abis/mainnet/ConcreteMultiStrategyVault.cjs"),a=require("../tokens.cjs"),c=require("../vaults-addresses.cjs"),o=require("../../getContract-D4_SEfqa.cjs");class s{constructor(t,e,i){this.chain=t,this.walletClient=e,this.publicClient=i,this.viemChain=n.VIEM_CHAINS[t],this.token=a.Token.ctTACpufETH}viemChain;token;withToken(t){return this.token=t,this}getContract(){const t=c.VAULTS_ADDRESSES[this.token][this.chain].ConcreteMultiStrategyVault,e=r.ConcreteMultiStrategyVault,i={public:this.publicClient,wallet:this.walletClient};return o.getContract({address:t,abi:e,client:i})}approve(t,e){return this.getContract().write.approve([t,e],{account:this.walletClient.account,chain:this.viemChain})}getAllowance(t,e){return this.getContract().read.allowance([t,e])}getBalance(t){return this.getContract().read.balanceOf([t])}getTotalSupply(){return this.getContract().read.totalSupply()}deposit(t){return this.getContract().write.deposit([t],{account:this.walletClient.account,chain:this.viemChain})}withdraw(t){return this.getContract().write.withdraw([t],{account:this.walletClient.account,chain:this.viemChain})}redeem(t,e,i){return e&&i?this.getContract().write.redeem([t,e,i],{account:this.walletClient.account,chain:this.viemChain}):this.getContract().write.redeem([t],{account:this.walletClient.account,chain:this.viemChain})}previewDeposit(t){return this.getContract().read.previewDeposit([t])}previewWithdraw(t){return this.getContract().read.previewWithdraw([t])}previewRedeem(t){return this.getContract().read.previewRedeem([t])}}exports.ConcreteVaultHandler=s;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("../../constants-4-ehn8UI.cjs"),r=require("../abis/mainnet/ConcreteMultiStrategyVault.cjs"),a=require("../tokens.cjs"),c=require("../vaults-addresses.cjs"),o=require("../../getContract-C6a8L2Jd.cjs");class s{constructor(t,e,i){this.chain=t,this.walletClient=e,this.publicClient=i,this.viemChain=n.VIEM_CHAINS[t],this.token=a.Token.ctTACpufETH}viemChain;token;withToken(t){return this.token=t,this}getContract(){const t=c.VAULTS_ADDRESSES[this.token][this.chain].ConcreteMultiStrategyVault,e=r.ConcreteMultiStrategyVault,i={public:this.publicClient,wallet:this.walletClient};return o.getContract({address:t,abi:e,client:i})}approve(t,e){return this.getContract().write.approve([t,e],{account:this.walletClient.account,chain:this.viemChain})}getAllowance(t,e){return this.getContract().read.allowance([t,e])}getBalance(t){return this.getContract().read.balanceOf([t])}getTotalSupply(){return this.getContract().read.totalSupply()}deposit(t){return this.getContract().write.deposit([t],{account:this.walletClient.account,chain:this.viemChain})}withdraw(t){return this.getContract().write.withdraw([t],{account:this.walletClient.account,chain:this.viemChain})}redeem(t,e,i){return e&&i?this.getContract().write.redeem([t,e,i],{account:this.walletClient.account,chain:this.viemChain}):this.getContract().write.redeem([t],{account:this.walletClient.account,chain:this.viemChain})}previewDeposit(t){return this.getContract().read.previewDeposit([t])}previewWithdraw(t){return this.getContract().read.previewWithdraw([t])}previewRedeem(t){return this.getContract().read.previewRedeem([t])}}exports.ConcreteVaultHandler=s;
2
2
  //# sourceMappingURL=concrete-vault-handler.cjs.map
@@ -3949,6 +3949,7 @@ export declare class ConcreteVaultHandler {
3949
3949
  }, (request["parameters"] extends readonly import('viem').PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "fees" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "type") extends infer T_13 ? T_13 extends (request["parameters"] extends readonly import('viem').PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "fees" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "type") ? T_13 extends "fees" ? "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" : T_13 : never : never> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">) extends infer T ? { [K in keyof T]: T[K]; } : never>;
3950
3950
  readContract: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "pure" | "view">, const args extends import('viem').ContractFunctionArgs<abi, "pure" | "view", functionName>>(args: import('viem').ReadContractParameters<abi, functionName, args>) => Promise<import('viem').ReadContractReturnType<abi, functionName, args>>;
3951
3951
  sendRawTransaction: (args: import('viem').SendRawTransactionParameters) => Promise<import('viem').SendRawTransactionReturnType>;
3952
+ sendRawTransactionSync: (args: import('viem').SendRawTransactionSyncParameters) => Promise<import('viem').TransactionReceipt>;
3952
3953
  simulate: <const calls extends readonly unknown[]>(args: import('viem').SimulateBlocksParameters<calls>) => Promise<import('viem').SimulateBlocksReturnType<calls>>;
3953
3954
  simulateBlocks: <const calls extends readonly unknown[]>(args: import('viem').SimulateBlocksParameters<calls>) => Promise<import('viem').SimulateBlocksReturnType<calls>>;
3954
3955
  simulateCalls: <const calls extends readonly unknown[]>(args: import('viem').SimulateCallsParameters<calls>) => Promise<import('viem').SimulateCallsReturnType<calls>>;
@@ -7278,8 +7279,24 @@ export declare class ConcreteVaultHandler {
7278
7279
  } | undefined;
7279
7280
  id: string;
7280
7281
  }>;
7282
+ sendCallsSync: <const calls extends readonly unknown[], chainOverride extends ViemChain | undefined = undefined>(parameters: import('viem').SendCallsSyncParameters<ViemChain | undefined, Account | undefined, chainOverride, calls>) => Promise<{
7283
+ id: string;
7284
+ chainId: number;
7285
+ version: string;
7286
+ atomic: boolean;
7287
+ capabilities?: {
7288
+ [key: string]: any;
7289
+ } | {
7290
+ [x: string]: any;
7291
+ } | undefined;
7292
+ receipts?: import('viem').WalletCallReceipt<bigint, "success" | "reverted">[] | undefined;
7293
+ statusCode: number;
7294
+ status: "pending" | "success" | "failure" | undefined;
7295
+ }>;
7281
7296
  sendRawTransaction: (args: import('viem').SendRawTransactionParameters) => Promise<import('viem').SendRawTransactionReturnType>;
7297
+ sendRawTransactionSync: (args: import('viem').SendRawTransactionSyncParameters) => Promise<import('viem').TransactionReceipt>;
7282
7298
  sendTransaction: <const request extends import('viem').SendTransactionRequest<ViemChain | undefined, chainOverride>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').SendTransactionParameters<ViemChain | undefined, Account | undefined, chainOverride, request>) => Promise<import('viem').SendTransactionReturnType>;
7299
+ sendTransactionSync: <const request extends import('viem').SendTransactionSyncRequest<ViemChain | undefined, chainOverride>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').SendTransactionSyncParameters<ViemChain | undefined, Account | undefined, chainOverride, request>) => Promise<import('viem').SendTransactionSyncReturnType>;
7283
7300
  showCallsStatus: (parameters: import('viem').ShowCallsStatusParameters) => Promise<import('viem').ShowCallsStatusReturnType>;
7284
7301
  signAuthorization: (parameters: import('viem').SignAuthorizationParameters<Account | undefined>) => Promise<import('viem').SignAuthorizationReturnType>;
7285
7302
  signMessage: (args: import('viem').SignMessageParameters<Account | undefined>) => Promise<import('viem').SignMessageReturnType>;
@@ -8387,6 +8404,7 @@ export declare class ConcreteVaultHandler {
8387
8404
  waitForCallsStatus: (parameters: import('viem').WaitForCallsStatusParameters) => Promise<import('viem').WaitForCallsStatusReturnType>;
8388
8405
  watchAsset: (args: import('viem').WatchAssetParameters) => Promise<import('viem').WatchAssetReturnType>;
8389
8406
  writeContract: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "nonpayable" | "payable">, args_1 extends import('viem').ContractFunctionArgs<abi, "nonpayable" | "payable", functionName>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').WriteContractParameters<abi, functionName, args_1, ViemChain | undefined, Account | undefined, chainOverride>) => Promise<import('viem').WriteContractReturnType>;
8407
+ writeContractSync: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "nonpayable" | "payable">, args_1 extends import('viem').ContractFunctionArgs<abi, "nonpayable" | "payable", functionName>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').WriteContractSyncParameters<abi, functionName, args_1, ViemChain | undefined, Account | undefined, chainOverride>) => Promise<import('viem').WriteContractSyncReturnType>;
8390
8408
  extend: <const client extends {
8391
8409
  [x: string]: unknown;
8392
8410
  account?: undefined;
@@ -1,8 +1,8 @@
1
- import { V as r } from "../../constants-CuIEh_ZS.js";
1
+ import { V as r } from "../../constants-BO_Dvglw.js";
2
2
  import { ConcreteMultiStrategyVault as n } from "../abis/mainnet/ConcreteMultiStrategyVault.js";
3
3
  import { Token as a } from "../tokens.js";
4
4
  import { VAULTS_ADDRESSES as o } from "../vaults-addresses.js";
5
- import { g as c } from "../../getContract-DQN7VDBo.js";
5
+ import { g as c } from "../../getContract-DRjKmuyC.js";
6
6
  class w {
7
7
  /**
8
8
  * Create the handler for processing UniFi tokens.
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../../constants-6kuRTsbU.cjs"),s=require("../addresses.cjs"),o=require("../abis/mainnet/Distributor.cjs"),c=require("../../getContract-D4_SEfqa.cjs");class u{constructor(t,e,r){this.chain=t,this.walletClient=e,this.publicClient=r,this.viemChain=a.VIEM_CHAINS[t]}viemChain;getContract(){const t=s.CONTRACT_ADDRESSES[this.chain].Distributor,e=o.Distributor,r={public:this.publicClient,wallet:this.walletClient};return c.getContract({address:t,abi:e,client:r})}claim(t,{users:e,tokens:r,amounts:i,proofs:n}){return this.getContract().write.claim([e,r,i,n],{account:t,chain:this.viemChain})}async claimed(t,e){const[r,i,n]=await this.getContract().read.claimed([t,e]);return{amount:r,timestamp:BigInt(i),merkleRoot:n}}core(){return this.getContract().read.core()}disputeAmount(){return this.getContract().read.disputeAmount()}disputePeriod(){return this.getContract().read.disputePeriod()}disputeToken(){return this.getContract().read.disputeToken()}disputeTree(t,e){return this.getContract().write.disputeTree([e],{account:t,chain:this.viemChain})}disputer(){return this.getContract().read.disputer()}endOfDisputePeriod(){return this.getContract().read.endOfDisputePeriod()}getMerkleRoot(){return this.getContract().read.getMerkleRoot()}async lastTree(){const[t,e]=await this.getContract().read.lastTree();return{merkleRoot:t,ipfsHash:e}}onlyOperatorCanClaim(t){return this.getContract().read.onlyOperatorCanClaim([t])}toggleOnlyOperatorCanClaim(t,e){return this.getContract().write.toggleOnlyOperatorCanClaim([e],{account:t,chain:this.viemChain})}toggleOperator(t,e,r){return this.getContract().write.toggleOperator([e,r],{account:t,chain:this.viemChain})}toggleTrusted(t,e){return this.getContract().write.toggleTrusted([e],{account:t,chain:this.viemChain})}async tree(){const[t,e]=await this.getContract().read.tree();return{merkleRoot:t,ipfsHash:e}}}exports.DistributorHandler=u;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../../constants-4-ehn8UI.cjs"),s=require("../addresses.cjs"),o=require("../abis/mainnet/Distributor.cjs"),c=require("../../getContract-C6a8L2Jd.cjs");class u{constructor(t,e,r){this.chain=t,this.walletClient=e,this.publicClient=r,this.viemChain=a.VIEM_CHAINS[t]}viemChain;getContract(){const t=s.CONTRACT_ADDRESSES[this.chain].Distributor,e=o.Distributor,r={public:this.publicClient,wallet:this.walletClient};return c.getContract({address:t,abi:e,client:r})}claim(t,{users:e,tokens:r,amounts:i,proofs:n}){return this.getContract().write.claim([e,r,i,n],{account:t,chain:this.viemChain})}async claimed(t,e){const[r,i,n]=await this.getContract().read.claimed([t,e]);return{amount:r,timestamp:BigInt(i),merkleRoot:n}}core(){return this.getContract().read.core()}disputeAmount(){return this.getContract().read.disputeAmount()}disputePeriod(){return this.getContract().read.disputePeriod()}disputeToken(){return this.getContract().read.disputeToken()}disputeTree(t,e){return this.getContract().write.disputeTree([e],{account:t,chain:this.viemChain})}disputer(){return this.getContract().read.disputer()}endOfDisputePeriod(){return this.getContract().read.endOfDisputePeriod()}getMerkleRoot(){return this.getContract().read.getMerkleRoot()}async lastTree(){const[t,e]=await this.getContract().read.lastTree();return{merkleRoot:t,ipfsHash:e}}onlyOperatorCanClaim(t){return this.getContract().read.onlyOperatorCanClaim([t])}toggleOnlyOperatorCanClaim(t,e){return this.getContract().write.toggleOnlyOperatorCanClaim([e],{account:t,chain:this.viemChain})}toggleOperator(t,e,r){return this.getContract().write.toggleOperator([e,r],{account:t,chain:this.viemChain})}toggleTrusted(t,e){return this.getContract().write.toggleTrusted([e],{account:t,chain:this.viemChain})}async tree(){const[t,e]=await this.getContract().read.tree();return{merkleRoot:t,ipfsHash:e}}}exports.DistributorHandler=u;
2
2
  //# sourceMappingURL=distributor-handler.cjs.map
@@ -3835,6 +3835,7 @@ export declare class DistributorHandler {
3835
3835
  }, (request["parameters"] extends readonly import('viem').PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "fees" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "type") extends infer T_13 ? T_13 extends (request["parameters"] extends readonly import('viem').PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "fees" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "type") ? T_13 extends "fees" ? "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" : T_13 : never : never> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">) extends infer T ? { [K in keyof T]: T[K]; } : never>;
3836
3836
  readContract: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "pure" | "view">, const args extends import('viem').ContractFunctionArgs<abi, "pure" | "view", functionName>>(args: import('viem').ReadContractParameters<abi, functionName, args>) => Promise<import('viem').ReadContractReturnType<abi, functionName, args>>;
3837
3837
  sendRawTransaction: (args: import('viem').SendRawTransactionParameters) => Promise<import('viem').SendRawTransactionReturnType>;
3838
+ sendRawTransactionSync: (args: import('viem').SendRawTransactionSyncParameters) => Promise<import('viem').TransactionReceipt>;
3838
3839
  simulate: <const calls extends readonly unknown[]>(args: import('viem').SimulateBlocksParameters<calls>) => Promise<import('viem').SimulateBlocksReturnType<calls>>;
3839
3840
  simulateBlocks: <const calls extends readonly unknown[]>(args: import('viem').SimulateBlocksParameters<calls>) => Promise<import('viem').SimulateBlocksReturnType<calls>>;
3840
3841
  simulateCalls: <const calls extends readonly unknown[]>(args: import('viem').SimulateCallsParameters<calls>) => Promise<import('viem').SimulateCallsReturnType<calls>>;
@@ -7164,8 +7165,24 @@ export declare class DistributorHandler {
7164
7165
  } | undefined;
7165
7166
  id: string;
7166
7167
  }>;
7168
+ sendCallsSync: <const calls extends readonly unknown[], chainOverride extends ViemChain | undefined = undefined>(parameters: import('viem').SendCallsSyncParameters<ViemChain | undefined, import('viem').Account | undefined, chainOverride, calls>) => Promise<{
7169
+ id: string;
7170
+ chainId: number;
7171
+ version: string;
7172
+ atomic: boolean;
7173
+ capabilities?: {
7174
+ [key: string]: any;
7175
+ } | {
7176
+ [x: string]: any;
7177
+ } | undefined;
7178
+ receipts?: import('viem').WalletCallReceipt<bigint, "success" | "reverted">[] | undefined;
7179
+ statusCode: number;
7180
+ status: "pending" | "success" | "failure" | undefined;
7181
+ }>;
7167
7182
  sendRawTransaction: (args: import('viem').SendRawTransactionParameters) => Promise<import('viem').SendRawTransactionReturnType>;
7183
+ sendRawTransactionSync: (args: import('viem').SendRawTransactionSyncParameters) => Promise<import('viem').TransactionReceipt>;
7168
7184
  sendTransaction: <const request extends import('viem').SendTransactionRequest<ViemChain | undefined, chainOverride>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').SendTransactionParameters<ViemChain | undefined, import('viem').Account | undefined, chainOverride, request>) => Promise<import('viem').SendTransactionReturnType>;
7185
+ sendTransactionSync: <const request extends import('viem').SendTransactionSyncRequest<ViemChain | undefined, chainOverride>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').SendTransactionSyncParameters<ViemChain | undefined, import('viem').Account | undefined, chainOverride, request>) => Promise<import('viem').SendTransactionSyncReturnType>;
7169
7186
  showCallsStatus: (parameters: import('viem').ShowCallsStatusParameters) => Promise<import('viem').ShowCallsStatusReturnType>;
7170
7187
  signAuthorization: (parameters: import('viem').SignAuthorizationParameters<import('viem').Account | undefined>) => Promise<import('viem').SignAuthorizationReturnType>;
7171
7188
  signMessage: (args: import('viem').SignMessageParameters<import('viem').Account | undefined>) => Promise<import('viem').SignMessageReturnType>;
@@ -8273,6 +8290,7 @@ export declare class DistributorHandler {
8273
8290
  waitForCallsStatus: (parameters: import('viem').WaitForCallsStatusParameters) => Promise<import('viem').WaitForCallsStatusReturnType>;
8274
8291
  watchAsset: (args: import('viem').WatchAssetParameters) => Promise<import('viem').WatchAssetReturnType>;
8275
8292
  writeContract: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "nonpayable" | "payable">, args_1 extends import('viem').ContractFunctionArgs<abi, "nonpayable" | "payable", functionName>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').WriteContractParameters<abi, functionName, args_1, ViemChain | undefined, import('viem').Account | undefined, chainOverride>) => Promise<import('viem').WriteContractReturnType>;
8293
+ writeContractSync: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "nonpayable" | "payable">, args_1 extends import('viem').ContractFunctionArgs<abi, "nonpayable" | "payable", functionName>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').WriteContractSyncParameters<abi, functionName, args_1, ViemChain | undefined, import('viem').Account | undefined, chainOverride>) => Promise<import('viem').WriteContractSyncReturnType>;
8276
8294
  extend: <const client extends {
8277
8295
  [x: string]: unknown;
8278
8296
  account?: undefined;
@@ -1,7 +1,7 @@
1
- import { V as n } from "../../constants-CuIEh_ZS.js";
1
+ import { V as n } from "../../constants-BO_Dvglw.js";
2
2
  import { CONTRACT_ADDRESSES as o } from "../addresses.js";
3
3
  import { Distributor as s } from "../abis/mainnet/Distributor.js";
4
- import { g as c } from "../../getContract-DQN7VDBo.js";
4
+ import { g as c } from "../../getContract-DRjKmuyC.js";
5
5
  class g {
6
6
  /**
7
7
  * Create the handler for the Distributor contract exposing
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../../constants-6kuRTsbU.cjs"),s=require("../tokens.cjs"),g=require("../../utils/time.cjs"),p=require("../abis/mainnet/ERC20Permit.cjs"),d=require("../../getContract-D4_SEfqa.cjs"),y=require("../../secp256k1-CMP_u7qb.cjs");function S(o){const{r:t,s:n}=y.secp256k1.Signature.fromCompact(o.slice(2,130)),e=+`0x${o.slice(130)}`,[i,r]=(()=>{if(e===0||e===1)return[void 0,e];if(e===27)return[BigInt(e),0];if(e===28)return[BigInt(e),1];throw new Error("Invalid yParityOrV value")})();return typeof i<"u"?{r:a.numberToHex(t,{size:32}),s:a.numberToHex(n,{size:32}),v:i,yParity:r}:{r:a.numberToHex(t,{size:32}),s:a.numberToHex(n,{size:32}),yParity:r}}class C{constructor(t,n,e){this.chain=t,this.walletClient=n,this.publicClient=e,this.viemChain=a.VIEM_CHAINS[t],this.token=s.Token.WETH}viemChain;token;withToken(t){return this.token=t,this}getContract(){const t=s.TOKENS_ADDRESSES[this.token][this.chain],n=p.ERC20Permit,e={public:this.publicClient,wallet:this.walletClient};return d.getContract({address:t,abi:n,client:e})}nonces(t){return this.getContract().read.nonces([t])}async getPermitSignature(t,n,e){const i=this.getContract(),r=await this.nonces(t),c={name:await i.read.name(),version:this.getPermitVersion(this.token),chainId:this.chain,verifyingContract:s.TOKENS_ADDRESSES[this.token][this.chain],salt:this.getPermitSalt(this.token)},u={Permit:[{name:"owner",type:"address"},{name:"spender",type:"address"},{name:"value",type:"uint256"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"}]},h=BigInt(g.getTimestampInSeconds()+3600*2),l=await this.walletClient.signTypedData({account:t,domain:c,types:u,primaryType:"Permit",message:{owner:t,spender:n,value:e,nonce:r,deadline:h}});return{...S(l),deadline:h}}async getPermitData(t,n,e){const{r:i,s:r,v:m,yParity:c,deadline:u}=await this.getPermitSignature(t,n,e);return{r:i,s:r,v:Number(m??c),deadline:u,amount:e}}approve(t,n,e){return this.getContract().write.approve([n,e],{account:t,chain:this.viemChain})}getPermitVersion(t){return s.TOKENS_PERMIT_VERSION[t]}getPermitSalt(t){return s.TOKENS_SALT?.[t]?.[this.chain]}}exports.ERC20PermitHandler=C;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../../constants-4-ehn8UI.cjs"),s=require("../tokens.cjs"),g=require("../../utils/time.cjs"),p=require("../abis/mainnet/ERC20Permit.cjs"),d=require("../../getContract-C6a8L2Jd.cjs"),y=require("../../secp256k1-CzsL7iVx.cjs");function S(o){const{r:t,s:n}=y.secp256k1.Signature.fromCompact(o.slice(2,130)),e=+`0x${o.slice(130)}`,[i,r]=(()=>{if(e===0||e===1)return[void 0,e];if(e===27)return[BigInt(e),0];if(e===28)return[BigInt(e),1];throw new Error("Invalid yParityOrV value")})();return typeof i<"u"?{r:a.numberToHex(t,{size:32}),s:a.numberToHex(n,{size:32}),v:i,yParity:r}:{r:a.numberToHex(t,{size:32}),s:a.numberToHex(n,{size:32}),yParity:r}}class C{constructor(t,n,e){this.chain=t,this.walletClient=n,this.publicClient=e,this.viemChain=a.VIEM_CHAINS[t],this.token=s.Token.WETH}viemChain;token;withToken(t){return this.token=t,this}getContract(){const t=s.TOKENS_ADDRESSES[this.token][this.chain],n=p.ERC20Permit,e={public:this.publicClient,wallet:this.walletClient};return d.getContract({address:t,abi:n,client:e})}nonces(t){return this.getContract().read.nonces([t])}async getPermitSignature(t,n,e){const i=this.getContract(),r=await this.nonces(t),c={name:await i.read.name(),version:this.getPermitVersion(this.token),chainId:this.chain,verifyingContract:s.TOKENS_ADDRESSES[this.token][this.chain],salt:this.getPermitSalt(this.token)},u={Permit:[{name:"owner",type:"address"},{name:"spender",type:"address"},{name:"value",type:"uint256"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"}]},h=BigInt(g.getTimestampInSeconds()+3600*2),l=await this.walletClient.signTypedData({account:t,domain:c,types:u,primaryType:"Permit",message:{owner:t,spender:n,value:e,nonce:r,deadline:h}});return{...S(l),deadline:h}}async getPermitData(t,n,e){const{r:i,s:r,v:m,yParity:c,deadline:u}=await this.getPermitSignature(t,n,e);return{r:i,s:r,v:Number(m??c),deadline:u,amount:e}}approve(t,n,e){return this.getContract().write.approve([n,e],{account:t,chain:this.viemChain})}getPermitVersion(t){return s.TOKENS_PERMIT_VERSION[t]}getPermitSalt(t){return s.TOKENS_SALT?.[t]?.[this.chain]}}exports.ERC20PermitHandler=C;
2
2
  //# sourceMappingURL=erc20-permit-handler.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"erc20-permit-handler.cjs","sources":["../../../node_modules/.pnpm/viem@2.37.6_typescript@5.9.2_zod@3.24.2/node_modules/viem/_esm/utils/signature/parseSignature.js","../../../lib/contracts/handlers/erc20-permit-handler.ts"],"sourcesContent":["import { secp256k1 } from '@noble/curves/secp256k1';\nimport { numberToHex, } from '../../utils/encoding/toHex.js';\n/**\n * @description Parses a hex formatted signature into a structured signature.\n *\n * @param signatureHex Signature in hex format.\n * @returns The structured signature.\n *\n * @example\n * parseSignature('0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db81c')\n * // { r: '0x...', s: '0x...', v: 28n }\n */\nexport function parseSignature(signatureHex) {\n const { r, s } = secp256k1.Signature.fromCompact(signatureHex.slice(2, 130));\n const yParityOrV = Number(`0x${signatureHex.slice(130)}`);\n const [v, yParity] = (() => {\n if (yParityOrV === 0 || yParityOrV === 1)\n return [undefined, yParityOrV];\n if (yParityOrV === 27)\n return [BigInt(yParityOrV), 0];\n if (yParityOrV === 28)\n return [BigInt(yParityOrV), 1];\n throw new Error('Invalid yParityOrV value');\n })();\n if (typeof v !== 'undefined')\n return {\n r: numberToHex(r, { size: 32 }),\n s: numberToHex(s, { size: 32 }),\n v,\n yParity,\n };\n return {\n r: numberToHex(r, { size: 32 }),\n s: numberToHex(s, { size: 32 }),\n yParity,\n };\n}\n//# sourceMappingURL=parseSignature.js.map","import {\n WalletClient,\n PublicClient,\n getContract,\n Address,\n parseSignature,\n GetContractReturnType,\n} from 'viem';\nimport { Chain, VIEM_CHAINS, ViemChain } from '../../chains/constants';\nimport {\n AnyToken,\n TOKENS_ADDRESSES,\n TOKENS_SALT,\n TOKENS_PERMIT_VERSION,\n Token,\n} from '../tokens';\nimport { getTimestampInSeconds } from '../../utils/time';\nimport { ERC20Permit } from '../abis/mainnet/ERC20Permit';\nimport { PermitData } from '../common/lib/types';\n\n/**\n * Handler for performing operations for and with ERC20Permit tokens.\n */\nexport class ERC20PermitHandler {\n private viemChain: ViemChain;\n private token: AnyToken;\n\n /**\n * Create the handler for processing tokens.\n *\n * @param chain Chain to use for the client.\n * @param walletClient The wallet client to use for wallet\n * interactions.\n * @param publicClient The public client to use for public\n * interactions.\n */\n constructor(\n private chain: Chain,\n private walletClient: WalletClient,\n private publicClient: PublicClient,\n ) {\n this.viemChain = VIEM_CHAINS[chain];\n this.token = Token.WETH;\n }\n\n /**\n * Set the token to use for executing transactions on the contract.\n *\n * @param token Token to use for the handler.\n * @returns The handler.\n */\n public withToken(token: AnyToken) {\n this.token = token;\n return this;\n }\n\n /**\n * Get the contract. This is a method because the typings are complex\n * and lost when trying to make it a member.\n *\n * @returns The viem contract.\n */\n public getContract() {\n const address = TOKENS_ADDRESSES[this.token][this.chain];\n const abi = ERC20Permit;\n const client = { public: this.publicClient, wallet: this.walletClient };\n\n return getContract({ address, abi, client }) as GetContractReturnType<\n typeof abi,\n typeof client,\n Address\n >;\n }\n\n /**\n * Get the nonces for the given account.\n *\n * @param account Address of the account.\n * @returns The nonces.\n */\n public nonces(account: Address) {\n return this.getContract().read.nonces([account]);\n }\n\n /**\n * Process and get permit signature for the given token to perform\n * transactions without calling `approve()`.\n *\n * @param ownerAddress Address of the token owner.\n * @param spenderAddress Address of the spender who needs the permit.\n * @param value Value of the transaction.\n * @returns Permit signature in the form `{ r, s, v?, yParity }`.\n */\n public async getPermitSignature(\n ownerAddress: Address,\n spenderAddress: Address,\n value: bigint,\n ) {\n const contract = this.getContract();\n\n const permitNonces = await this.nonces(ownerAddress);\n const name = await contract.read.name();\n const domain = <const>{\n name,\n version: this.getPermitVersion(this.token),\n chainId: this.chain,\n verifyingContract: TOKENS_ADDRESSES[this.token][this.chain],\n salt: this.getPermitSalt(this.token),\n };\n const types = <const>{\n Permit: [\n { name: 'owner', type: 'address' },\n { name: 'spender', type: 'address' },\n { name: 'value', type: 'uint256' },\n { name: 'nonce', type: 'uint256' },\n { name: 'deadline', type: 'uint256' },\n ],\n };\n // Valid for 2 hours.\n const deadline = BigInt(getTimestampInSeconds() + 60 * 60 * 2);\n\n const signature = await this.walletClient.signTypedData({\n account: ownerAddress,\n domain,\n types,\n primaryType: 'Permit',\n message: {\n owner: ownerAddress,\n spender: spenderAddress,\n value,\n nonce: permitNonces,\n deadline,\n },\n });\n\n return { ...parseSignature(signature), deadline };\n }\n\n /**\n * Get the permit data for the given owner, spender and value.\n *\n * @param ownerAddress Address of the token owner.\n * @param spenderAddress Address of the spender who needs the permit.\n * @param value Value/amount to be permitted.\n * @returns Permit data in the form `{ r, s, v, deadline, amount }`.\n */\n public async getPermitData(\n ownerAddress: Address,\n spenderAddress: Address,\n value: bigint,\n ): Promise<PermitData> {\n const { r, s, v, yParity, deadline } = await this.getPermitSignature(\n ownerAddress,\n spenderAddress,\n value,\n );\n\n /* istanbul ignore next */\n return { r, s, v: Number(v ?? yParity), deadline, amount: value };\n }\n\n /**\n * Approve transaction for the spender to spend the owner's tokens.\n *\n * @param ownerAddress Address of the caller of the transaction.\n * @param spenderAddress Address of the spender.\n * @param value Value to approve for the spender.\n * @returns Hash of the transaction.\n */\n public approve(\n ownerAddress: Address,\n spenderAddress: Address,\n value: bigint,\n ) {\n return this.getContract().write.approve([spenderAddress, value], {\n account: ownerAddress,\n chain: this.viemChain,\n });\n }\n\n private getPermitVersion(token: AnyToken): string {\n return TOKENS_PERMIT_VERSION[token];\n }\n\n private getPermitSalt(token: AnyToken) {\n return TOKENS_SALT?.[token]?.[this.chain];\n }\n}\n"],"names":["parseSignature","signatureHex","r","s","secp256k1","yParityOrV","v","yParity","numberToHex","ERC20PermitHandler","chain","walletClient","publicClient","VIEM_CHAINS","Token","token","address","TOKENS_ADDRESSES","abi","ERC20Permit","client","getContract","account","ownerAddress","spenderAddress","value","contract","permitNonces","domain","types","deadline","getTimestampInSeconds","signature","TOKENS_PERMIT_VERSION","TOKENS_SALT"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"erc20-permit-handler.cjs","sources":["../../../node_modules/.pnpm/viem@2.38.5_typescript@5.9.3_zod@4.1.12/node_modules/viem/_esm/utils/signature/parseSignature.js","../../../lib/contracts/handlers/erc20-permit-handler.ts"],"sourcesContent":["import { secp256k1 } from '@noble/curves/secp256k1';\nimport { numberToHex, } from '../../utils/encoding/toHex.js';\n/**\n * @description Parses a hex formatted signature into a structured signature.\n *\n * @param signatureHex Signature in hex format.\n * @returns The structured signature.\n *\n * @example\n * parseSignature('0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db81c')\n * // { r: '0x...', s: '0x...', v: 28n }\n */\nexport function parseSignature(signatureHex) {\n const { r, s } = secp256k1.Signature.fromCompact(signatureHex.slice(2, 130));\n const yParityOrV = Number(`0x${signatureHex.slice(130)}`);\n const [v, yParity] = (() => {\n if (yParityOrV === 0 || yParityOrV === 1)\n return [undefined, yParityOrV];\n if (yParityOrV === 27)\n return [BigInt(yParityOrV), 0];\n if (yParityOrV === 28)\n return [BigInt(yParityOrV), 1];\n throw new Error('Invalid yParityOrV value');\n })();\n if (typeof v !== 'undefined')\n return {\n r: numberToHex(r, { size: 32 }),\n s: numberToHex(s, { size: 32 }),\n v,\n yParity,\n };\n return {\n r: numberToHex(r, { size: 32 }),\n s: numberToHex(s, { size: 32 }),\n yParity,\n };\n}\n//# sourceMappingURL=parseSignature.js.map","import {\n WalletClient,\n PublicClient,\n getContract,\n Address,\n parseSignature,\n GetContractReturnType,\n} from 'viem';\nimport { Chain, VIEM_CHAINS, ViemChain } from '../../chains/constants';\nimport {\n AnyToken,\n TOKENS_ADDRESSES,\n TOKENS_SALT,\n TOKENS_PERMIT_VERSION,\n Token,\n} from '../tokens';\nimport { getTimestampInSeconds } from '../../utils/time';\nimport { ERC20Permit } from '../abis/mainnet/ERC20Permit';\nimport { PermitData } from '../common/lib/types';\n\n/**\n * Handler for performing operations for and with ERC20Permit tokens.\n */\nexport class ERC20PermitHandler {\n private viemChain: ViemChain;\n private token: AnyToken;\n\n /**\n * Create the handler for processing tokens.\n *\n * @param chain Chain to use for the client.\n * @param walletClient The wallet client to use for wallet\n * interactions.\n * @param publicClient The public client to use for public\n * interactions.\n */\n constructor(\n private chain: Chain,\n private walletClient: WalletClient,\n private publicClient: PublicClient,\n ) {\n this.viemChain = VIEM_CHAINS[chain];\n this.token = Token.WETH;\n }\n\n /**\n * Set the token to use for executing transactions on the contract.\n *\n * @param token Token to use for the handler.\n * @returns The handler.\n */\n public withToken(token: AnyToken) {\n this.token = token;\n return this;\n }\n\n /**\n * Get the contract. This is a method because the typings are complex\n * and lost when trying to make it a member.\n *\n * @returns The viem contract.\n */\n public getContract() {\n const address = TOKENS_ADDRESSES[this.token][this.chain];\n const abi = ERC20Permit;\n const client = { public: this.publicClient, wallet: this.walletClient };\n\n return getContract({ address, abi, client }) as GetContractReturnType<\n typeof abi,\n typeof client,\n Address\n >;\n }\n\n /**\n * Get the nonces for the given account.\n *\n * @param account Address of the account.\n * @returns The nonces.\n */\n public nonces(account: Address) {\n return this.getContract().read.nonces([account]);\n }\n\n /**\n * Process and get permit signature for the given token to perform\n * transactions without calling `approve()`.\n *\n * @param ownerAddress Address of the token owner.\n * @param spenderAddress Address of the spender who needs the permit.\n * @param value Value of the transaction.\n * @returns Permit signature in the form `{ r, s, v?, yParity }`.\n */\n public async getPermitSignature(\n ownerAddress: Address,\n spenderAddress: Address,\n value: bigint,\n ) {\n const contract = this.getContract();\n\n const permitNonces = await this.nonces(ownerAddress);\n const name = await contract.read.name();\n const domain = <const>{\n name,\n version: this.getPermitVersion(this.token),\n chainId: this.chain,\n verifyingContract: TOKENS_ADDRESSES[this.token][this.chain],\n salt: this.getPermitSalt(this.token),\n };\n const types = <const>{\n Permit: [\n { name: 'owner', type: 'address' },\n { name: 'spender', type: 'address' },\n { name: 'value', type: 'uint256' },\n { name: 'nonce', type: 'uint256' },\n { name: 'deadline', type: 'uint256' },\n ],\n };\n // Valid for 2 hours.\n const deadline = BigInt(getTimestampInSeconds() + 60 * 60 * 2);\n\n const signature = await this.walletClient.signTypedData({\n account: ownerAddress,\n domain,\n types,\n primaryType: 'Permit',\n message: {\n owner: ownerAddress,\n spender: spenderAddress,\n value,\n nonce: permitNonces,\n deadline,\n },\n });\n\n return { ...parseSignature(signature), deadline };\n }\n\n /**\n * Get the permit data for the given owner, spender and value.\n *\n * @param ownerAddress Address of the token owner.\n * @param spenderAddress Address of the spender who needs the permit.\n * @param value Value/amount to be permitted.\n * @returns Permit data in the form `{ r, s, v, deadline, amount }`.\n */\n public async getPermitData(\n ownerAddress: Address,\n spenderAddress: Address,\n value: bigint,\n ): Promise<PermitData> {\n const { r, s, v, yParity, deadline } = await this.getPermitSignature(\n ownerAddress,\n spenderAddress,\n value,\n );\n\n /* istanbul ignore next */\n return { r, s, v: Number(v ?? yParity), deadline, amount: value };\n }\n\n /**\n * Approve transaction for the spender to spend the owner's tokens.\n *\n * @param ownerAddress Address of the caller of the transaction.\n * @param spenderAddress Address of the spender.\n * @param value Value to approve for the spender.\n * @returns Hash of the transaction.\n */\n public approve(\n ownerAddress: Address,\n spenderAddress: Address,\n value: bigint,\n ) {\n return this.getContract().write.approve([spenderAddress, value], {\n account: ownerAddress,\n chain: this.viemChain,\n });\n }\n\n private getPermitVersion(token: AnyToken): string {\n return TOKENS_PERMIT_VERSION[token];\n }\n\n private getPermitSalt(token: AnyToken) {\n return TOKENS_SALT?.[token]?.[this.chain];\n }\n}\n"],"names":["parseSignature","signatureHex","r","s","secp256k1","yParityOrV","v","yParity","numberToHex","ERC20PermitHandler","chain","walletClient","publicClient","VIEM_CHAINS","Token","token","address","TOKENS_ADDRESSES","abi","ERC20Permit","client","getContract","account","ownerAddress","spenderAddress","value","contract","permitNonces","domain","types","deadline","getTimestampInSeconds","signature","TOKENS_PERMIT_VERSION","TOKENS_SALT"],"mappings":"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","x_google_ignoreList":[0]}
@@ -4023,6 +4023,7 @@ export declare class ERC20PermitHandler {
4023
4023
  }, (request["parameters"] extends readonly import('viem').PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "fees" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "type") extends infer T_13 ? T_13 extends (request["parameters"] extends readonly import('viem').PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "fees" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "type") ? T_13 extends "fees" ? "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" : T_13 : never : never> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">) extends infer T ? { [K in keyof T]: T[K]; } : never>;
4024
4024
  readContract: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "pure" | "view">, const args extends import('viem').ContractFunctionArgs<abi, "pure" | "view", functionName>>(args: import('viem').ReadContractParameters<abi, functionName, args>) => Promise<import('viem').ReadContractReturnType<abi, functionName, args>>;
4025
4025
  sendRawTransaction: (args: import('viem').SendRawTransactionParameters) => Promise<import('viem').SendRawTransactionReturnType>;
4026
+ sendRawTransactionSync: (args: import('viem').SendRawTransactionSyncParameters) => Promise<import('viem').TransactionReceipt>;
4026
4027
  simulate: <const calls extends readonly unknown[]>(args: import('viem').SimulateBlocksParameters<calls>) => Promise<import('viem').SimulateBlocksReturnType<calls>>;
4027
4028
  simulateBlocks: <const calls extends readonly unknown[]>(args: import('viem').SimulateBlocksParameters<calls>) => Promise<import('viem').SimulateBlocksReturnType<calls>>;
4028
4029
  simulateCalls: <const calls extends readonly unknown[]>(args: import('viem').SimulateCallsParameters<calls>) => Promise<import('viem').SimulateCallsReturnType<calls>>;
@@ -7352,8 +7353,24 @@ export declare class ERC20PermitHandler {
7352
7353
  } | undefined;
7353
7354
  id: string;
7354
7355
  }>;
7356
+ sendCallsSync: <const calls extends readonly unknown[], chainOverride extends ViemChain | undefined = undefined>(parameters: import('viem').SendCallsSyncParameters<ViemChain | undefined, import('viem').Account | undefined, chainOverride, calls>) => Promise<{
7357
+ id: string;
7358
+ chainId: number;
7359
+ version: string;
7360
+ atomic: boolean;
7361
+ capabilities?: {
7362
+ [key: string]: any;
7363
+ } | {
7364
+ [x: string]: any;
7365
+ } | undefined;
7366
+ receipts?: import('viem').WalletCallReceipt<bigint, "success" | "reverted">[] | undefined;
7367
+ statusCode: number;
7368
+ status: "pending" | "success" | "failure" | undefined;
7369
+ }>;
7355
7370
  sendRawTransaction: (args: import('viem').SendRawTransactionParameters) => Promise<import('viem').SendRawTransactionReturnType>;
7371
+ sendRawTransactionSync: (args: import('viem').SendRawTransactionSyncParameters) => Promise<import('viem').TransactionReceipt>;
7356
7372
  sendTransaction: <const request extends import('viem').SendTransactionRequest<ViemChain | undefined, chainOverride>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').SendTransactionParameters<ViemChain | undefined, import('viem').Account | undefined, chainOverride, request>) => Promise<import('viem').SendTransactionReturnType>;
7373
+ sendTransactionSync: <const request extends import('viem').SendTransactionSyncRequest<ViemChain | undefined, chainOverride>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').SendTransactionSyncParameters<ViemChain | undefined, import('viem').Account | undefined, chainOverride, request>) => Promise<import('viem').SendTransactionSyncReturnType>;
7357
7374
  showCallsStatus: (parameters: import('viem').ShowCallsStatusParameters) => Promise<import('viem').ShowCallsStatusReturnType>;
7358
7375
  signAuthorization: (parameters: import('viem').SignAuthorizationParameters<import('viem').Account | undefined>) => Promise<import('viem').SignAuthorizationReturnType>;
7359
7376
  signMessage: (args: import('viem').SignMessageParameters<import('viem').Account | undefined>) => Promise<import('viem').SignMessageReturnType>;
@@ -8461,6 +8478,7 @@ export declare class ERC20PermitHandler {
8461
8478
  waitForCallsStatus: (parameters: import('viem').WaitForCallsStatusParameters) => Promise<import('viem').WaitForCallsStatusReturnType>;
8462
8479
  watchAsset: (args: import('viem').WatchAssetParameters) => Promise<import('viem').WatchAssetReturnType>;
8463
8480
  writeContract: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "nonpayable" | "payable">, args_1 extends import('viem').ContractFunctionArgs<abi, "nonpayable" | "payable", functionName>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').WriteContractParameters<abi, functionName, args_1, ViemChain | undefined, import('viem').Account | undefined, chainOverride>) => Promise<import('viem').WriteContractReturnType>;
8481
+ writeContractSync: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "nonpayable" | "payable">, args_1 extends import('viem').ContractFunctionArgs<abi, "nonpayable" | "payable", functionName>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').WriteContractSyncParameters<abi, functionName, args_1, ViemChain | undefined, import('viem').Account | undefined, chainOverride>) => Promise<import('viem').WriteContractSyncReturnType>;
8464
8482
  extend: <const client extends {
8465
8483
  [x: string]: unknown;
8466
8484
  account?: undefined;
@@ -1,9 +1,9 @@
1
- import { n as a, V as l } from "../../constants-CuIEh_ZS.js";
1
+ import { n as a, V as l } from "../../constants-BO_Dvglw.js";
2
2
  import { Token as g, TOKENS_ADDRESSES as u, TOKENS_PERMIT_VERSION as d, TOKENS_SALT as y } from "../tokens.js";
3
3
  import { getTimestampInSeconds as C } from "../../utils/time.js";
4
4
  import { ERC20Permit as f } from "../abis/mainnet/ERC20Permit.js";
5
- import { g as P } from "../../getContract-DQN7VDBo.js";
6
- import { secp256k1 as S } from "../../secp256k1-DCMgMsfV.js";
5
+ import { g as P } from "../../getContract-DRjKmuyC.js";
6
+ import { secp256k1 as S } from "../../secp256k1-Dx1prb1E.js";
7
7
  function v(s) {
8
8
  const { r: t, s: n } = S.Signature.fromCompact(s.slice(2, 130)), e = +`0x${s.slice(130)}`, [i, r] = (() => {
9
9
  if (e === 0 || e === 1)
@@ -1 +1 @@
1
- {"version":3,"file":"erc20-permit-handler.js","sources":["../../../node_modules/.pnpm/viem@2.37.6_typescript@5.9.2_zod@3.24.2/node_modules/viem/_esm/utils/signature/parseSignature.js","../../../lib/contracts/handlers/erc20-permit-handler.ts"],"sourcesContent":["import { secp256k1 } from '@noble/curves/secp256k1';\nimport { numberToHex, } from '../../utils/encoding/toHex.js';\n/**\n * @description Parses a hex formatted signature into a structured signature.\n *\n * @param signatureHex Signature in hex format.\n * @returns The structured signature.\n *\n * @example\n * parseSignature('0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db81c')\n * // { r: '0x...', s: '0x...', v: 28n }\n */\nexport function parseSignature(signatureHex) {\n const { r, s } = secp256k1.Signature.fromCompact(signatureHex.slice(2, 130));\n const yParityOrV = Number(`0x${signatureHex.slice(130)}`);\n const [v, yParity] = (() => {\n if (yParityOrV === 0 || yParityOrV === 1)\n return [undefined, yParityOrV];\n if (yParityOrV === 27)\n return [BigInt(yParityOrV), 0];\n if (yParityOrV === 28)\n return [BigInt(yParityOrV), 1];\n throw new Error('Invalid yParityOrV value');\n })();\n if (typeof v !== 'undefined')\n return {\n r: numberToHex(r, { size: 32 }),\n s: numberToHex(s, { size: 32 }),\n v,\n yParity,\n };\n return {\n r: numberToHex(r, { size: 32 }),\n s: numberToHex(s, { size: 32 }),\n yParity,\n };\n}\n//# sourceMappingURL=parseSignature.js.map","import {\n WalletClient,\n PublicClient,\n getContract,\n Address,\n parseSignature,\n GetContractReturnType,\n} from 'viem';\nimport { Chain, VIEM_CHAINS, ViemChain } from '../../chains/constants';\nimport {\n AnyToken,\n TOKENS_ADDRESSES,\n TOKENS_SALT,\n TOKENS_PERMIT_VERSION,\n Token,\n} from '../tokens';\nimport { getTimestampInSeconds } from '../../utils/time';\nimport { ERC20Permit } from '../abis/mainnet/ERC20Permit';\nimport { PermitData } from '../common/lib/types';\n\n/**\n * Handler for performing operations for and with ERC20Permit tokens.\n */\nexport class ERC20PermitHandler {\n private viemChain: ViemChain;\n private token: AnyToken;\n\n /**\n * Create the handler for processing tokens.\n *\n * @param chain Chain to use for the client.\n * @param walletClient The wallet client to use for wallet\n * interactions.\n * @param publicClient The public client to use for public\n * interactions.\n */\n constructor(\n private chain: Chain,\n private walletClient: WalletClient,\n private publicClient: PublicClient,\n ) {\n this.viemChain = VIEM_CHAINS[chain];\n this.token = Token.WETH;\n }\n\n /**\n * Set the token to use for executing transactions on the contract.\n *\n * @param token Token to use for the handler.\n * @returns The handler.\n */\n public withToken(token: AnyToken) {\n this.token = token;\n return this;\n }\n\n /**\n * Get the contract. This is a method because the typings are complex\n * and lost when trying to make it a member.\n *\n * @returns The viem contract.\n */\n public getContract() {\n const address = TOKENS_ADDRESSES[this.token][this.chain];\n const abi = ERC20Permit;\n const client = { public: this.publicClient, wallet: this.walletClient };\n\n return getContract({ address, abi, client }) as GetContractReturnType<\n typeof abi,\n typeof client,\n Address\n >;\n }\n\n /**\n * Get the nonces for the given account.\n *\n * @param account Address of the account.\n * @returns The nonces.\n */\n public nonces(account: Address) {\n return this.getContract().read.nonces([account]);\n }\n\n /**\n * Process and get permit signature for the given token to perform\n * transactions without calling `approve()`.\n *\n * @param ownerAddress Address of the token owner.\n * @param spenderAddress Address of the spender who needs the permit.\n * @param value Value of the transaction.\n * @returns Permit signature in the form `{ r, s, v?, yParity }`.\n */\n public async getPermitSignature(\n ownerAddress: Address,\n spenderAddress: Address,\n value: bigint,\n ) {\n const contract = this.getContract();\n\n const permitNonces = await this.nonces(ownerAddress);\n const name = await contract.read.name();\n const domain = <const>{\n name,\n version: this.getPermitVersion(this.token),\n chainId: this.chain,\n verifyingContract: TOKENS_ADDRESSES[this.token][this.chain],\n salt: this.getPermitSalt(this.token),\n };\n const types = <const>{\n Permit: [\n { name: 'owner', type: 'address' },\n { name: 'spender', type: 'address' },\n { name: 'value', type: 'uint256' },\n { name: 'nonce', type: 'uint256' },\n { name: 'deadline', type: 'uint256' },\n ],\n };\n // Valid for 2 hours.\n const deadline = BigInt(getTimestampInSeconds() + 60 * 60 * 2);\n\n const signature = await this.walletClient.signTypedData({\n account: ownerAddress,\n domain,\n types,\n primaryType: 'Permit',\n message: {\n owner: ownerAddress,\n spender: spenderAddress,\n value,\n nonce: permitNonces,\n deadline,\n },\n });\n\n return { ...parseSignature(signature), deadline };\n }\n\n /**\n * Get the permit data for the given owner, spender and value.\n *\n * @param ownerAddress Address of the token owner.\n * @param spenderAddress Address of the spender who needs the permit.\n * @param value Value/amount to be permitted.\n * @returns Permit data in the form `{ r, s, v, deadline, amount }`.\n */\n public async getPermitData(\n ownerAddress: Address,\n spenderAddress: Address,\n value: bigint,\n ): Promise<PermitData> {\n const { r, s, v, yParity, deadline } = await this.getPermitSignature(\n ownerAddress,\n spenderAddress,\n value,\n );\n\n /* istanbul ignore next */\n return { r, s, v: Number(v ?? yParity), deadline, amount: value };\n }\n\n /**\n * Approve transaction for the spender to spend the owner's tokens.\n *\n * @param ownerAddress Address of the caller of the transaction.\n * @param spenderAddress Address of the spender.\n * @param value Value to approve for the spender.\n * @returns Hash of the transaction.\n */\n public approve(\n ownerAddress: Address,\n spenderAddress: Address,\n value: bigint,\n ) {\n return this.getContract().write.approve([spenderAddress, value], {\n account: ownerAddress,\n chain: this.viemChain,\n });\n }\n\n private getPermitVersion(token: AnyToken): string {\n return TOKENS_PERMIT_VERSION[token];\n }\n\n private getPermitSalt(token: AnyToken) {\n return TOKENS_SALT?.[token]?.[this.chain];\n }\n}\n"],"names":["parseSignature","signatureHex","r","s","secp256k1","yParityOrV","v","yParity","numberToHex","ERC20PermitHandler","chain","walletClient","publicClient","VIEM_CHAINS","Token","token","address","TOKENS_ADDRESSES","abi","ERC20Permit","client","getContract","account","ownerAddress","spenderAddress","value","contract","permitNonces","domain","types","deadline","getTimestampInSeconds","signature","TOKENS_PERMIT_VERSION","TOKENS_SALT"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"erc20-permit-handler.js","sources":["../../../node_modules/.pnpm/viem@2.38.5_typescript@5.9.3_zod@4.1.12/node_modules/viem/_esm/utils/signature/parseSignature.js","../../../lib/contracts/handlers/erc20-permit-handler.ts"],"sourcesContent":["import { secp256k1 } from '@noble/curves/secp256k1';\nimport { numberToHex, } from '../../utils/encoding/toHex.js';\n/**\n * @description Parses a hex formatted signature into a structured signature.\n *\n * @param signatureHex Signature in hex format.\n * @returns The structured signature.\n *\n * @example\n * parseSignature('0x6e100a352ec6ad1b70802290e18aeed190704973570f3b8ed42cb9808e2ea6bf4a90a229a244495b41890987806fcbd2d5d23fc0dbe5f5256c2613c039d76db81c')\n * // { r: '0x...', s: '0x...', v: 28n }\n */\nexport function parseSignature(signatureHex) {\n const { r, s } = secp256k1.Signature.fromCompact(signatureHex.slice(2, 130));\n const yParityOrV = Number(`0x${signatureHex.slice(130)}`);\n const [v, yParity] = (() => {\n if (yParityOrV === 0 || yParityOrV === 1)\n return [undefined, yParityOrV];\n if (yParityOrV === 27)\n return [BigInt(yParityOrV), 0];\n if (yParityOrV === 28)\n return [BigInt(yParityOrV), 1];\n throw new Error('Invalid yParityOrV value');\n })();\n if (typeof v !== 'undefined')\n return {\n r: numberToHex(r, { size: 32 }),\n s: numberToHex(s, { size: 32 }),\n v,\n yParity,\n };\n return {\n r: numberToHex(r, { size: 32 }),\n s: numberToHex(s, { size: 32 }),\n yParity,\n };\n}\n//# sourceMappingURL=parseSignature.js.map","import {\n WalletClient,\n PublicClient,\n getContract,\n Address,\n parseSignature,\n GetContractReturnType,\n} from 'viem';\nimport { Chain, VIEM_CHAINS, ViemChain } from '../../chains/constants';\nimport {\n AnyToken,\n TOKENS_ADDRESSES,\n TOKENS_SALT,\n TOKENS_PERMIT_VERSION,\n Token,\n} from '../tokens';\nimport { getTimestampInSeconds } from '../../utils/time';\nimport { ERC20Permit } from '../abis/mainnet/ERC20Permit';\nimport { PermitData } from '../common/lib/types';\n\n/**\n * Handler for performing operations for and with ERC20Permit tokens.\n */\nexport class ERC20PermitHandler {\n private viemChain: ViemChain;\n private token: AnyToken;\n\n /**\n * Create the handler for processing tokens.\n *\n * @param chain Chain to use for the client.\n * @param walletClient The wallet client to use for wallet\n * interactions.\n * @param publicClient The public client to use for public\n * interactions.\n */\n constructor(\n private chain: Chain,\n private walletClient: WalletClient,\n private publicClient: PublicClient,\n ) {\n this.viemChain = VIEM_CHAINS[chain];\n this.token = Token.WETH;\n }\n\n /**\n * Set the token to use for executing transactions on the contract.\n *\n * @param token Token to use for the handler.\n * @returns The handler.\n */\n public withToken(token: AnyToken) {\n this.token = token;\n return this;\n }\n\n /**\n * Get the contract. This is a method because the typings are complex\n * and lost when trying to make it a member.\n *\n * @returns The viem contract.\n */\n public getContract() {\n const address = TOKENS_ADDRESSES[this.token][this.chain];\n const abi = ERC20Permit;\n const client = { public: this.publicClient, wallet: this.walletClient };\n\n return getContract({ address, abi, client }) as GetContractReturnType<\n typeof abi,\n typeof client,\n Address\n >;\n }\n\n /**\n * Get the nonces for the given account.\n *\n * @param account Address of the account.\n * @returns The nonces.\n */\n public nonces(account: Address) {\n return this.getContract().read.nonces([account]);\n }\n\n /**\n * Process and get permit signature for the given token to perform\n * transactions without calling `approve()`.\n *\n * @param ownerAddress Address of the token owner.\n * @param spenderAddress Address of the spender who needs the permit.\n * @param value Value of the transaction.\n * @returns Permit signature in the form `{ r, s, v?, yParity }`.\n */\n public async getPermitSignature(\n ownerAddress: Address,\n spenderAddress: Address,\n value: bigint,\n ) {\n const contract = this.getContract();\n\n const permitNonces = await this.nonces(ownerAddress);\n const name = await contract.read.name();\n const domain = <const>{\n name,\n version: this.getPermitVersion(this.token),\n chainId: this.chain,\n verifyingContract: TOKENS_ADDRESSES[this.token][this.chain],\n salt: this.getPermitSalt(this.token),\n };\n const types = <const>{\n Permit: [\n { name: 'owner', type: 'address' },\n { name: 'spender', type: 'address' },\n { name: 'value', type: 'uint256' },\n { name: 'nonce', type: 'uint256' },\n { name: 'deadline', type: 'uint256' },\n ],\n };\n // Valid for 2 hours.\n const deadline = BigInt(getTimestampInSeconds() + 60 * 60 * 2);\n\n const signature = await this.walletClient.signTypedData({\n account: ownerAddress,\n domain,\n types,\n primaryType: 'Permit',\n message: {\n owner: ownerAddress,\n spender: spenderAddress,\n value,\n nonce: permitNonces,\n deadline,\n },\n });\n\n return { ...parseSignature(signature), deadline };\n }\n\n /**\n * Get the permit data for the given owner, spender and value.\n *\n * @param ownerAddress Address of the token owner.\n * @param spenderAddress Address of the spender who needs the permit.\n * @param value Value/amount to be permitted.\n * @returns Permit data in the form `{ r, s, v, deadline, amount }`.\n */\n public async getPermitData(\n ownerAddress: Address,\n spenderAddress: Address,\n value: bigint,\n ): Promise<PermitData> {\n const { r, s, v, yParity, deadline } = await this.getPermitSignature(\n ownerAddress,\n spenderAddress,\n value,\n );\n\n /* istanbul ignore next */\n return { r, s, v: Number(v ?? yParity), deadline, amount: value };\n }\n\n /**\n * Approve transaction for the spender to spend the owner's tokens.\n *\n * @param ownerAddress Address of the caller of the transaction.\n * @param spenderAddress Address of the spender.\n * @param value Value to approve for the spender.\n * @returns Hash of the transaction.\n */\n public approve(\n ownerAddress: Address,\n spenderAddress: Address,\n value: bigint,\n ) {\n return this.getContract().write.approve([spenderAddress, value], {\n account: ownerAddress,\n chain: this.viemChain,\n });\n }\n\n private getPermitVersion(token: AnyToken): string {\n return TOKENS_PERMIT_VERSION[token];\n }\n\n private getPermitSalt(token: AnyToken) {\n return TOKENS_SALT?.[token]?.[this.chain];\n }\n}\n"],"names":["parseSignature","signatureHex","r","s","secp256k1","yParityOrV","v","yParity","numberToHex","ERC20PermitHandler","chain","walletClient","publicClient","VIEM_CHAINS","Token","token","address","TOKENS_ADDRESSES","abi","ERC20Permit","client","getContract","account","ownerAddress","spenderAddress","value","contract","permitNonces","domain","types","deadline","getTimestampInSeconds","signature","TOKENS_PERMIT_VERSION","TOKENS_SALT"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../../constants-6kuRTsbU.cjs"),n=require("../abis/mainnet/GaugeRegistry.cjs"),r=require("../addresses.cjs"),c=require("../../getContract-D4_SEfqa.cjs");class s{constructor(t,e,i){this.chain=t,this.walletClient=e,this.publicClient=i,this.viemChain=a.VIEM_CHAINS[t]}viemChain;getContract(){const t=r.CONTRACT_ADDRESSES[this.chain].GaugeRegistry,e=n.GaugeRegistry,i={public:this.publicClient,wallet:this.walletClient};return c.getContract({address:t,abi:e,client:i})}owner(){return this.getContract().read.owner()}pendingOwner(){return this.getContract().read.pendingOwner()}gaugeExists(t){return this.getContract().read.gaugeExists([t])}isActive(t){return this.getContract().read.isActive([t])}async getGauge(t){return await this.getContract().read.getGauge([t])}getGaugeList(){return this.getContract().read.getGaugeList()}registerGauge(t,e){return this.getContract().write.registerGauge([t,e],{account:this.walletClient.account,chain:this.viemChain})}activateGauge(t){return this.getContract().write.activateGauge([t],{account:this.walletClient.account,chain:this.viemChain})}deactivateGauge(t){return this.getContract().write.deactivateGauge([t],{account:this.walletClient.account,chain:this.viemChain})}updateGaugeMetadata(t,e){return this.getContract().write.updateGaugeMetadata([t,e],{account:this.walletClient.account,chain:this.viemChain})}transferOwnership(t){return this.getContract().write.transferOwnership([t],{account:this.walletClient.account,chain:this.viemChain})}acceptOwnership(){return this.getContract().write.acceptOwnership({account:this.walletClient.account,chain:this.viemChain})}renounceOwnership(){return this.getContract().write.renounceOwnership({account:this.walletClient.account,chain:this.viemChain})}}exports.GaugeRegistryHandler=s;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../../constants-4-ehn8UI.cjs"),n=require("../abis/mainnet/GaugeRegistry.cjs"),r=require("../addresses.cjs"),c=require("../../getContract-C6a8L2Jd.cjs");class s{constructor(t,e,i){this.chain=t,this.walletClient=e,this.publicClient=i,this.viemChain=a.VIEM_CHAINS[t]}viemChain;getContract(){const t=r.CONTRACT_ADDRESSES[this.chain].GaugeRegistry,e=n.GaugeRegistry,i={public:this.publicClient,wallet:this.walletClient};return c.getContract({address:t,abi:e,client:i})}owner(){return this.getContract().read.owner()}pendingOwner(){return this.getContract().read.pendingOwner()}gaugeExists(t){return this.getContract().read.gaugeExists([t])}isActive(t){return this.getContract().read.isActive([t])}async getGauge(t){return await this.getContract().read.getGauge([t])}getGaugeList(){return this.getContract().read.getGaugeList()}registerGauge(t,e){return this.getContract().write.registerGauge([t,e],{account:this.walletClient.account,chain:this.viemChain})}activateGauge(t){return this.getContract().write.activateGauge([t],{account:this.walletClient.account,chain:this.viemChain})}deactivateGauge(t){return this.getContract().write.deactivateGauge([t],{account:this.walletClient.account,chain:this.viemChain})}updateGaugeMetadata(t,e){return this.getContract().write.updateGaugeMetadata([t,e],{account:this.walletClient.account,chain:this.viemChain})}transferOwnership(t){return this.getContract().write.transferOwnership([t],{account:this.walletClient.account,chain:this.viemChain})}acceptOwnership(){return this.getContract().write.acceptOwnership({account:this.walletClient.account,chain:this.viemChain})}renounceOwnership(){return this.getContract().write.renounceOwnership({account:this.walletClient.account,chain:this.viemChain})}}exports.GaugeRegistryHandler=s;
2
2
  //# sourceMappingURL=gauge-registry-handler.cjs.map
@@ -3620,6 +3620,7 @@ export declare class GaugeRegistryHandler {
3620
3620
  }, (request["parameters"] extends readonly import('viem').PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "fees" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "type") extends infer T_13 ? T_13 extends (request["parameters"] extends readonly import('viem').PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "fees" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "type") ? T_13 extends "fees" ? "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" : T_13 : never : never> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">) extends infer T ? { [K in keyof T]: T[K]; } : never>;
3621
3621
  readContract: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "pure" | "view">, const args extends import('viem').ContractFunctionArgs<abi, "pure" | "view", functionName>>(args: import('viem').ReadContractParameters<abi, functionName, args>) => Promise<import('viem').ReadContractReturnType<abi, functionName, args>>;
3622
3622
  sendRawTransaction: (args: import('viem').SendRawTransactionParameters) => Promise<import('viem').SendRawTransactionReturnType>;
3623
+ sendRawTransactionSync: (args: import('viem').SendRawTransactionSyncParameters) => Promise<import('viem').TransactionReceipt>;
3623
3624
  simulate: <const calls extends readonly unknown[]>(args: import('viem').SimulateBlocksParameters<calls>) => Promise<import('viem').SimulateBlocksReturnType<calls>>;
3624
3625
  simulateBlocks: <const calls extends readonly unknown[]>(args: import('viem').SimulateBlocksParameters<calls>) => Promise<import('viem').SimulateBlocksReturnType<calls>>;
3625
3626
  simulateCalls: <const calls extends readonly unknown[]>(args: import('viem').SimulateCallsParameters<calls>) => Promise<import('viem').SimulateCallsReturnType<calls>>;
@@ -6949,8 +6950,24 @@ export declare class GaugeRegistryHandler {
6949
6950
  } | undefined;
6950
6951
  id: string;
6951
6952
  }>;
6953
+ sendCallsSync: <const calls extends readonly unknown[], chainOverride extends ViemChain | undefined = undefined>(parameters: import('viem').SendCallsSyncParameters<ViemChain | undefined, Account | undefined, chainOverride, calls>) => Promise<{
6954
+ id: string;
6955
+ chainId: number;
6956
+ version: string;
6957
+ atomic: boolean;
6958
+ capabilities?: {
6959
+ [key: string]: any;
6960
+ } | {
6961
+ [x: string]: any;
6962
+ } | undefined;
6963
+ receipts?: import('viem').WalletCallReceipt<bigint, "success" | "reverted">[] | undefined;
6964
+ statusCode: number;
6965
+ status: "pending" | "success" | "failure" | undefined;
6966
+ }>;
6952
6967
  sendRawTransaction: (args: import('viem').SendRawTransactionParameters) => Promise<import('viem').SendRawTransactionReturnType>;
6968
+ sendRawTransactionSync: (args: import('viem').SendRawTransactionSyncParameters) => Promise<import('viem').TransactionReceipt>;
6953
6969
  sendTransaction: <const request extends import('viem').SendTransactionRequest<ViemChain | undefined, chainOverride>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').SendTransactionParameters<ViemChain | undefined, Account | undefined, chainOverride, request>) => Promise<import('viem').SendTransactionReturnType>;
6970
+ sendTransactionSync: <const request extends import('viem').SendTransactionSyncRequest<ViemChain | undefined, chainOverride>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').SendTransactionSyncParameters<ViemChain | undefined, Account | undefined, chainOverride, request>) => Promise<import('viem').SendTransactionSyncReturnType>;
6954
6971
  showCallsStatus: (parameters: import('viem').ShowCallsStatusParameters) => Promise<import('viem').ShowCallsStatusReturnType>;
6955
6972
  signAuthorization: (parameters: import('viem').SignAuthorizationParameters<Account | undefined>) => Promise<import('viem').SignAuthorizationReturnType>;
6956
6973
  signMessage: (args: import('viem').SignMessageParameters<Account | undefined>) => Promise<import('viem').SignMessageReturnType>;
@@ -8058,6 +8075,7 @@ export declare class GaugeRegistryHandler {
8058
8075
  waitForCallsStatus: (parameters: import('viem').WaitForCallsStatusParameters) => Promise<import('viem').WaitForCallsStatusReturnType>;
8059
8076
  watchAsset: (args: import('viem').WatchAssetParameters) => Promise<import('viem').WatchAssetReturnType>;
8060
8077
  writeContract: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "nonpayable" | "payable">, args_1 extends import('viem').ContractFunctionArgs<abi, "nonpayable" | "payable", functionName>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').WriteContractParameters<abi, functionName, args_1, ViemChain | undefined, Account | undefined, chainOverride>) => Promise<import('viem').WriteContractReturnType>;
8078
+ writeContractSync: <const abi extends import('viem').Abi | readonly unknown[], functionName extends import('viem').ContractFunctionName<abi, "nonpayable" | "payable">, args_1 extends import('viem').ContractFunctionArgs<abi, "nonpayable" | "payable", functionName>, chainOverride extends ViemChain | undefined = undefined>(args: import('viem').WriteContractSyncParameters<abi, functionName, args_1, ViemChain | undefined, Account | undefined, chainOverride>) => Promise<import('viem').WriteContractSyncReturnType>;
8061
8079
  extend: <const client extends {
8062
8080
  [x: string]: unknown;
8063
8081
  account?: undefined;
@@ -1,7 +1,7 @@
1
- import { V as a } from "../../constants-CuIEh_ZS.js";
1
+ import { V as a } from "../../constants-BO_Dvglw.js";
2
2
  import { GaugeRegistry as n } from "../abis/mainnet/GaugeRegistry.js";
3
3
  import { CONTRACT_ADDRESSES as r } from "../addresses.js";
4
- import { g as c } from "../../getContract-DQN7VDBo.js";
4
+ import { g as c } from "../../getContract-DRjKmuyC.js";
5
5
  class C {
6
6
  /**
7
7
  * Create the handler for the `GaugeRegistry` contract exposing methods to
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../../constants-6kuRTsbU.cjs"),n=require("../addresses.cjs"),i=require("../abis/mainnet/GuardianModule.cjs"),s=require("../../getContract-D4_SEfqa.cjs");class d{constructor(e,t,r){this.chain=e,this.walletClient=t,this.publicClient=r,this.viemChain=a.VIEM_CHAINS[e]}viemChain;getContract(){const e=n.CONTRACT_ADDRESSES[this.chain].GuardianModule,t=i.GuardianModule,r={public:this.publicClient,wallet:this.walletClient};return s.getContract({address:e,abi:t,client:r})}getEjectionThreshold(){return this.getContract().read.getEjectionThreshold()}getGuardians(){return this.getContract().read.getGuardians()}getGuardiansEnclaveAddress(e){return this.getContract().read.getGuardiansEnclaveAddress([e])}getGuardiansEnclaveAddresses(){return this.getContract().read.getGuardiansEnclaveAddresses()}getGuardiansEnclavePubkeys(){return this.getContract().read.getGuardiansEnclavePubkeys()}validateGuardiansEnclaveSignatures(e,t){return this.getContract().read.validateGuardiansEnclaveSignatures([e,t])}getMrenclave(){return this.getContract().read.getMrenclave()}getMrsigner(){return this.getContract().read.getMrsigner()}getThreshold(){return this.getContract().read.getThreshold()}isConsumingScheduledOp(){return this.getContract().read.isConsumingScheduledOp()}isGuardian(e){return this.getContract().read.isGuardian([e])}removeGuardian(e,t){return this.getContract().write.removeGuardian([e],{account:t,chain:this.viemChain})}}exports.GuardianModuleHandler=d;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../../constants-4-ehn8UI.cjs"),n=require("../addresses.cjs"),i=require("../abis/mainnet/GuardianModule.cjs"),s=require("../../getContract-C6a8L2Jd.cjs");class d{constructor(e,t,r){this.chain=e,this.walletClient=t,this.publicClient=r,this.viemChain=a.VIEM_CHAINS[e]}viemChain;getContract(){const e=n.CONTRACT_ADDRESSES[this.chain].GuardianModule,t=i.GuardianModule,r={public:this.publicClient,wallet:this.walletClient};return s.getContract({address:e,abi:t,client:r})}getEjectionThreshold(){return this.getContract().read.getEjectionThreshold()}getGuardians(){return this.getContract().read.getGuardians()}getGuardiansEnclaveAddress(e){return this.getContract().read.getGuardiansEnclaveAddress([e])}getGuardiansEnclaveAddresses(){return this.getContract().read.getGuardiansEnclaveAddresses()}getGuardiansEnclavePubkeys(){return this.getContract().read.getGuardiansEnclavePubkeys()}validateGuardiansEnclaveSignatures(e,t){return this.getContract().read.validateGuardiansEnclaveSignatures([e,t])}getMrenclave(){return this.getContract().read.getMrenclave()}getMrsigner(){return this.getContract().read.getMrsigner()}getThreshold(){return this.getContract().read.getThreshold()}isConsumingScheduledOp(){return this.getContract().read.isConsumingScheduledOp()}isGuardian(e){return this.getContract().read.isGuardian([e])}removeGuardian(e,t){return this.getContract().write.removeGuardian([e],{account:t,chain:this.viemChain})}}exports.GuardianModuleHandler=d;
2
2
  //# sourceMappingURL=guardian-module-handler.cjs.map