@boostxyz/sdk 0.0.0-alpha.2

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 (117) hide show
  1. package/LICENSE +674 -0
  2. package/README.md +7 -0
  3. package/dist/Actions/Action.cjs +1 -0
  4. package/dist/Actions/Action.d.ts +31 -0
  5. package/dist/Actions/Action.d.ts.map +1 -0
  6. package/dist/Actions/Action.js +27 -0
  7. package/dist/Actions/ContractAction.d.ts +327 -0
  8. package/dist/Actions/ContractAction.d.ts.map +1 -0
  9. package/dist/Actions/ERC721MintAction.d.ts +486 -0
  10. package/dist/Actions/ERC721MintAction.d.ts.map +1 -0
  11. package/dist/Actions/EventAction.cjs +1 -0
  12. package/dist/Actions/EventAction.d.ts +433 -0
  13. package/dist/Actions/EventAction.d.ts.map +1 -0
  14. package/dist/Actions/EventAction.js +211 -0
  15. package/dist/AllowLists/AllowList.cjs +1 -0
  16. package/dist/AllowLists/AllowList.d.ts +33 -0
  17. package/dist/AllowLists/AllowList.d.ts.map +1 -0
  18. package/dist/AllowLists/AllowList.js +28 -0
  19. package/dist/AllowLists/SimpleAllowList.cjs +1 -0
  20. package/dist/AllowLists/SimpleAllowList.d.ts +452 -0
  21. package/dist/AllowLists/SimpleAllowList.d.ts.map +1 -0
  22. package/dist/AllowLists/SimpleAllowList.js +138 -0
  23. package/dist/AllowLists/SimpleDenyList.cjs +1 -0
  24. package/dist/AllowLists/SimpleDenyList.d.ts +306 -0
  25. package/dist/AllowLists/SimpleDenyList.d.ts.map +1 -0
  26. package/dist/AllowLists/SimpleDenyList.js +202 -0
  27. package/dist/Auth/Auth.cjs +1 -0
  28. package/dist/Auth/Auth.d.ts +10 -0
  29. package/dist/Auth/Auth.d.ts.map +1 -0
  30. package/dist/Auth/Auth.js +4 -0
  31. package/dist/Auth/PassthroughAuth.cjs +1 -0
  32. package/dist/Auth/PassthroughAuth.d.ts +51 -0
  33. package/dist/Auth/PassthroughAuth.d.ts.map +1 -0
  34. package/dist/Auth/PassthroughAuth.js +38 -0
  35. package/dist/Boost.cjs +1 -0
  36. package/dist/Boost.d.ts +142 -0
  37. package/dist/Boost.d.ts.map +1 -0
  38. package/dist/Boost.js +15 -0
  39. package/dist/BoostCore.cjs +2 -0
  40. package/dist/BoostCore.d.ts +460 -0
  41. package/dist/BoostCore.d.ts.map +1 -0
  42. package/dist/BoostCore.js +1105 -0
  43. package/dist/BoostRegistry.cjs +1 -0
  44. package/dist/BoostRegistry.d.ts +229 -0
  45. package/dist/BoostRegistry.d.ts.map +1 -0
  46. package/dist/BoostRegistry.js +250 -0
  47. package/dist/Budgets/Budget.cjs +1 -0
  48. package/dist/Budgets/Budget.d.ts +31 -0
  49. package/dist/Budgets/Budget.d.ts.map +1 -0
  50. package/dist/Budgets/Budget.js +27 -0
  51. package/dist/Budgets/ManagedBudget.cjs +1 -0
  52. package/dist/Budgets/ManagedBudget.d.ts +1065 -0
  53. package/dist/Budgets/ManagedBudget.d.ts.map +1 -0
  54. package/dist/Budgets/ManagedBudget.js +498 -0
  55. package/dist/Budgets/SimpleBudget.d.ts +793 -0
  56. package/dist/Budgets/SimpleBudget.d.ts.map +1 -0
  57. package/dist/Budgets/VestingBudget.d.ts +726 -0
  58. package/dist/Budgets/VestingBudget.d.ts.map +1 -0
  59. package/dist/Deployable/Contract.cjs +1 -0
  60. package/dist/Deployable/Contract.d.ts +125 -0
  61. package/dist/Deployable/Contract.d.ts.map +1 -0
  62. package/dist/Deployable/Contract.js +149 -0
  63. package/dist/Deployable/Deployable.cjs +1 -0
  64. package/dist/Deployable/Deployable.d.ts +155 -0
  65. package/dist/Deployable/Deployable.d.ts.map +1 -0
  66. package/dist/Deployable/Deployable.js +124 -0
  67. package/dist/Deployable/DeployableTarget.cjs +1 -0
  68. package/dist/Deployable/DeployableTarget.d.ts +115 -0
  69. package/dist/Deployable/DeployableTarget.d.ts.map +1 -0
  70. package/dist/Deployable/DeployableTarget.js +128 -0
  71. package/dist/Incentives/AllowListIncentive.cjs +1 -0
  72. package/dist/Incentives/AllowListIncentive.d.ts +483 -0
  73. package/dist/Incentives/AllowListIncentive.d.ts.map +1 -0
  74. package/dist/Incentives/AllowListIncentive.js +188 -0
  75. package/dist/Incentives/CGDAIncentive.cjs +1 -0
  76. package/dist/Incentives/CGDAIncentive.d.ts +560 -0
  77. package/dist/Incentives/CGDAIncentive.d.ts.map +1 -0
  78. package/dist/Incentives/CGDAIncentive.js +249 -0
  79. package/dist/Incentives/ERC1155Incentive.d.ts +652 -0
  80. package/dist/Incentives/ERC1155Incentive.d.ts.map +1 -0
  81. package/dist/Incentives/ERC20Incentive.cjs +1 -0
  82. package/dist/Incentives/ERC20Incentive.d.ts +622 -0
  83. package/dist/Incentives/ERC20Incentive.d.ts.map +1 -0
  84. package/dist/Incentives/ERC20Incentive.js +292 -0
  85. package/dist/Incentives/ERC20VariableIncentive.d.ts +545 -0
  86. package/dist/Incentives/ERC20VariableIncentive.d.ts.map +1 -0
  87. package/dist/Incentives/Incentive.cjs +1 -0
  88. package/dist/Incentives/Incentive.d.ts +39 -0
  89. package/dist/Incentives/Incentive.d.ts.map +1 -0
  90. package/dist/Incentives/Incentive.js +280 -0
  91. package/dist/Incentives/PointsIncentive.cjs +1 -0
  92. package/dist/Incentives/PointsIncentive.d.ts +615 -0
  93. package/dist/Incentives/PointsIncentive.d.ts.map +1 -0
  94. package/dist/Incentives/PointsIncentive.js +197 -0
  95. package/dist/Validators/SignerValidator.cjs +1 -0
  96. package/dist/Validators/SignerValidator.d.ts +452 -0
  97. package/dist/Validators/SignerValidator.d.ts.map +1 -0
  98. package/dist/Validators/SignerValidator.js +167 -0
  99. package/dist/Validators/Validator.cjs +1 -0
  100. package/dist/Validators/Validator.d.ts +31 -0
  101. package/dist/Validators/Validator.d.ts.map +1 -0
  102. package/dist/Validators/Validator.js +25 -0
  103. package/dist/errors.cjs +1 -0
  104. package/dist/errors.d.ts +257 -0
  105. package/dist/errors.d.ts.map +1 -0
  106. package/dist/errors.js +161 -0
  107. package/dist/generated-BaaleHW-.cjs +2 -0
  108. package/dist/generated-x_abr3Yv.js +6228 -0
  109. package/dist/index.cjs +1 -0
  110. package/dist/index.d.ts +29 -0
  111. package/dist/index.d.ts.map +1 -0
  112. package/dist/index.js +1355 -0
  113. package/dist/utils.cjs +1 -0
  114. package/dist/utils.d.ts +1454 -0
  115. package/dist/utils.d.ts.map +1 -0
  116. package/dist/utils.js +643 -0
  117. package/package.json +197 -0
@@ -0,0 +1,1105 @@
1
+ import { cg as B, ch as H, ci as W, cj as J, ck as K, cl as Q, cm as X, cn as Y, co as Z, cp as ff, cq as ef, cr as af, cs as bf, ct as tf, cu as cf, cv as sf } from "./generated-x_abr3Yv.js";
2
+ import { getAccount as df, waitForTransactionReceipt as x } from "@wagmi/core";
3
+ import { createClient as nf, custom as rf, zeroAddress as w, zeroHash as i, parseEventLogs as of } from "viem";
4
+ import { actionFromAddress as uf } from "./Actions/Action.js";
5
+ import { EventAction as lf } from "./Actions/EventAction.js";
6
+ import { allowListFromAddress as hf } from "./AllowLists/AllowList.js";
7
+ import { SimpleAllowList as mf } from "./AllowLists/SimpleAllowList.js";
8
+ import { SimpleDenyList as gf } from "./AllowLists/SimpleDenyList.js";
9
+ import { PassthroughAuth as wf } from "./Auth/PassthroughAuth.js";
10
+ import { Boost as N } from "./Boost.js";
11
+ import { budgetFromAddress as pf } from "./Budgets/Budget.js";
12
+ import { ManagedBudget as Af } from "./Budgets/ManagedBudget.js";
13
+ import { Deployable as yf } from "./Deployable/Deployable.js";
14
+ import { AllowListIncentive as Cf } from "./Incentives/AllowListIncentive.js";
15
+ import { CGDAIncentive as vf } from "./Incentives/CGDAIncentive.js";
16
+ import { ERC20Incentive as _f } from "./Incentives/ERC20Incentive.js";
17
+ import { incentiveFromAddress as Pf, ERC20VariableIncentive as If } from "./Incentives/Incentive.js";
18
+ import { PointsIncentive as Bf } from "./Incentives/PointsIncentive.js";
19
+ import { SignerValidator as Rf } from "./Validators/SignerValidator.js";
20
+ import { validatorFromAddress as Ff } from "./Validators/Validator.js";
21
+ import { DeployableUnknownOwnerProvidedError as Ef, BudgetMustAuthorizeBoostCore as j, NoContractAddressUponReceiptError as Df, BoostCoreNoIdentifierEmitted as Vf } from "./errors.js";
22
+ import { prepareBoostPayload as Lf } from "./utils.js";
23
+ import { simulateContract as $f, writeContract as xf } from "viem/actions";
24
+ import { parseAccount as Nf, getAddress as jf } from "viem/utils";
25
+ const Mf = "0x60806040526544364c5bb0006004556103e860055f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506103e8600560086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555034801561006e575f80fd5b506040516135683803806135688339818101604052810190610090919061029f565b61009f3361012660201b60201c565b8160015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050506102dd565b61013461020260201b60201c565b156101ac577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392780541561016e57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3506101ff565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b5f90565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6102338261020a565b9050919050565b5f61024482610229565b9050919050565b6102548161023a565b811461025e575f80fd5b50565b5f8151905061026f8161024b565b92915050565b61027e81610229565b8114610288575f80fd5b50565b5f8151905061029981610275565b92915050565b5f80604083850312156102b5576102b4610206565b5b5f6102c285828601610261565b92505060206102d38582860161028b565b9150509250929050565b61327e806102ea5f395ff3fe60806040526004361061014a575f3560e01c8063892b97f8116100b5578063d73792a91161006e578063d73792a9146103d0578063e21ff731146103fa578063eccc19a614610436578063f04e283e1461045e578063f2fde38b1461047a578063fee81cf4146104965761014a565b8063892b97f8146102e45780638da5cb5b1461030c5780638fe4f5231461033657806399d32fc414610352578063a92647dc1461037c578063b0e21e8a146103a65761014a565b806354d1f13d1161010757806354d1f13d146102365780635edb9eb014610240578063715018a61461026a578063730f9c57146102745780637b1039991461029057806384ae2bc6146102ba5761014a565b806313c8e2de1461014e578063256929621461018a5780632e75ab501461019457806339a51be5146101bc57806343bc42d3146101e657806346877b1a1461020e575b5f80fd5b348015610159575f80fd5b50610174600480360381019061016f91906122d2565b6104d2565b60405161018191906125c3565b60405180910390f35b6101926107ac565b005b34801561019f575f80fd5b506101ba60048036038101906101b591906122d2565b6107fd565b005b3480156101c7575f80fd5b506101d061080f565b6040516101dd91906125f2565b60405180910390f35b3480156101f1575f80fd5b5061020c60048036038101906102079190612635565b610834565b005b348015610219575f80fd5b50610234600480360381019061022f919061268a565b610867565b005b61023e6108b2565b005b34801561024b575f80fd5b506102546108eb565b60405161026191906126c4565b60405180910390f35b6102726108f6565b005b61028e6004803603810190610289919061273e565b610909565b005b34801561029b575f80fd5b506102a4610b9a565b6040516102b191906127f4565b60405180910390f35b3480156102c5575f80fd5b506102ce610bbf565b6040516102db919061281c565b60405180910390f35b3480156102ef575f80fd5b5061030a60048036038101906103059190612635565b610bd9565b005b348015610317575f80fd5b50610320610c0d565b60405161032d91906125f2565b60405180910390f35b610350600480360381019061034b9190612835565b610c35565b005b34801561035d575f80fd5b50610366610c4a565b60405161037391906126c4565b60405180910390f35b348015610387575f80fd5b50610390610c50565b60405161039d91906128d9565b60405180910390f35b3480156103b1575f80fd5b506103ba610c75565b6040516103c7919061281c565b60405180910390f35b3480156103db575f80fd5b506103e4610c8e565b6040516103f1919061281c565b60405180910390f35b348015610405575f80fd5b50610420600480360381019061041b91906128f2565b610c94565b60405161042d91906125c3565b60405180910390f35b348015610441575f80fd5b5061045c6004803603810190610457919061268a565b61164f565b005b6104786004803603810190610473919061268a565b61169a565b005b610494600480360381019061048f919061268a565b6116d8565b005b3480156104a1575f80fd5b506104bc60048036038101906104b7919061268a565b611701565b6040516104c991906126c4565b60405180910390f35b6104da612126565b5f82815481106104ed576104ec61293d565b5b905f5260205f209060080201604051806101200160405290815f82015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600482018054806020026020016040519081016040528092919081815260200182805480156106da57602002820191905f5260205f20905b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610691575b50505050508152602001600582015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016005820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160068201548152602001600782015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815250509050919050565b5f6107b561171a565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b610805611724565b8060048190555050565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61083c611724565b8060055f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050565b61086f611724565b8060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f8080549050905090565b6108fe611724565b6109075f61175b565b565b3068929eee149b4bd2126854036109275763ab143c065f526004601cfd5b3068929eee149b4bd21268555f8087815481106109475761094661293d565b5b905f5260205f20906008020190506004543410156109a2575f346004546040517f5c54305e0000000000000000000000000000000000000000000000000000000081526004016109999392919061296a565b60405180910390fd5b6109ac8186611821565b806001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663703b690088888588886040518663ffffffff1660e01b8152600401610a109594939291906129f9565b6020604051808303815f875af1158015610a2c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a509190612a7a565b610a86576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806004018681548110610a9c57610a9b61293d565b5b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb1757cf8386866040518463ffffffff1660e01b8152600401610b0093929190612aa5565b6020604051808303815f875af1158015610b1c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b409190612a7a565b610b85578184846040517f4139d81d000000000000000000000000000000000000000000000000000000008152600401610b7c93929190612aa5565b60405180910390fd5b503868929eee149b4bd2126855505050505050565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560089054906101000a900467ffffffffffffffff1681565b610be1611724565b80600560086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b610c43858585858533610909565b5050505050565b60045481565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055f9054906101000a900467ffffffffffffffff1681565b61271081565b610c9c612126565b335f73ffffffffffffffffffffffffffffffffffffffff1660025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614158015610d90575060025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fe9fbb80826040518263ffffffff1660e01b8152600401610d4f91906125f2565b602060405180830381865afa158015610d6a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8e9190612a7a565b155b15610dc7576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3068929eee149b4bd212685403610de55763ab143c065f526004601cfd5b3068929eee149b4bd21268555f610e3e85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f8201169050808301925050505050505061198f565b806020019051810190610e519190612f35565b9050610e5f815f0151611a28565b5f8060018160018154018082558091505003905f5260205f2090600802019050816101000151816007015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550815f0151816003015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508160a0015160055f9054906101000a900467ffffffffffffffff16610f309190612fa9565b816005015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508160c00151600560089054906101000a900467ffffffffffffffff16610f7f9190612fa9565b8160050160086101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508160e001518160060181905550610fe67fe67157950000000000000000000000000000000000000000000000000000000083602001516001611b03565b815f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110567fe2089f790000000000000000000000000000000000000000000000000000000083606001516001611b03565b816002015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110a88260800151835f0151611b25565b8160040190805190602001906110bf9291906121ec565b505f73ffffffffffffffffffffffffffffffffffffffff1682604001516020015173ffffffffffffffffffffffffffffffffffffffff16146111305761112b7f5912b89c0000000000000000000000000000000000000000000000000000000083604001516001611b03565b611219565b805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166301ffc9a77f5912b89c000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016111ab919061301e565b602060405180830381865afa1580156111c6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ea9190612a7a565b6111f4575f611218565b805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff165b5b816001015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16816007015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660015f805490506112de9190613037565b7f116812d3ad4507d72f2c428b63246d594ca055a1dc119394285504c23d1f34cd8460040180549050856001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16866002015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16876003015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051611383949392919061306a565b60405180910390a480604051806101200160405290815f82015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016004820180548060200260200160405190810160405280929190818152602001828054801561156d57602002820191905f5260205f20905b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311611524575b50505050508152602001600582015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016005820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160068201548152602001600782015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681525050935050503868929eee149b4bd21268555092915050565b611657611724565b8060025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6116a2611724565b63389a75e1600c52805f526020600c2080544211156116c857636f5e88185f526004601cfd5b5f8155506116d58161175b565b50565b6116e0611724565b8060601b6116f557637448fbae5f526004601cfd5b6116fe8161175b565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f6202a300905090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314611759576382b429005f526004601cfd5b565b611763611eef565b156117c8577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b821781555061181e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b5f600454031561198b575f60045490505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146118e7575f61271067ffffffffffffffff168460050160089054906101000a900467ffffffffffffffff1667ffffffffffffffff166004546118a291906130ad565b6118ac919061311b565b905080826118ba9190613037565b91506118e5818473ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b505b61193f6002826118f7919061311b565b846007015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b6119894760035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b505b5050565b6060815115611a235760405190506020810160048301805184518501811983525b80861015611a09576001860195508551601f1a806119f9576001870196508651601f1a5f198652607f81116119e757600181013887395b6001607f821601860195505050611a04565b808553600185019450505b6119b0565b81835260208501840385525f845260208401604052505050505b919050565b611a527fea5ad34e0000000000000000000000000000000000000000000000000000000082611f10565b8073ffffffffffffffffffffffffffffffffffffffff1663fe9fbb80336040518263ffffffff1660e01b8152600401611a8b91906125f2565b602060405180830381865afa158015611aa6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611aca9190612a7a565b611b00576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b5f611b12848460200151611f10565b611b1c8383612007565b90509392505050565b6060825167ffffffffffffffff811115611b4257611b41612ad9565b5b604051908082528060200260200182016040528015611b705781602001602082028036833780820191505090505b5090505f5b8351811015611ee857611bc67f5970a68900000000000000000000000000000000000000000000000000000000858381518110611bb557611bb461293d565b5b602002602001015160200151611f10565b838181518110611bd957611bd861293d565b5b60200260200101515f0151611c65577f5970a68900000000000000000000000000000000000000000000000000000000848281518110611c1c57611c1b61293d565b5b6020026020010151602001516040517fe1c44448000000000000000000000000000000000000000000000000000000008152600401611c5c92919061314b565b60405180910390fd5b611caa7f5970a68900000000000000000000000000000000000000000000000000000000858381518110611c9c57611c9b61293d565b5b60200260200101515f611b03565b828281518110611cbd57611cbc61293d565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f828281518110611d0b57611d0a61293d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16634e7165a2868481518110611d4157611d4061293d565b5b6020026020010151604001516040518263ffffffff1660e01b8152600401611d6991906131b4565b5f60405180830381865afa158015611d83573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190611dab91906131d4565b90505f815114611e3c578373ffffffffffffffffffffffffffffffffffffffff1663fa4ca9b1826040518263ffffffff1660e01b8152600401611dee91906131b4565b6020604051808303815f875af1158015611e0a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e2e9190612a7a565b611e3b57611e3a61321b565b5b5b828281518110611e4f57611e4e61293d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1663439fab91868481518110611e8557611e8461293d565b5b6020026020010151604001516040518263ffffffff1660e01b8152600401611ead91906131b4565b5f604051808303815f87803b158015611ec4575f80fd5b505af1158015611ed6573d5f803e3d5ffd5b50505050508080600101915050611b75565b5092915050565b5f90565b5f385f3884865af1611f0c5763b12d13eb5f526004601cfd5b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161480611fbf57508073ffffffffffffffffffffffffffffffffffffffff166301ffc9a7836040518263ffffffff1660e01b8152600401611f7e919061301e565b602060405180830381865afa158015611f99573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611fbd9190612a7a565b155b156120035781816040517fe1c44448000000000000000000000000000000000000000000000000000000008152600401611ffa92919061314b565b60405180910390fd5b5050565b5f825f015161201a57826020015161203e565b61203d836020015173ffffffffffffffffffffffffffffffffffffffff166120c3565b5b9050825f0151801561204d5750815b156120bd578073ffffffffffffffffffffffffffffffffffffffff1663439fab9184604001516040518263ffffffff1660e01b815260040161208f91906131b4565b5f604051808303815f87803b1580156120a6575f80fd5b505af11580156120b8573d5f803e3d5ffd5b505050505b92915050565b5f6120ce5f836120d5565b9050919050565b5f6c5af43d3d93803e602a57fd5bf36021528160145273602c3d8160093d39f33d3d3d3d363d3d37363d735f526035600c84f090508061211c5763301164255f526004601cfd5b5f60215292915050565b6040518061012001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff168152602001606081526020015f67ffffffffffffffff1681526020015f67ffffffffffffffff1681526020015f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b828054828255905f5260205f20908101928215612262579160200282015b82811115612261578251825f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509160200191906001019061220a565b5b50905061226f9190612273565b5090565b5b8082111561228a575f815f905550600101612274565b5090565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b6122b18161229f565b81146122bb575f80fd5b50565b5f813590506122cc816122a8565b92915050565b5f602082840312156122e7576122e6612297565b5b5f6122f4848285016122be565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f819050919050565b5f61233f61233a612335846122fd565b61231c565b6122fd565b9050919050565b5f61235082612325565b9050919050565b5f61236182612346565b9050919050565b61237181612357565b82525050565b5f61238182612346565b9050919050565b61239181612377565b82525050565b5f6123a182612346565b9050919050565b6123b181612397565b82525050565b5f6123c182612325565b9050919050565b5f6123d2826123b7565b9050919050565b6123e2816123c8565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f61241b82612346565b9050919050565b61242b81612411565b82525050565b5f61243c8383612422565b60208301905092915050565b5f602082019050919050565b5f61245e826123e8565b61246881856123f2565b935061247383612402565b805f5b838110156124a357815161248a8882612431565b975061249583612448565b925050600181019050612476565b5085935050505092915050565b5f67ffffffffffffffff82169050919050565b6124cc816124b0565b82525050565b6124db8161229f565b82525050565b5f6124eb826122fd565b9050919050565b6124fb816124e1565b82525050565b5f61012083015f8301516125175f860182612368565b50602083015161252a6020860182612388565b50604083015161253d60408601826123a8565b50606083015161255060608601826123d9565b50608083015184820360808601526125688282612454565b91505060a083015161257d60a08601826124c3565b5060c083015161259060c08601826124c3565b5060e08301516125a360e08601826124d2565b506101008301516125b86101008601826124f2565b508091505092915050565b5f6020820190508181035f8301526125db8184612501565b905092915050565b6125ec816124e1565b82525050565b5f6020820190506126055f8301846125e3565b92915050565b612614816124b0565b811461261e575f80fd5b50565b5f8135905061262f8161260b565b92915050565b5f6020828403121561264a57612649612297565b5b5f61265784828501612621565b91505092915050565b612669816124e1565b8114612673575f80fd5b50565b5f8135905061268481612660565b92915050565b5f6020828403121561269f5761269e612297565b5b5f6126ac84828501612676565b91505092915050565b6126be8161229f565b82525050565b5f6020820190506126d75f8301846126b5565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f8401126126fe576126fd6126dd565b5b8235905067ffffffffffffffff81111561271b5761271a6126e1565b5b602083019150836001820283011115612737576127366126e5565b5b9250929050565b5f805f805f8060a0878903121561275857612757612297565b5b5f61276589828a016122be565b965050602061277689828a016122be565b955050604061278789828a01612676565b945050606087013567ffffffffffffffff8111156127a8576127a761229b565b5b6127b489828a016126e9565b935093505060806127c789828a01612676565b9150509295509295509295565b5f6127de82612346565b9050919050565b6127ee816127d4565b82525050565b5f6020820190506128075f8301846127e5565b92915050565b612816816124b0565b82525050565b5f60208201905061282f5f83018461280d565b92915050565b5f805f805f6080868803121561284e5761284d612297565b5b5f61285b888289016122be565b955050602061286c888289016122be565b945050604061287d88828901612676565b935050606086013567ffffffffffffffff81111561289e5761289d61229b565b5b6128aa888289016126e9565b92509250509295509295909350565b5f6128c382612346565b9050919050565b6128d3816128b9565b82525050565b5f6020820190506128ec5f8301846128ca565b92915050565b5f806020838503121561290857612907612297565b5b5f83013567ffffffffffffffff8111156129255761292461229b565b5b612931858286016126e9565b92509250509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60608201905061297d5f8301866125e3565b61298a60208301856126b5565b61299760408301846126b5565b949350505050565b5f82825260208201905092915050565b828183375f83830152505050565b5f601f19601f8301169050919050565b5f6129d8838561299f565b93506129e58385846129af565b6129ee836129bd565b840190509392505050565b5f608082019050612a0c5f8301886126b5565b612a1960208301876126b5565b612a2660408301866125e3565b8181036060830152612a398184866129cd565b90509695505050505050565b5f8115159050919050565b612a5981612a45565b8114612a63575f80fd5b50565b5f81519050612a7481612a50565b92915050565b5f60208284031215612a8f57612a8e612297565b5b5f612a9c84828501612a66565b91505092915050565b5f604082019050612ab85f8301866125e3565b8181036020830152612acb8184866129cd565b9050949350505050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612b0f826129bd565b810181811067ffffffffffffffff82111715612b2e57612b2d612ad9565b5b80604052505050565b5f612b4061228e565b9050612b4c8282612b06565b919050565b5f80fd5b5f612b5f826122fd565b9050919050565b5f612b7082612b55565b9050919050565b612b8081612b66565b8114612b8a575f80fd5b50565b5f81519050612b9b81612b77565b92915050565b5f81519050612baf81612660565b92915050565b5f80fd5b5f67ffffffffffffffff821115612bd357612bd2612ad9565b5b612bdc826129bd565b9050602081019050919050565b8281835e5f83830152505050565b5f612c09612c0484612bb9565b612b37565b905082815260208101848484011115612c2557612c24612bb5565b5b612c30848285612be9565b509392505050565b5f82601f830112612c4c57612c4b6126dd565b5b8151612c5c848260208601612bf7565b91505092915050565b5f60608284031215612c7a57612c79612ad5565b5b612c846060612b37565b90505f612c9384828501612a66565b5f830152506020612ca684828501612ba1565b602083015250604082015167ffffffffffffffff811115612cca57612cc9612b51565b5b612cd684828501612c38565b60408301525092915050565b5f67ffffffffffffffff821115612cfc57612cfb612ad9565b5b602082029050602081019050919050565b5f612d1f612d1a84612ce2565b612b37565b90508083825260208201905060208402830185811115612d4257612d416126e5565b5b835b81811015612d8957805167ffffffffffffffff811115612d6757612d666126dd565b5b808601612d748982612c65565b85526020850194505050602081019050612d44565b5050509392505050565b5f82601f830112612da757612da66126dd565b5b8151612db7848260208601612d0d565b91505092915050565b5f81519050612dce8161260b565b92915050565b5f81519050612de2816122a8565b92915050565b5f6101208284031215612dfe57612dfd612ad5565b5b612e09610120612b37565b90505f612e1884828501612b8d565b5f83015250602082015167ffffffffffffffff811115612e3b57612e3a612b51565b5b612e4784828501612c65565b602083015250604082015167ffffffffffffffff811115612e6b57612e6a612b51565b5b612e7784828501612c65565b604083015250606082015167ffffffffffffffff811115612e9b57612e9a612b51565b5b612ea784828501612c65565b606083015250608082015167ffffffffffffffff811115612ecb57612eca612b51565b5b612ed784828501612d93565b60808301525060a0612eeb84828501612dc0565b60a08301525060c0612eff84828501612dc0565b60c08301525060e0612f1384828501612dd4565b60e083015250610100612f2884828501612ba1565b6101008301525092915050565b5f60208284031215612f4a57612f49612297565b5b5f82015167ffffffffffffffff811115612f6757612f6661229b565b5b612f7384828501612de8565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612fb3826124b0565b9150612fbe836124b0565b9250828201905067ffffffffffffffff811115612fde57612fdd612f7c565b5b92915050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61301881612fe4565b82525050565b5f6020820190506130315f83018461300f565b92915050565b5f6130418261229f565b915061304c8361229f565b925082820390508181111561306457613063612f7c565b5b92915050565b5f60808201905061307d5f8301876126b5565b61308a60208301866125e3565b61309760408301856125e3565b6130a460608301846125e3565b95945050505050565b5f6130b78261229f565b91506130c28361229f565b92508282026130d08161229f565b915082820484148315176130e7576130e6612f7c565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6131258261229f565b91506131308361229f565b9250826131405761313f6130ee565b5b828204905092915050565b5f60408201905061315e5f83018561300f565b61316b60208301846125e3565b9392505050565b5f81519050919050565b5f61318682613172565b613190818561299f565b93506131a0818560208601612be9565b6131a9816129bd565b840191505092915050565b5f6020820190508181035f8301526131cc818461317c565b905092915050565b5f602082840312156131e9576131e8612297565b5b5f82015167ffffffffffffffff8111156132065761320561229b565b5b61321284828501612c38565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffdfea2646970667358221220fb22934e0d9f7a8e32d07cd1f2621ea36204627afface45e5bc80aab6122bb7d64736f6c634300081a0033";
26
+ function S(b) {
27
+ const e = b.state.current, f = b.state.connections.get(e), a = f == null ? void 0 : f.accounts, c = a == null ? void 0 : a[0], t = b.chains.find((n) => n.id === (f == null ? void 0 : f.chainId)), s = b.state.status;
28
+ switch (s) {
29
+ case "connected":
30
+ return {
31
+ address: c,
32
+ addresses: a,
33
+ chain: t,
34
+ chainId: f == null ? void 0 : f.chainId,
35
+ connector: f == null ? void 0 : f.connector,
36
+ isConnected: !0,
37
+ isConnecting: !1,
38
+ isDisconnected: !1,
39
+ isReconnecting: !1,
40
+ status: s
41
+ };
42
+ case "reconnecting":
43
+ return {
44
+ address: c,
45
+ addresses: a,
46
+ chain: t,
47
+ chainId: f == null ? void 0 : f.chainId,
48
+ connector: f == null ? void 0 : f.connector,
49
+ isConnected: !!c,
50
+ isConnecting: !1,
51
+ isDisconnected: !1,
52
+ isReconnecting: !0,
53
+ status: s
54
+ };
55
+ case "connecting":
56
+ return {
57
+ address: c,
58
+ addresses: a,
59
+ chain: t,
60
+ chainId: f == null ? void 0 : f.chainId,
61
+ connector: f == null ? void 0 : f.connector,
62
+ isConnected: !1,
63
+ isConnecting: !0,
64
+ isDisconnected: !1,
65
+ isReconnecting: !1,
66
+ status: s
67
+ };
68
+ case "disconnected":
69
+ return {
70
+ address: void 0,
71
+ addresses: void 0,
72
+ chain: void 0,
73
+ chainId: void 0,
74
+ connector: void 0,
75
+ isConnected: !1,
76
+ isConnecting: !1,
77
+ isDisconnected: !0,
78
+ isReconnecting: !1,
79
+ status: s
80
+ };
81
+ }
82
+ }
83
+ function Sf(b) {
84
+ return b.state.chainId;
85
+ }
86
+ function O(b, e, f) {
87
+ const a = b[e.name];
88
+ if (typeof a == "function")
89
+ return a;
90
+ const c = b[f];
91
+ return typeof c == "function" ? c : (t) => e(b, t);
92
+ }
93
+ const Of = "2.13.0", qf = () => `@wagmi/core@${Of}`;
94
+ var q = function(b, e, f, a) {
95
+ if (f === "a" && !a)
96
+ throw new TypeError("Private accessor was defined without a getter");
97
+ if (typeof e == "function" ? b !== e || !a : !e.has(b))
98
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
99
+ return f === "m" ? a : f === "a" ? a.call(b) : a ? a.value : e.get(b);
100
+ }, R, z;
101
+ class A extends Error {
102
+ get docsBaseUrl() {
103
+ return "https://wagmi.sh/core";
104
+ }
105
+ get version() {
106
+ return qf();
107
+ }
108
+ constructor(e, f = {}) {
109
+ var t;
110
+ super(), R.add(this), Object.defineProperty(this, "details", {
111
+ enumerable: !0,
112
+ configurable: !0,
113
+ writable: !0,
114
+ value: void 0
115
+ }), Object.defineProperty(this, "docsPath", {
116
+ enumerable: !0,
117
+ configurable: !0,
118
+ writable: !0,
119
+ value: void 0
120
+ }), Object.defineProperty(this, "metaMessages", {
121
+ enumerable: !0,
122
+ configurable: !0,
123
+ writable: !0,
124
+ value: void 0
125
+ }), Object.defineProperty(this, "shortMessage", {
126
+ enumerable: !0,
127
+ configurable: !0,
128
+ writable: !0,
129
+ value: void 0
130
+ }), Object.defineProperty(this, "name", {
131
+ enumerable: !0,
132
+ configurable: !0,
133
+ writable: !0,
134
+ value: "WagmiCoreError"
135
+ });
136
+ const a = f.cause instanceof A ? f.cause.details : (t = f.cause) != null && t.message ? f.cause.message : f.details, c = f.cause instanceof A && f.cause.docsPath || f.docsPath;
137
+ this.message = [
138
+ e || "An error occurred.",
139
+ "",
140
+ ...f.metaMessages ? [...f.metaMessages, ""] : [],
141
+ ...c ? [
142
+ `Docs: ${this.docsBaseUrl}${c}.html${f.docsSlug ? `#${f.docsSlug}` : ""}`
143
+ ] : [],
144
+ ...a ? [`Details: ${a}`] : [],
145
+ `Version: ${this.version}`
146
+ ].join(`
147
+ `), f.cause && (this.cause = f.cause), this.details = a, this.docsPath = c, this.metaMessages = f.metaMessages, this.shortMessage = e;
148
+ }
149
+ walk(e) {
150
+ return q(this, R, "m", z).call(this, this, e);
151
+ }
152
+ }
153
+ R = /* @__PURE__ */ new WeakSet(), z = function b(e, f) {
154
+ return f != null && f(e) ? e : e.cause ? q(this, R, "m", b).call(this, e.cause, f) : e;
155
+ };
156
+ class zf extends A {
157
+ constructor() {
158
+ super("Connector not connected."), Object.defineProperty(this, "name", {
159
+ enumerable: !0,
160
+ configurable: !0,
161
+ writable: !0,
162
+ value: "ConnectorNotConnectedError"
163
+ });
164
+ }
165
+ }
166
+ class Tf extends A {
167
+ constructor({ address: e, connector: f }) {
168
+ super(`Account "${e}" not found for connector "${f.name}".`), Object.defineProperty(this, "name", {
169
+ enumerable: !0,
170
+ configurable: !0,
171
+ writable: !0,
172
+ value: "ConnectorAccountNotFoundError"
173
+ });
174
+ }
175
+ }
176
+ class Uf extends A {
177
+ constructor({ connectionChainId: e, connectorChainId: f }) {
178
+ super(`The current chain of the connector (id: ${f}) does not match the connection's chain (id: ${e}).`, {
179
+ metaMessages: [
180
+ `Current Chain ID: ${f}`,
181
+ `Expected Chain ID: ${e}`
182
+ ]
183
+ }), Object.defineProperty(this, "name", {
184
+ enumerable: !0,
185
+ configurable: !0,
186
+ writable: !0,
187
+ value: "ConnectorChainMismatchError"
188
+ });
189
+ }
190
+ }
191
+ async function T(b, e = {}) {
192
+ let f;
193
+ if (e.connector) {
194
+ const { connector: d } = e, [l, g] = await Promise.all([
195
+ d.getAccounts(),
196
+ d.getChainId()
197
+ ]);
198
+ f = {
199
+ accounts: l,
200
+ chainId: g,
201
+ connector: d
202
+ };
203
+ } else
204
+ f = b.state.connections.get(b.state.current);
205
+ if (!f)
206
+ throw new zf();
207
+ const a = e.chainId ?? f.chainId, c = await f.connector.getChainId();
208
+ if (c !== f.chainId)
209
+ throw new Uf({
210
+ connectionChainId: f.chainId,
211
+ connectorChainId: c
212
+ });
213
+ const t = f.connector;
214
+ if (t.getClient)
215
+ return t.getClient({ chainId: a });
216
+ const s = Nf(e.account ?? f.accounts[0]);
217
+ s.address = jf(s.address);
218
+ const n = b.chains.find((d) => d.id === a), r = await f.connector.getProvider({ chainId: a });
219
+ if (e.account && !f.accounts.some((d) => d.toLowerCase() === s.address.toLowerCase()))
220
+ throw new Tf({
221
+ address: s.address,
222
+ connector: t
223
+ });
224
+ return nf({
225
+ account: s,
226
+ chain: n,
227
+ name: "Connector Client",
228
+ transport: (d) => rf(r)({ ...d, retryCount: 0 })
229
+ });
230
+ }
231
+ async function kf(b, e) {
232
+ const { abi: f, chainId: a, connector: c, ...t } = e;
233
+ let s;
234
+ e.account ? s = e.account : s = (await T(b, {
235
+ chainId: a,
236
+ connector: c
237
+ })).account;
238
+ const n = b.getClient({ chainId: a }), r = O(n, $f, "simulateContract"), { result: d, request: l } = await r({ ...t, abi: f, account: s });
239
+ return {
240
+ chainId: n.chain.id,
241
+ result: d,
242
+ request: { __mode: "prepared", ...l, chainId: a }
243
+ };
244
+ }
245
+ async function M(b, e) {
246
+ const { account: f, chainId: a, connector: c, __mode: t, ...s } = e;
247
+ let n;
248
+ typeof f == "object" && f.type === "local" ? n = b.getClient({ chainId: a }) : n = await T(b, { account: f, chainId: a, connector: c });
249
+ const { connector: r } = S(b);
250
+ let d;
251
+ if (t === "prepared" || r != null && r.supportsSimulation)
252
+ d = s;
253
+ else {
254
+ const { request: y } = await kf(b, {
255
+ ...s,
256
+ account: f,
257
+ chainId: a
258
+ });
259
+ d = y;
260
+ }
261
+ return await O(n, xf, "writeContract")({
262
+ ...d,
263
+ ...f ? { account: f } : {},
264
+ chain: a ? { id: a } : null
265
+ });
266
+ }
267
+ function Gf(b) {
268
+ return b.address !== void 0 && typeof b.address == "object" ? (e, f) => {
269
+ var s;
270
+ const a = Sf(e), c = S(e);
271
+ let t;
272
+ return f.chainId ? t = f.chainId : f.account && f.account === c.address || f.account === void 0 ? t = c.chainId : t = a, M(e, {
273
+ ...f,
274
+ ...b.functionName ? { functionName: b.functionName } : {},
275
+ address: t ? (s = b.address) == null ? void 0 : s[t] : void 0,
276
+ abi: b.abi
277
+ });
278
+ } : (e, f) => M(e, {
279
+ ...f,
280
+ ...b.address ? { address: b.address } : {},
281
+ ...b.functionName ? { functionName: b.functionName } : {},
282
+ abi: b.abi
283
+ });
284
+ }
285
+ const Hf = "0xF4905b327904E5797840fd8cD7F300001a34122f";
286
+ function Wf(b) {
287
+ return b.address;
288
+ }
289
+ function Jf(b) {
290
+ return b.registryAddress && b.protocolFeeReceiver;
291
+ }
292
+ class A0 extends yf {
293
+ /**
294
+ * Creates an instance of BoostCore.
295
+ *
296
+ * @constructor
297
+ * @param {BoostCoreConfig} param0
298
+ * @param {Config} param0.config
299
+ * @param {?Account} [param0.account]
300
+ * @param {({ address?: Address; } | { registryAddress: Address; protocolFeeReceiver: Address; })} param0....options
301
+ */
302
+ constructor({ config: e, account: f, ...a }) {
303
+ Wf(a) && a.address ? super({ account: f, config: e }, a.address) : Jf(a) ? super({ account: f, config: e }, [
304
+ a.registryAddress,
305
+ a.protocolFeeReceiver
306
+ ]) : super({ account: f, config: e }, Hf), this.abi = B;
307
+ }
308
+ /**
309
+ * Create a new Boost.
310
+ *
311
+ * @public
312
+ * @async
313
+ * @param {CreateBoostPayload} _boostPayload
314
+ * @param {?DeployableOptions} [_options]
315
+ * @returns {Boost}
316
+ */
317
+ async createBoost(e, f) {
318
+ var L, $;
319
+ const a = this.assertValidAddress(), [c, t] = this.validateDeploymentConfig(
320
+ e,
321
+ f
322
+ );
323
+ let {
324
+ budget: s,
325
+ action: n,
326
+ validator: r,
327
+ allowList: d,
328
+ incentives: l,
329
+ protocolFee: g = 0n,
330
+ referralFee: y = 0n,
331
+ maxParticipants: F = 0n,
332
+ owner: m
333
+ } = c;
334
+ const E = Gf({
335
+ abi: B,
336
+ functionName: "createBoost",
337
+ address: this.address
338
+ });
339
+ if (!m && (m = ((L = this._account) == null ? void 0 : L.address) || df(t.config).address || w, m === w))
340
+ throw new Ef();
341
+ let D = w;
342
+ if (s.address) {
343
+ if (D = s.address, !await s.isAuthorized(a))
344
+ throw new j(a);
345
+ } else {
346
+ if (!((($ = s.payload) == null ? void 0 : $.authorized) || []).includes(a))
347
+ throw new j(a);
348
+ const u = await s.deployRaw(void 0, t), p = await x(t.config, {
349
+ hash: u
350
+ });
351
+ if (!p.contractAddress)
352
+ throw new Df(p);
353
+ D = p.contractAddress;
354
+ }
355
+ let C = {
356
+ instance: w,
357
+ isBase: !0,
358
+ parameters: i
359
+ };
360
+ if (n.address) {
361
+ const o = n.address === n.base || n.isBase;
362
+ C = {
363
+ isBase: o,
364
+ instance: n.address,
365
+ parameters: o ? n.buildParameters(void 0, t).args.at(0) || i : i
366
+ };
367
+ } else
368
+ C.parameters = n.buildParameters(void 0, t).args.at(0) || i, C.instance = n.base;
369
+ let v = {
370
+ instance: w,
371
+ isBase: !0,
372
+ parameters: i
373
+ };
374
+ if (r.address) {
375
+ const o = r.address === r.base || r.isBase;
376
+ v = {
377
+ isBase: o,
378
+ instance: r.address,
379
+ parameters: o ? r.buildParameters(
380
+ {
381
+ signers: [m],
382
+ validatorCaller: a
383
+ },
384
+ t
385
+ ).args.at(0) || i : i
386
+ };
387
+ } else
388
+ v.parameters = r.buildParameters(
389
+ {
390
+ signers: [m],
391
+ validatorCaller: a
392
+ },
393
+ t
394
+ ).args.at(0) || i, v.instance = r.base;
395
+ let _ = {
396
+ instance: w,
397
+ isBase: !0,
398
+ parameters: i
399
+ };
400
+ if (d.address) {
401
+ const o = d.address === d.base || d.isBase;
402
+ _ = {
403
+ isBase: o,
404
+ instance: d.address,
405
+ parameters: o ? i : i
406
+ };
407
+ } else
408
+ _.parameters = d.buildParameters(void 0, t).args.at(0) || i, _.instance = d.base;
409
+ let P = l.map(() => ({
410
+ instance: w,
411
+ isBase: !0,
412
+ parameters: i
413
+ }));
414
+ for (let o = 0; o < l.length; o++) {
415
+ const u = l.at(o);
416
+ if (u.address) {
417
+ const p = u.address === u.base || u.isBase;
418
+ P[o] = {
419
+ isBase: p,
420
+ instance: u.address,
421
+ parameters: p ? u.buildParameters(void 0, t).args.at(0) || i : i
422
+ };
423
+ } else
424
+ P[o].parameters = u.buildParameters(void 0, t).args.at(0) || i, P[o].instance = u.base;
425
+ }
426
+ const U = {
427
+ budget: D,
428
+ action: C,
429
+ validator: v,
430
+ allowList: _,
431
+ incentives: P,
432
+ protocolFee: g,
433
+ referralFee: y,
434
+ maxParticipants: F,
435
+ owner: m
436
+ }, k = await E(t.config, {
437
+ args: [Lf(U)],
438
+ ...this.optionallyAttachAccount(t.account)
439
+ }), G = await x(t.config, {
440
+ hash: k
441
+ }), I = of({
442
+ abi: B,
443
+ eventName: "BoostCreated",
444
+ logs: G.logs
445
+ }).at(0);
446
+ let V = 0n;
447
+ if (!I)
448
+ throw new Vf();
449
+ V = I == null ? void 0 : I.args.boostIndex;
450
+ const h = await this.readBoost(V);
451
+ return new N({
452
+ id: V,
453
+ budget: s.at(h.budget),
454
+ action: n.at(h.action),
455
+ validator: r.at(h.validator),
456
+ allowList: d.at(h.allowList),
457
+ incentives: l.map(
458
+ (o, u) => o.at(h.incentives.at(u))
459
+ ),
460
+ protocolFee: h.protocolFee,
461
+ referralFee: h.referralFee,
462
+ maxParticipants: h.maxParticipants,
463
+ owner: h.owner
464
+ });
465
+ }
466
+ /**
467
+ * Claims one incentive from a given `Boost` by `boostId` and `incentiveId`
468
+ *
469
+ * @public
470
+ * @async
471
+ * @param {bigint} boostId
472
+ * @param {bigint} incentiveId
473
+ * @param {Address} address
474
+ * @param {Hex} data
475
+ * @param {?WriteParams<typeof boostCoreAbi, 'claimIncentive'>} [params]
476
+ * @returns {unknown}
477
+ */
478
+ async claimIncentive(e, f, a, c, t) {
479
+ return this.awaitResult(
480
+ this.claimIncentiveRaw(e, f, a, c, t)
481
+ );
482
+ }
483
+ /**
484
+ * Claim an incentive for a Boost
485
+ *
486
+ * @public
487
+ * @async
488
+ * @param {bigint} boostId - The ID of the Boost
489
+ * @param {bigint} incentiveId - The ID of the Incentive
490
+ * @param {Address} address - The address of the referrer (if any)
491
+ * @param {Hex} data- The data for the claim
492
+ * @param {?WriteParams<typeof boostCoreAbi, 'claimIncentive'>} [params]
493
+ * @returns {unknown}
494
+ */
495
+ async claimIncentiveRaw(e, f, a, c, t) {
496
+ const { request: s, result: n } = await H(
497
+ this._config,
498
+ {
499
+ address: this.assertValidAddress(),
500
+ args: [e, f, a, c],
501
+ ...this.optionallyAttachAccount(),
502
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
503
+ ...t
504
+ }
505
+ );
506
+ return { hash: await W(this._config, s), result: n };
507
+ }
508
+ /**
509
+ * Get a Boost by index, will return the raw on chain representation of a Boost.
510
+ *
511
+ * @public
512
+ * @async
513
+ * @param {bigint} id
514
+ * @param {?ReadParams<typeof boostCoreAbi, 'getBoost'>} [params]
515
+ * @returns {unknown}
516
+ */
517
+ async readBoost(e, f) {
518
+ return J(this._config, {
519
+ address: this.assertValidAddress(),
520
+ args: [e],
521
+ ...this.optionallyAttachAccount(),
522
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
523
+ ...f
524
+ });
525
+ }
526
+ /**
527
+ * Get a Boost by index, will return a new {@link Boost} with correct target implementations instantiated, ie `(await core.getBoost(0n)).allowList instanceof SimpleAllowList` vs `SimpleDenyList`
528
+ *
529
+ * @public
530
+ * @async
531
+ * @param {(string | bigint)} _id
532
+ * @param {?ReadParams<typeof boostCoreAbi, 'getBoost'>} [params]
533
+ * @returns {unknown}
534
+ */
535
+ async getBoost(e, f) {
536
+ let a;
537
+ typeof e == "string" ? a = BigInt(e) : a = e;
538
+ const {
539
+ protocolFee: c,
540
+ referralFee: t,
541
+ maxParticipants: s,
542
+ owner: n,
543
+ ...r
544
+ } = await this.readBoost(a, f), d = {
545
+ config: this._config,
546
+ account: this._account
547
+ }, [l, g, y, F, m] = await Promise.all([
548
+ uf(d, r.action),
549
+ pf(d, r.budget),
550
+ Ff(d, r.validator),
551
+ hf(d, r.allowList),
552
+ Promise.all(
553
+ r.incentives.map(
554
+ (E) => Pf(d, E)
555
+ )
556
+ )
557
+ ]);
558
+ return new N({
559
+ id: a,
560
+ action: l,
561
+ budget: g,
562
+ validator: y,
563
+ allowList: F,
564
+ incentives: m,
565
+ protocolFee: c,
566
+ referralFee: t,
567
+ maxParticipants: s,
568
+ owner: n
569
+ });
570
+ }
571
+ /**
572
+ * Retrieve the total number of deployed Boosts
573
+ *
574
+ * @public
575
+ * @async
576
+ * @param {?ReadParams<typeof boostCoreAbi, 'getBoostCount'>} [params]
577
+ * @returns {Promise<bigint>}
578
+ */
579
+ async getBoostCount(e) {
580
+ return K(this._config, {
581
+ address: this.assertValidAddress(),
582
+ args: [],
583
+ ...this.optionallyAttachAccount(),
584
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
585
+ ...e
586
+ });
587
+ }
588
+ /**
589
+ * Checks if an address is authorized
590
+ *
591
+ * @public
592
+ * @async
593
+ * @param {Address} address
594
+ * @param {?ReadParams<typeof boostCoreAbi, 'createBoostAuth'> &
595
+ * ReadParams<typeof iAuthAbi, 'isAuthorized'>} [params]
596
+ * @returns {Promise<boolean>}
597
+ */
598
+ async isAuthorized(e, f) {
599
+ const a = await this.createBoostAuth();
600
+ return Q(this._config, {
601
+ address: a,
602
+ args: [e],
603
+ ...this.optionallyAttachAccount(),
604
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
605
+ ...f
606
+ });
607
+ }
608
+ /**
609
+ * Retrieve the address of the current creation auth provider.
610
+ *
611
+ * @public
612
+ * @async
613
+ * @param {?ReadParams<typeof boostCoreAbi, 'createBoostAuth'>} [params]
614
+ * @returns {unknown}
615
+ */
616
+ async createBoostAuth(e) {
617
+ return X(this._config, {
618
+ address: this.assertValidAddress(),
619
+ args: [],
620
+ ...this.optionallyAttachAccount(),
621
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
622
+ ...e
623
+ });
624
+ }
625
+ /**
626
+ * Replace the current auth scheme.
627
+ *
628
+ * @public
629
+ * @async
630
+ * @param {Auth} auth
631
+ * @param {?WriteParams<typeof boostCoreAbi, 'setCreateBoostAuth'>} [params]
632
+ * @returns {unknown}
633
+ */
634
+ async setCreateBoostAuth(e, f) {
635
+ return this.awaitResult(
636
+ this.setCreateBoostAuthRaw(e.assertValidAddress(), {
637
+ ...f
638
+ })
639
+ );
640
+ }
641
+ /**
642
+ * Set the createBoostAuth address
643
+ *
644
+ * @public
645
+ * @async
646
+ * @param {Address} address
647
+ * @param {?WriteParams<typeof boostCoreAbi, 'setCreateBoostAuth'>} [params]
648
+ * @returns {unknown}
649
+ */
650
+ async setCreateBoostAuthRaw(e, f) {
651
+ const { request: a, result: c } = await Y(
652
+ this._config,
653
+ {
654
+ address: this.assertValidAddress(),
655
+ args: [e],
656
+ ...this.optionallyAttachAccount(),
657
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
658
+ ...f
659
+ }
660
+ );
661
+ return { hash: await Z(this._config, a), result: c };
662
+ }
663
+ /**
664
+ * Get the protocol fee.
665
+ *
666
+ * @public
667
+ * @async
668
+ * @param {?ReadParams<typeof boostCoreAbi, 'protocolFee'>} [params]
669
+ * @returns {unknown}
670
+ */
671
+ async protocolFee(e) {
672
+ return ff(this._config, {
673
+ address: this.assertValidAddress(),
674
+ args: [],
675
+ ...this.optionallyAttachAccount(),
676
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
677
+ ...e
678
+ });
679
+ }
680
+ /**
681
+ * Get the protocol fee receiver.
682
+ *
683
+ * @public
684
+ * @async
685
+ * @param {?ReadParams<typeof boostCoreAbi, 'protocolFeeReceiver'>} [params]
686
+ * @returns {unknown}
687
+ */
688
+ async protocolFeeReceiver(e) {
689
+ return ef(this._config, {
690
+ address: this.assertValidAddress(),
691
+ args: [],
692
+ ...this.optionallyAttachAccount(),
693
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
694
+ ...e
695
+ });
696
+ }
697
+ /**
698
+ * Set the protocol fee receiver address. This function is only callable by the owner.
699
+ *
700
+ * @public
701
+ * @async
702
+ * @param {Address} address
703
+ * @param {?WriteParams<typeof boostCoreAbi, 'setProtocolFeeReceiver'>} [params]
704
+ * @returns {unknown}
705
+ */
706
+ async setProcolFeeReceiver(e, f) {
707
+ return this.awaitResult(
708
+ this.setProcolFeeReceiverRaw(e, {
709
+ ...f
710
+ })
711
+ );
712
+ }
713
+ /**
714
+ * Set the protocol fee receiver address. This function is only callable by the owner.
715
+ *
716
+ * @public
717
+ * @async
718
+ * @param {Address} address
719
+ * @param {?WriteParams<typeof boostCoreAbi, 'setProtocolFeeReceiver'>} [params]
720
+ * @returns {unknown}
721
+ */
722
+ async setProcolFeeReceiverRaw(e, f) {
723
+ const { request: a, result: c } = await af(
724
+ this._config,
725
+ {
726
+ address: this.assertValidAddress(),
727
+ args: [e],
728
+ ...this.optionallyAttachAccount(),
729
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
730
+ ...f
731
+ }
732
+ );
733
+ return { hash: await bf(
734
+ this._config,
735
+ a
736
+ ), result: c };
737
+ }
738
+ /**
739
+ * Get the claim fee.
740
+ *
741
+ * @public
742
+ * @async
743
+ * @param {?ReadParams<typeof boostCoreAbi, 'claimFee'>} [params]
744
+ * @returns {unknown}
745
+ */
746
+ async claimFee(e) {
747
+ return tf(this._config, {
748
+ address: this.assertValidAddress(),
749
+ args: [],
750
+ ...this.optionallyAttachAccount(),
751
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
752
+ ...e
753
+ });
754
+ }
755
+ /**
756
+ * Sets the claim fee.
757
+ *
758
+ * @public
759
+ * @async
760
+ * @param {bigint} claimFee
761
+ * @param {?WriteParams<typeof boostCoreAbi, 'setClaimFee'>} [params]
762
+ * @returns {unknown}
763
+ */
764
+ async setClaimFee(e, f) {
765
+ return this.awaitResult(this.setClaimFeeRaw(e, f));
766
+ }
767
+ /**
768
+ * Sets the claim fee.
769
+ *
770
+ * @public
771
+ * @async
772
+ * @param {bigint} claimFee
773
+ * @param {?WriteParams<typeof boostCoreAbi, 'setClaimFee'>} [params]
774
+ * @returns {unknown}
775
+ */
776
+ async setClaimFeeRaw(e, f) {
777
+ const { request: a, result: c } = await cf(
778
+ this._config,
779
+ {
780
+ address: this.assertValidAddress(),
781
+ args: [e],
782
+ ...this.optionallyAttachAccount(),
783
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
784
+ ...f
785
+ }
786
+ );
787
+ return { hash: await sf(this._config, a), result: c };
788
+ }
789
+ /**
790
+ * Bound {@link PassthroughAuth} constructor that reuses the same configuration as the Boost Core instance.
791
+ *
792
+ * @example
793
+ * ```ts
794
+ * const auth = core.PassthroughAuth('0x') // is roughly equivalent to
795
+ * const auth = new PassthroughAuth({ config: core._config, account: core._account }, '0x')
796
+ * ```
797
+ * @param {DeployablePayloadOrAddress<{}>} options
798
+ * @param {?boolean} [isBase]
799
+ * @returns {PassthroughAuth}
800
+ */
801
+ PassthroughAuth(e) {
802
+ return new wf(
803
+ { config: this._config, account: this._account },
804
+ e
805
+ );
806
+ }
807
+ // /**
808
+ // * Bound {@link ContractAction} constructor that reuses the same configuration as the Boost Core instance.
809
+ // *
810
+ // * @example
811
+ // * ```ts
812
+ // * const action = core.ContractAction('0x') // is roughly equivalent to
813
+ // * const action = new ContractAction({ config: core._config, account: core._account }, '0x')
814
+ // * ```
815
+ // * @param {DeployablePayloadOrAddress<ContractActionPayload>} options
816
+ // * @param {?boolean} [isBase]
817
+ // * @returns {ContractAction}
818
+ // */
819
+ // ContractAction(
820
+ // options: DeployablePayloadOrAddress<ContractActionPayload>,
821
+ // isBase?: boolean,
822
+ // ) {
823
+ // return new ContractAction(
824
+ // { config: this._config, account: this._account },
825
+ // options,
826
+ // isBase,
827
+ // );
828
+ // }
829
+ /**
830
+ * Bound {@link EventAction} constructor that reuses the same configuration as the Boost Core instance.
831
+ *
832
+ * @example
833
+ * ```ts
834
+ * const action = core.EventAction('0x') // is roughly equivalent to
835
+ * const action = new EventAction({ config: core._config, account: core._account }, '0x')
836
+ */
837
+ EventAction(e, f) {
838
+ return new lf(
839
+ { config: this._config, account: this._account },
840
+ e,
841
+ f
842
+ );
843
+ }
844
+ // /**
845
+ // * Bound {@link ERC721MintAction} constructor that reuses the same configuration as the Boost Core instance.
846
+ // *
847
+ // * @example
848
+ // * ```ts
849
+ // * const action = core.ERC721MintAction('0x') // is roughly equivalent to
850
+ // * const action = new ERC721MintAction({ config: core._config, account: core._account }, '0x')
851
+ // * ```
852
+ // * @param {DeployablePayloadOrAddress<ERC721MintActionPayload>} options
853
+ // * @param {?boolean} [isBase]
854
+ // * @returns {ERC721MintAction}
855
+ // */
856
+ // ERC721MintAction(
857
+ // options: DeployablePayloadOrAddress<ERC721MintActionPayload>,
858
+ // isBase?: boolean,
859
+ // ) {
860
+ // return new ERC721MintAction(
861
+ // { config: this._config, account: this._account },
862
+ // options,
863
+ // isBase,
864
+ // );
865
+ // }
866
+ /**
867
+ * Bound {@link SimpleAllowList} constructor that reuses the same configuration as the Boost Core instance.
868
+ *
869
+ * @example
870
+ * ```ts
871
+ * const list = core.SimpleAllowList('0x') // is roughly equivalent to
872
+ * const list = new SimpleAllowList({ config: core._config, account: core._account }, '0x')
873
+ * ```
874
+ * @param {DeployablePayloadOrAddress<SimpleAllowListPayload>} options
875
+ * @param {?boolean} [isBase]
876
+ * @returns {SimpleAllowList}
877
+ */
878
+ SimpleAllowList(e, f) {
879
+ return new mf(
880
+ { config: this._config, account: this._account },
881
+ e,
882
+ f
883
+ );
884
+ }
885
+ /**
886
+ * Bound {@link SimpleDenyList} constructor that reuses the same configuration as the Boost Core instance.
887
+ *
888
+ * @example
889
+ * ```ts
890
+ * const list = core.SimpleDenyList('0x') // is roughly equivalent to
891
+ * const list = new SimpleDenyList({ config: core._config, account: core._account }, '0x')
892
+ * ```
893
+ * @param {DeployablePayloadOrAddress<SimpleDenyListPayload>} options
894
+ * @param {?boolean} [isBase]
895
+ * @returns {SimpleDenyList}
896
+ */
897
+ SimpleDenyList(e, f) {
898
+ return new gf(
899
+ { config: this._config, account: this._account },
900
+ e,
901
+ f
902
+ );
903
+ }
904
+ // /**
905
+ // * Bound {@link SimpleBudget} constructor that reuses the same configuration as the Boost Core instance.
906
+ // *
907
+ // * @example
908
+ // * ```ts
909
+ // * const budget = core.SimpleBudget('0x') // is roughly equivalent to
910
+ // * const budget = new SimpleBudget({ config: core._config, account: core._account }, '0x')
911
+ // * ```
912
+ // * @param {DeployablePayloadOrAddress<SimpleBudgetPayload>} options
913
+ // * @returns {SimpleBudget}
914
+ // */
915
+ // SimpleBudget(options: DeployablePayloadOrAddress<SimpleBudgetPayload>) {
916
+ // return new SimpleBudget(
917
+ // { config: this._config, account: this._account },
918
+ // options,
919
+ // );
920
+ // }
921
+ /**
922
+ * Bound {@link ManagedBudget} constructor that reuses the same configuration as the Boost Core instance.
923
+ *
924
+ * @example
925
+ * ```ts
926
+ * const budget = core.ManagedBudget('0x') // is roughly equivalent to
927
+ * const budget = new ManagedBudget({ config: core._config, account: core._account }, '0x')
928
+ * ```
929
+ * @param {DeployablePayloadOrAddress<ManagedBudgetPayload>} options
930
+ * @returns {ManagedBudget}
931
+ */
932
+ ManagedBudget(e) {
933
+ return new Af(
934
+ { config: this._config, account: this._account },
935
+ e
936
+ );
937
+ }
938
+ // /**
939
+ // * Bound {@link VestingBudget} constructor that reuses the same configuration as the Boost Core instance.
940
+ // *
941
+ // * @example
942
+ // * ```ts
943
+ // * const budget = core.VestingBudget('0x') // is roughly equivalent to
944
+ // * const budget = new VestingBudget({ config: core._config, account: core._account }, '0x')
945
+ // * ```
946
+ // * @param {DeployablePayloadOrAddress<VestingBudgetPayload>} options
947
+ // * @returns {VestingBudget}
948
+ // */
949
+ // VestingBudget(options: DeployablePayloadOrAddress<VestingBudgetPayload>) {
950
+ // return new VestingBudget(
951
+ // { config: this._config, account: this._account },
952
+ // options,
953
+ // );
954
+ // }
955
+ /**
956
+ * Bound {@link AllowListIncentive} constructor that reuses the same configuration as the Boost Core instance.
957
+ *
958
+ * @example
959
+ * ```ts
960
+ * const incentive = core.AllowListIncentive({ ... }) // is roughly equivalent to
961
+ * const incentive = new AllowListIncentive({ config: core._config, account: core._account }, { ... })
962
+ * ```
963
+ * @param {DeployablePayloadOrAddress<VestingBudgetPayload>} options
964
+ * @returns {VestingBudget}
965
+ */
966
+ AllowListIncentive(e) {
967
+ return new Cf(
968
+ { config: this._config, account: this._account },
969
+ e
970
+ );
971
+ }
972
+ /**
973
+ * Bound {@link CGDAIncentive} constructor that reuses the same configuration as the Boost Core instance.
974
+ *
975
+ * @example
976
+ * ```ts
977
+ * const incentive = core.CGDAIncentive({ ... }) // is roughly equivalent to
978
+ * const incentive = new CGDAIncentive({ config: core._config, account: core._account }, { ... })
979
+ * ```
980
+ * @param {CGDAIncentivePayload} options
981
+ * @returns {CGDAIncentive}
982
+ */
983
+ CGDAIncentive(e) {
984
+ return new vf(
985
+ { config: this._config, account: this._account },
986
+ e
987
+ );
988
+ }
989
+ /**
990
+ * Bound {@link ERC20Incentive} constructor that reuses the same configuration as the Boost Core instance.
991
+ *
992
+ * @example
993
+ * ```ts
994
+ * const incentive = core.ERC20Incentive({ ... }) // is roughly equivalent to
995
+ * const incentive = new ERC20Incentive({ config: core._config, account: core._account }, { ... })
996
+ * ```
997
+ * @param {ERC20IncentivePayload} options
998
+ * @returns {ERC20Incentive}
999
+ */
1000
+ ERC20Incentive(e) {
1001
+ return new _f(
1002
+ { config: this._config, account: this._account },
1003
+ e
1004
+ );
1005
+ }
1006
+ // /**
1007
+ // * Temporarily disabled until low level ABI encoding bugs are resolved
1008
+ // * Bound {@link ERC1155Incentive} constructor that reuses the same configuration as the Boost Core instance.
1009
+ // *
1010
+ // * @experimental
1011
+ // * @example
1012
+ // * ```ts
1013
+ // * const incentive = core.ERC1155Incentive({ ... }) // is roughly equivalent to
1014
+ // * const incentive = new ERC1155Incentive({ config: core._config, account: core._account }, { ... })
1015
+ // * ```
1016
+ // * @param {ERC1155IncentivePayload} options
1017
+ // * @returns {ERC1155Incentive}
1018
+ // */
1019
+ // ERC1155Incentive(options: ERC1155IncentivePayload) {
1020
+ // return new ERC1155Incentive(
1021
+ // { config: this._config, account: this._account },
1022
+ // options,
1023
+ // );
1024
+ // }
1025
+ /**
1026
+ * Bound {@link PointsIncentive} constructor that reuses the same configuration as the Boost Core instance.
1027
+ *
1028
+ * @example
1029
+ * ```ts
1030
+ * const incentive = core.PointsIncentive({ ... }) // is roughly equivalent to
1031
+ * const incentive = new PointsIncentive({ config: core._config, account: core._account }, { ... })
1032
+ * ```
1033
+ * @param {PointsIncentivePayload} options
1034
+ * @returns {PointsIncentive}
1035
+ */
1036
+ PointsIncentive(e) {
1037
+ return new Bf(
1038
+ { config: this._config, account: this._account },
1039
+ e
1040
+ );
1041
+ }
1042
+ /**
1043
+ * Bound {@link SignerValidator} constructor that reuses the same configuration as the Boost Core instance.
1044
+ *
1045
+ * @example
1046
+ * ```ts
1047
+ * const validator = core.SignerValidator({ ... }) // is roughly equivalent to
1048
+ * const validator = new SignerValidator({ config: core._config, account: core._account }, { ... })
1049
+ * ```
1050
+ * @param {DeployablePayloadOrAddress<SignerValidatorPayload>} options
1051
+ * @param {?boolean} [isBase]
1052
+ * @returns {SignerValidator}
1053
+ */
1054
+ SignerValidator(e, f) {
1055
+ return new Rf(
1056
+ { config: this._config, account: this._account },
1057
+ e,
1058
+ f
1059
+ );
1060
+ }
1061
+ /**
1062
+ * Bound {@link ERC20VariableIncentive} constructor that reuses the same configuration as the Boost Core instance.
1063
+ *
1064
+ * @example
1065
+ * ```ts
1066
+ * const validator = core.ERC20VariableIncentive({ ... }) // is roughly equivalent to
1067
+ * const validator = new ERC20VariableIncentive({ config: core._config, account: core._account }, { ... })
1068
+ * ```
1069
+ * @param {DeployablePayloadOrAddress<ERC20VariableIncentivePayload>} options
1070
+ * @param {?boolean} [isBase]
1071
+ * @returns {ERC20VariableIncentive}
1072
+ */
1073
+ ERC20VariableIncentive(e, f) {
1074
+ return new If(
1075
+ { config: this._config, account: this._account },
1076
+ e,
1077
+ f
1078
+ );
1079
+ }
1080
+ /**
1081
+ * @inheritdoc
1082
+ *
1083
+ * @public
1084
+ * @param {?[Address, Address]} [_payload]
1085
+ * @param {?DeployableOptions} [_options]
1086
+ * @returns {GenericDeployableParams}
1087
+ */
1088
+ buildParameters(e, f) {
1089
+ const [a, c] = this.validateDeploymentConfig(
1090
+ e,
1091
+ f
1092
+ );
1093
+ return {
1094
+ abi: B,
1095
+ bytecode: Mf,
1096
+ args: a,
1097
+ ...this.optionallyAttachAccount(c.account)
1098
+ };
1099
+ }
1100
+ }
1101
+ export {
1102
+ Hf as BOOST_CORE_ADDRESS,
1103
+ A0 as BoostCore,
1104
+ B as boostCoreAbi
1105
+ };