@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.
- package/LICENSE +674 -0
- package/README.md +7 -0
- package/dist/Actions/Action.cjs +1 -0
- package/dist/Actions/Action.d.ts +31 -0
- package/dist/Actions/Action.d.ts.map +1 -0
- package/dist/Actions/Action.js +27 -0
- package/dist/Actions/ContractAction.d.ts +327 -0
- package/dist/Actions/ContractAction.d.ts.map +1 -0
- package/dist/Actions/ERC721MintAction.d.ts +486 -0
- package/dist/Actions/ERC721MintAction.d.ts.map +1 -0
- package/dist/Actions/EventAction.cjs +1 -0
- package/dist/Actions/EventAction.d.ts +433 -0
- package/dist/Actions/EventAction.d.ts.map +1 -0
- package/dist/Actions/EventAction.js +211 -0
- package/dist/AllowLists/AllowList.cjs +1 -0
- package/dist/AllowLists/AllowList.d.ts +33 -0
- package/dist/AllowLists/AllowList.d.ts.map +1 -0
- package/dist/AllowLists/AllowList.js +28 -0
- package/dist/AllowLists/SimpleAllowList.cjs +1 -0
- package/dist/AllowLists/SimpleAllowList.d.ts +452 -0
- package/dist/AllowLists/SimpleAllowList.d.ts.map +1 -0
- package/dist/AllowLists/SimpleAllowList.js +138 -0
- package/dist/AllowLists/SimpleDenyList.cjs +1 -0
- package/dist/AllowLists/SimpleDenyList.d.ts +306 -0
- package/dist/AllowLists/SimpleDenyList.d.ts.map +1 -0
- package/dist/AllowLists/SimpleDenyList.js +202 -0
- package/dist/Auth/Auth.cjs +1 -0
- package/dist/Auth/Auth.d.ts +10 -0
- package/dist/Auth/Auth.d.ts.map +1 -0
- package/dist/Auth/Auth.js +4 -0
- package/dist/Auth/PassthroughAuth.cjs +1 -0
- package/dist/Auth/PassthroughAuth.d.ts +51 -0
- package/dist/Auth/PassthroughAuth.d.ts.map +1 -0
- package/dist/Auth/PassthroughAuth.js +38 -0
- package/dist/Boost.cjs +1 -0
- package/dist/Boost.d.ts +142 -0
- package/dist/Boost.d.ts.map +1 -0
- package/dist/Boost.js +15 -0
- package/dist/BoostCore.cjs +2 -0
- package/dist/BoostCore.d.ts +460 -0
- package/dist/BoostCore.d.ts.map +1 -0
- package/dist/BoostCore.js +1105 -0
- package/dist/BoostRegistry.cjs +1 -0
- package/dist/BoostRegistry.d.ts +229 -0
- package/dist/BoostRegistry.d.ts.map +1 -0
- package/dist/BoostRegistry.js +250 -0
- package/dist/Budgets/Budget.cjs +1 -0
- package/dist/Budgets/Budget.d.ts +31 -0
- package/dist/Budgets/Budget.d.ts.map +1 -0
- package/dist/Budgets/Budget.js +27 -0
- package/dist/Budgets/ManagedBudget.cjs +1 -0
- package/dist/Budgets/ManagedBudget.d.ts +1065 -0
- package/dist/Budgets/ManagedBudget.d.ts.map +1 -0
- package/dist/Budgets/ManagedBudget.js +498 -0
- package/dist/Budgets/SimpleBudget.d.ts +793 -0
- package/dist/Budgets/SimpleBudget.d.ts.map +1 -0
- package/dist/Budgets/VestingBudget.d.ts +726 -0
- package/dist/Budgets/VestingBudget.d.ts.map +1 -0
- package/dist/Deployable/Contract.cjs +1 -0
- package/dist/Deployable/Contract.d.ts +125 -0
- package/dist/Deployable/Contract.d.ts.map +1 -0
- package/dist/Deployable/Contract.js +149 -0
- package/dist/Deployable/Deployable.cjs +1 -0
- package/dist/Deployable/Deployable.d.ts +155 -0
- package/dist/Deployable/Deployable.d.ts.map +1 -0
- package/dist/Deployable/Deployable.js +124 -0
- package/dist/Deployable/DeployableTarget.cjs +1 -0
- package/dist/Deployable/DeployableTarget.d.ts +115 -0
- package/dist/Deployable/DeployableTarget.d.ts.map +1 -0
- package/dist/Deployable/DeployableTarget.js +128 -0
- package/dist/Incentives/AllowListIncentive.cjs +1 -0
- package/dist/Incentives/AllowListIncentive.d.ts +483 -0
- package/dist/Incentives/AllowListIncentive.d.ts.map +1 -0
- package/dist/Incentives/AllowListIncentive.js +188 -0
- package/dist/Incentives/CGDAIncentive.cjs +1 -0
- package/dist/Incentives/CGDAIncentive.d.ts +560 -0
- package/dist/Incentives/CGDAIncentive.d.ts.map +1 -0
- package/dist/Incentives/CGDAIncentive.js +249 -0
- package/dist/Incentives/ERC1155Incentive.d.ts +652 -0
- package/dist/Incentives/ERC1155Incentive.d.ts.map +1 -0
- package/dist/Incentives/ERC20Incentive.cjs +1 -0
- package/dist/Incentives/ERC20Incentive.d.ts +622 -0
- package/dist/Incentives/ERC20Incentive.d.ts.map +1 -0
- package/dist/Incentives/ERC20Incentive.js +292 -0
- package/dist/Incentives/ERC20VariableIncentive.d.ts +545 -0
- package/dist/Incentives/ERC20VariableIncentive.d.ts.map +1 -0
- package/dist/Incentives/Incentive.cjs +1 -0
- package/dist/Incentives/Incentive.d.ts +39 -0
- package/dist/Incentives/Incentive.d.ts.map +1 -0
- package/dist/Incentives/Incentive.js +280 -0
- package/dist/Incentives/PointsIncentive.cjs +1 -0
- package/dist/Incentives/PointsIncentive.d.ts +615 -0
- package/dist/Incentives/PointsIncentive.d.ts.map +1 -0
- package/dist/Incentives/PointsIncentive.js +197 -0
- package/dist/Validators/SignerValidator.cjs +1 -0
- package/dist/Validators/SignerValidator.d.ts +452 -0
- package/dist/Validators/SignerValidator.d.ts.map +1 -0
- package/dist/Validators/SignerValidator.js +167 -0
- package/dist/Validators/Validator.cjs +1 -0
- package/dist/Validators/Validator.d.ts +31 -0
- package/dist/Validators/Validator.d.ts.map +1 -0
- package/dist/Validators/Validator.js +25 -0
- package/dist/errors.cjs +1 -0
- package/dist/errors.d.ts +257 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +161 -0
- package/dist/generated-BaaleHW-.cjs +2 -0
- package/dist/generated-x_abr3Yv.js +6228 -0
- package/dist/index.cjs +1 -0
- package/dist/index.d.ts +29 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1355 -0
- package/dist/utils.cjs +1 -0
- package/dist/utils.d.ts +1454 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +643 -0
- package/package.json +197 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ManagedBudget.d.ts","sourceRoot":"","sources":["../../src/Budgets/ManagedBudget.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,498 @@
|
|
|
1
|
+
import { p as i, i as h, _ as l, k as u, L as w, n as A, D as g, l as y, P as p, y as R, Q as _, q as m, s as T, u as V, v as q, x as v, O as k, M as D, C, w as P, H as x, A as z, B } from "../generated-x_abr3Yv.js";
|
|
2
|
+
import { getAccount as E } from "@wagmi/core";
|
|
3
|
+
import { zeroAddress as M } from "viem";
|
|
4
|
+
import { DeployableTarget as N } from "../Deployable/DeployableTarget.js";
|
|
5
|
+
import { DeployableUnknownOwnerProvidedError as O, UnknownTransferPayloadSupplied as F } from "../errors.js";
|
|
6
|
+
import { RegistryType as G, prepareManagedBudgetPayload as U, prepareFungibleTransfer as H, prepareERC1155Transfer as L } from "../utils.js";
|
|
7
|
+
const Q = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f602c608760201b60201c565b90508054600181161560455763f92ee8a95f526004601cfd5b8160c01c808260011c146082578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b6134c9806100bd5f395ff3fe608060405260043610610207575f3560e01c806361400c9911610117578063ec87621c1161009f578063f8724aba1161006e578063f8724aba1461076e578063f9a802c3146107aa578063fa4ca9b1146107e6578063fe9fbb8014610822578063fee81cf41461085e5761020e565b8063ec87621c146106d0578063f04e283e146106fa578063f23a6e6114610716578063f2fde38b146107525761020e565b806380fd6005116100e657806380fd6005146105de5780638da5cb5b14610606578063bc197c8114610630578063d2514e841461066c578063e6670829146106a85761020e565b806361400c9914610532578063715018a61461056e57806375b238fc14610578578063774c33ab146105a25761020e565b80634359d28a1161019a5780634a4ee7b1116101695780634a4ee7b114610464578063514e62fc1461048057806354d1f13d146104bc578063578bcf35146104c65780635aef467a146105025761020e565b80634359d28a1461039c578063439fab91146103c4578063451cc191146103ec578063474f5a44146104285761020e565b80631cd64df4116101d65780631cd64df4146102f0578063256929621461032c57806328d6183b146103365780632de94807146103605761020e565b806301ffc9a71461024057806310098ad51461027c578063183a4f6e146102b85780631c10893f146102d45761020e565b3661020e57005b6040517fd623472500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b34801561024b575f80fd5b50610266600480360381019061026191906124b2565b61089a565b60405161027391906124f7565b60405180910390f35b348015610287575f80fd5b506102a2600480360381019061029d919061256a565b6109e3565b6040516102af91906125ad565b60405180910390f35b6102d260048036038101906102cd91906125f0565b610a4e565b005b6102ee60048036038101906102e9919061261b565b610a5b565b005b3480156102fb575f80fd5b506103166004803603810190610311919061261b565b610a71565b60405161032391906124f7565b60405180910390f35b610334610a87565b005b348015610341575f80fd5b5061034a610ad8565b6040516103579190612668565b60405180910390f35b34801561036b575f80fd5b506103866004803603810190610381919061256a565b610aff565b60405161039391906125ad565b60405180910390f35b3480156103a7575f80fd5b506103c260048036038101906103bd9190612737565b610b18565b005b3480156103cf575f80fd5b506103ea60048036038101906103e5919061280a565b610c26565b005b3480156103f7575f80fd5b50610412600480360381019061040d919061280a565b610d1e565b60405161041f91906125ad565b60405180910390f35b348015610433575f80fd5b5061044e6004803603810190610449919061280a565b610d25565b60405161045b91906124f7565b60405180910390f35b61047e6004803603810190610479919061261b565b610f0f565b005b34801561048b575f80fd5b506104a660048036038101906104a1919061261b565b610f25565b6040516104b391906124f7565b60405180910390f35b6104c4610f3c565b005b3480156104d1575f80fd5b506104ec60048036038101906104e7919061256a565b610f75565b6040516104f991906125ad565b60405180910390f35b61051c6004803603810190610517919061280a565b610fba565b60405161052991906124f7565b60405180910390f35b34801561053d575f80fd5b50610558600480360381019061055391906128aa565b61132a565b60405161056591906124f7565b60405180910390f35b61057661138e565b005b348015610583575f80fd5b5061058c6113a1565b60405161059991906125ad565b60405180910390f35b3480156105ad575f80fd5b506105c860048036038101906105c3919061261b565b6113a6565b6040516105d591906125ad565b60405180910390f35b3480156105e9575f80fd5b5061060460048036038101906105ff919061294a565b6113fc565b005b348015610611575f80fd5b5061061a6114b2565b60405161062791906129d7565b60405180910390f35b34801561063b575f80fd5b50610656600480360381019061065191906129f0565b6114da565b6040516106639190612668565b60405180910390f35b348015610677575f80fd5b50610692600480360381019061068d919061256a565b6114f1565b60405161069f91906125ad565b60405180910390f35b3480156106b3575f80fd5b506106ce60048036038101906106c9919061294a565b611549565b005b3480156106db575f80fd5b506106e46115ff565b6040516106f191906125ad565b60405180910390f35b610714600480360381019061070f919061256a565b611604565b005b348015610721575f80fd5b5061073c60048036038101906107379190612ac7565b611642565b6040516107499190612668565b60405180910390f35b61076c6004803603810190610767919061256a565b611657565b005b348015610779575f80fd5b50610794600480360381019061078f919061261b565b611680565b6040516107a191906125ad565b60405180910390f35b3480156107b5575f80fd5b506107d060048036038101906107cb919061261b565b611702565b6040516107dd91906125ad565b60405180910390f35b3480156107f1575f80fd5b5061080c6004803603810190610807919061280a565b6117db565b60405161081991906124f7565b60405180910390f35b34801561082d575f80fd5b506108486004803603810190610843919061256a565b611a57565b60405161085591906124f7565b60405180910390f35b348015610869575f80fd5b50610884600480360381019061087f919061256a565b611aaa565b60405161089191906125ad565b60405180910390f35b5f7fa0109882000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061096457507f4e2312e0000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806109cc57507f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806109dc57506109db82611ac3565b5b9050919050565b5f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614610a4557610a40308373ffffffffffffffffffffffffffffffffffffffff16611b3c90919063ffffffff16565b610a47565b475b9050919050565b610a583382611b6f565b50565b610a63611b7e565b610a6d8282611bb5565b5050565b5f8182610a7d85610aff565b1614905092915050565b5f610a90611bc5565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b5f7fa010988200000000000000000000000000000000000000000000000000000000905090565b5f638b78c6d8600c52815f526020600c20549050919050565b6002610b2381611bcf565b828290508585905014610b62576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b85859050811015610c1e575f848483818110610b8357610b82612b5d565b5b9050602002016020810190610b989190612bb4565b90506001151581151503610bdd57610bd8878784818110610bbc57610bbb612b5d565b5b9050602002016020810190610bd1919061256a565b6001611bb5565b610c10565b610c0f878784818110610bf357610bf2612b5d565b5b9050602002016020810190610c08919061256a565b6001611b6f565b5b508080600101915050610b64565b505050505050565b5f610c2f611c04565b90508054600382558015610c615760018160011c14303b10610c585763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f8383810190610c729190612e88565b9050610c80815f0151611c2d565b5f5b816020015151811015610ce257610cd582602001518281518110610ca957610ca8612b5d565b5b602002602001015183604001518381518110610cc857610cc7612b5d565b5b6020026020010151611d03565b8080600101915050610c82565b50508015610d19576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f92915050565b5f6002610d3181611bcf565b5f8484810190610d419190613033565b90505f6002811115610d5657610d5561307a565b5b815f01516002811115610d6c57610d6b61307a565b5b1480610d9f575060016002811115610d8757610d8661307a565b5b815f01516002811115610d9d57610d9c61307a565b5b145b15610df8575f8160600151806020019051810190610dbd91906130f4565b9050610df2826020015183604001515f845f015114610ddf57835f0151610ded565b610dec85602001516109e3565b5b611d44565b50610f02565b600280811115610e0b57610e0a61307a565b5b815f01516002811115610e2157610e2061307a565b5b03610ef8575f8160600151806020019051810190610e3f9190613218565b9050610ef282602001518360400151835f01515f856020015114610e67578460200151610ee8565b856020015173ffffffffffffffffffffffffffffffffffffffff1662fdd58e30875f01516040518363ffffffff1660e01b8152600401610ea892919061325f565b602060405180830381865afa158015610ec3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ee79190613286565b5b8560400151611f5c565b50610f01565b5f925050610f08565b5b60019250505b5092915050565b610f17611b7e565b610f218282611b6f565b5050565b5f8082610f3185610aff565b161415905092915050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b5f808383810190610fcb9190613033565b90505f6002811115610fe057610fdf61307a565b5b815f01516002811115610ff657610ff561307a565b5b0361106c575f816060015180602001905181019061101491906130f4565b9050805f01513414611066578160200151815f01516040517fcece04c500000000000000000000000000000000000000000000000000000000815260040161105d92919061325f565b60405180910390fd5b5061131e565b600160028111156110805761107f61307a565b5b815f015160028111156110965761109561307a565b5b03611171575f81606001518060200190518101906110b491906130f4565b90506110ee826040015130835f0151856020015173ffffffffffffffffffffffffffffffffffffffff16612188909392919063ffffffff16565b805f015161111f30846020015173ffffffffffffffffffffffffffffffffffffffff16611b3c90919063ffffffff16565b101561116b578160200151815f01516040517fcece04c500000000000000000000000000000000000000000000000000000000815260040161116292919061325f565b60405180910390fd5b5061131d565b6002808111156111845761118361307a565b5b815f0151600281111561119a5761119961307a565b5b03611313575f81606001518060200190518101906111b89190613218565b9050816020015173ffffffffffffffffffffffffffffffffffffffff1663f242432a836040015130845f0151856020015186604001516040518663ffffffff1660e01b815260040161120e959493929190613303565b5f604051808303815f87803b158015611225575f80fd5b505af1158015611237573d5f803e3d5ffd5b505050508060200151826020015173ffffffffffffffffffffffffffffffffffffffff1662fdd58e30845f01516040518363ffffffff1660e01b815260040161128192919061325f565b602060405180830381865afa15801561129c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112c09190613286565b101561130d57816020015181602001516040517fcece04c500000000000000000000000000000000000000000000000000000000815260040161130492919061325f565b60405180910390fd5b5061131c565b5f915050611324565b5b5b60019150505b92915050565b5f805f90505b838390508110156113825761136884848381811061135157611350612b5d565b5b90506020028101906113639190613367565b6117db565b611375575f915050611388565b8080600101915050611330565b50600190505b92915050565b611396611b7e565b61139f5f6121e2565b565b600281565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f2054905092915050565b600261140781611bcf565b828290508585905014611446576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b858590508110156114aa5761149d86868381811061146957611468612b5d565b5b905060200201602081019061147e919061256a565b85858481811061149157611490612b5d565b5b90506020020135611b6f565b8080600101915050611448565b505050505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b5f63bc197c8160e01b905098975050505050505050565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611538836109e3565b61154291906133f6565b9050919050565b600261155481611bcf565b828290508585905014611593576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b858590508110156115f7576115ea8686838181106115b6576115b5612b5d565b5b90506020020160208101906115cb919061256a565b8585848181106115de576115dd612b5d565b5b90506020020135611bb5565b8080600101915050611595565b505050505050565b600181565b61160c611b7e565b63389a75e1600c52805f526020600c20805442111561163257636f5e88185f526004601cfd5b5f81555061163f816121e2565b50565b5f63f23a6e6160e01b90509695505050505050565b61165f611b7e565b8060601b61167457637448fbae5f526004601cfd5b61167d816121e2565b50565b5f8273ffffffffffffffffffffffffffffffffffffffff1662fdd58e30846040518363ffffffff1660e01b81526004016116bb92919061325f565b602060405180830381865afa1580156116d6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116fa9190613286565b905092915050565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8381526020019081526020015f20548373ffffffffffffffffffffffffffffffffffffffff1662fdd58e30856040518363ffffffff1660e01b815260040161178a92919061325f565b602060405180830381865afa1580156117a5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117c99190613286565b6117d391906133f6565b905092915050565b5f60016002176117ea81611bcf565b5f84848101906117fa9190613033565b9050600160028111156118105761180f61307a565b5b815f015160028111156118265761182561307a565b5b148061185857505f60028111156118405761183f61307a565b5b815f015160028111156118565761185561307a565b5b145b156118f8575f816060015180602001905181019061187691906130f4565b90505f61188683602001516109e3565b905080825f015111156118db57826020015181835f01516040517f5c54305e0000000000000000000000000000000000000000000000000000000081526004016118d293929190613429565b60405180910390fd5b6118f183602001518460400151845f0151611d44565b5050611a4a565b60028081111561190b5761190a61307a565b5b815f015160028111156119215761192061307a565b5b03611a40575f816060015180602001905181019061193f9190613218565b90505f826020015173ffffffffffffffffffffffffffffffffffffffff1662fdd58e30845f01516040518363ffffffff1660e01b815260040161198392919061325f565b602060405180830381865afa15801561199e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119c29190613286565b90508082602001511115611a195782602001518183602001516040517f5c54305e000000000000000000000000000000000000000000000000000000008152600401611a1093929190613429565b60405180910390fd5b611a3983602001518460400151845f015185602001518660400151611f5c565b5050611a49565b5f925050611a50565b5b60019250505b5092915050565b5f8173ffffffffffffffffffffffffffffffffffffffff16611a776114b2565b73ffffffffffffffffffffffffffffffffffffffff161480611aa35750611aa2826002600117610f25565b5b9050919050565b5f63389a75e1600c52815f526020600c20549050919050565b5f7fea5ad34e000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611b355750611b34826122a8565b5b9050919050565b5f816014526f70a082310000000000000000000000005f5260208060246010865afa601f3d111660205102905092915050565b611b7a82825f612321565b5050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314611bb3576382b429005f526004601cfd5b565b611bc182826001612321565b5050565b5f6202a300905090565b638b78c6d819543314611c0157638b78c6d8600c52335f52806020600c205416611c00576382b429005f526004601cfd5b5b50565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b611c35612379565b15611cad577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927805415611c6f57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a350611d00565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b638b78c6d8600c52815f52806020600c205580600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a35050565b3068929eee149b4bd212685403611d625763ab143c065f526004601cfd5b3068929eee149b4bd21268555f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611de2578282826040517fbf182be8000000000000000000000000000000000000000000000000000000008152600401611dd99392919061345e565b60405180910390fd5b611deb836109e3565b811115611e3b5782611dfc846109e3565b826040517f5c54305e000000000000000000000000000000000000000000000000000000008152600401611e3293929190613429565b60405180910390fd5b805f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254611e8691906133f6565b925050819055505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611ecf57611eca828261237d565b611efb565b611efa82828573ffffffffffffffffffffffffffffffffffffffff1661239a9092919063ffffffff16565b5b8273ffffffffffffffffffffffffffffffffffffffff167fad4a9acf26d8bba7a8cf1a41160d59be042ee554578e256c98d2ab74cdd435428383604051611f4392919061325f565b60405180910390a23868929eee149b4bd2126855505050565b3068929eee149b4bd212685403611f7a5763ab143c065f526004601cfd5b3068929eee149b4bd21268555f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611ffa578484836040517fbf182be8000000000000000000000000000000000000000000000000000000008152600401611ff19392919061345e565b60405180910390fd5b6120048584611680565b82111561205557846120168685611680565b836040517f5c54305e00000000000000000000000000000000000000000000000000000000815260040161204c93929190613429565b60405180910390fd5b8160015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8581526020019081526020015f205f8282546120b091906133f6565b925050819055508473ffffffffffffffffffffffffffffffffffffffff1663f242432a30868686866040518663ffffffff1660e01b81526004016120f8959493929190613303565b5f604051808303815f87803b15801561210f575f80fd5b505af1158015612121573d5f803e3d5ffd5b505050508473ffffffffffffffffffffffffffffffffffffffff167fad4a9acf26d8bba7a8cf1a41160d59be042ee554578e256c98d2ab74cdd43542858460405161216d92919061325f565b60405180910390a23868929eee149b4bd21268555050505050565b60405181606052826040528360601b602c526f23b872dd000000000000000000000000600c5260205f6064601c5f895af13d1560015f511417166121d357637939f4245f526004601cfd5b5f606052806040525050505050565b6121ea612379565b1561224f577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b82178155506122a5565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b5f7f6ab67a0d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061231a5750612319826123e3565b5b9050919050565b638b78c6d8600c52825f526020600c2080548381178361234357848216821890505b80835580600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a3505050505050565b5f90565b5f385f3884865af16123965763b12d13eb5f526004601cfd5b5050565b81601452806034526fa9059cbb0000000000000000000000005f5260205f604460105f875af13d1560015f511417166123da576390b8ec185f526004601cfd5b5f603452505050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6124918161245d565b811461249b575f80fd5b50565b5f813590506124ac81612488565b92915050565b5f602082840312156124c7576124c6612455565b5b5f6124d48482850161249e565b91505092915050565b5f8115159050919050565b6124f1816124dd565b82525050565b5f60208201905061250a5f8301846124e8565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61253982612510565b9050919050565b6125498161252f565b8114612553575f80fd5b50565b5f8135905061256481612540565b92915050565b5f6020828403121561257f5761257e612455565b5b5f61258c84828501612556565b91505092915050565b5f819050919050565b6125a781612595565b82525050565b5f6020820190506125c05f83018461259e565b92915050565b6125cf81612595565b81146125d9575f80fd5b50565b5f813590506125ea816125c6565b92915050565b5f6020828403121561260557612604612455565b5b5f612612848285016125dc565b91505092915050565b5f806040838503121561263157612630612455565b5b5f61263e85828601612556565b925050602061264f858286016125dc565b9150509250929050565b6126628161245d565b82525050565b5f60208201905061267b5f830184612659565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f8401126126a2576126a1612681565b5b8235905067ffffffffffffffff8111156126bf576126be612685565b5b6020830191508360208202830111156126db576126da612689565b5b9250929050565b5f8083601f8401126126f7576126f6612681565b5b8235905067ffffffffffffffff81111561271457612713612685565b5b6020830191508360208202830111156127305761272f612689565b5b9250929050565b5f805f806040858703121561274f5761274e612455565b5b5f85013567ffffffffffffffff81111561276c5761276b612459565b5b6127788782880161268d565b9450945050602085013567ffffffffffffffff81111561279b5761279a612459565b5b6127a7878288016126e2565b925092505092959194509250565b5f8083601f8401126127ca576127c9612681565b5b8235905067ffffffffffffffff8111156127e7576127e6612685565b5b60208301915083600182028301111561280357612802612689565b5b9250929050565b5f80602083850312156128205761281f612455565b5b5f83013567ffffffffffffffff81111561283d5761283c612459565b5b612849858286016127b5565b92509250509250929050565b5f8083601f84011261286a57612869612681565b5b8235905067ffffffffffffffff81111561288757612886612685565b5b6020830191508360208202830111156128a3576128a2612689565b5b9250929050565b5f80602083850312156128c0576128bf612455565b5b5f83013567ffffffffffffffff8111156128dd576128dc612459565b5b6128e985828601612855565b92509250509250929050565b5f8083601f84011261290a57612909612681565b5b8235905067ffffffffffffffff81111561292757612926612685565b5b60208301915083602082028301111561294357612942612689565b5b9250929050565b5f805f806040858703121561296257612961612455565b5b5f85013567ffffffffffffffff81111561297f5761297e612459565b5b61298b8782880161268d565b9450945050602085013567ffffffffffffffff8111156129ae576129ad612459565b5b6129ba878288016128f5565b925092505092959194509250565b6129d18161252f565b82525050565b5f6020820190506129ea5f8301846129c8565b92915050565b5f805f805f805f8060a0898b031215612a0c57612a0b612455565b5b5f612a198b828c01612556565b9850506020612a2a8b828c01612556565b975050604089013567ffffffffffffffff811115612a4b57612a4a612459565b5b612a578b828c016128f5565b9650965050606089013567ffffffffffffffff811115612a7a57612a79612459565b5b612a868b828c016128f5565b9450945050608089013567ffffffffffffffff811115612aa957612aa8612459565b5b612ab58b828c016127b5565b92509250509295985092959890939650565b5f805f805f8060a08789031215612ae157612ae0612455565b5b5f612aee89828a01612556565b9650506020612aff89828a01612556565b9550506040612b1089828a016125dc565b9450506060612b2189828a016125dc565b935050608087013567ffffffffffffffff811115612b4257612b41612459565b5b612b4e89828a016127b5565b92509250509295509295509295565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b612b93816124dd565b8114612b9d575f80fd5b50565b5f81359050612bae81612b8a565b92915050565b5f60208284031215612bc957612bc8612455565b5b5f612bd684828501612ba0565b91505092915050565b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612c2982612be3565b810181811067ffffffffffffffff82111715612c4857612c47612bf3565b5b80604052505050565b5f612c5a61244c565b9050612c668282612c20565b919050565b5f80fd5b5f67ffffffffffffffff821115612c8957612c88612bf3565b5b602082029050602081019050919050565b5f612cac612ca784612c6f565b612c51565b90508083825260208201905060208402830185811115612ccf57612cce612689565b5b835b81811015612cf85780612ce48882612556565b845260208401935050602081019050612cd1565b5050509392505050565b5f82601f830112612d1657612d15612681565b5b8135612d26848260208601612c9a565b91505092915050565b5f67ffffffffffffffff821115612d4957612d48612bf3565b5b602082029050602081019050919050565b5f612d6c612d6784612d2f565b612c51565b90508083825260208201905060208402830185811115612d8f57612d8e612689565b5b835b81811015612db85780612da488826125dc565b845260208401935050602081019050612d91565b5050509392505050565b5f82601f830112612dd657612dd5612681565b5b8135612de6848260208601612d5a565b91505092915050565b5f60608284031215612e0457612e03612bdf565b5b612e0e6060612c51565b90505f612e1d84828501612556565b5f83015250602082013567ffffffffffffffff811115612e4057612e3f612c6b565b5b612e4c84828501612d02565b602083015250604082013567ffffffffffffffff811115612e7057612e6f612c6b565b5b612e7c84828501612dc2565b60408301525092915050565b5f60208284031215612e9d57612e9c612455565b5b5f82013567ffffffffffffffff811115612eba57612eb9612459565b5b612ec684828501612def565b91505092915050565b60038110612edb575f80fd5b50565b5f81359050612eec81612ecf565b92915050565b5f80fd5b5f67ffffffffffffffff821115612f1057612f0f612bf3565b5b612f1982612be3565b9050602081019050919050565b828183375f83830152505050565b5f612f46612f4184612ef6565b612c51565b905082815260208101848484011115612f6257612f61612ef2565b5b612f6d848285612f26565b509392505050565b5f82601f830112612f8957612f88612681565b5b8135612f99848260208601612f34565b91505092915050565b5f60808284031215612fb757612fb6612bdf565b5b612fc16080612c51565b90505f612fd084828501612ede565b5f830152506020612fe384828501612556565b6020830152506040612ff784828501612556565b604083015250606082013567ffffffffffffffff81111561301b5761301a612c6b565b5b61302784828501612f75565b60608301525092915050565b5f6020828403121561304857613047612455565b5b5f82013567ffffffffffffffff81111561306557613064612459565b5b61307184828501612fa2565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b5f815190506130b5816125c6565b92915050565b5f602082840312156130d0576130cf612bdf565b5b6130da6020612c51565b90505f6130e9848285016130a7565b5f8301525092915050565b5f6020828403121561310957613108612455565b5b5f613116848285016130bb565b91505092915050565b8281835e5f83830152505050565b5f61313f61313a84612ef6565b612c51565b90508281526020810184848401111561315b5761315a612ef2565b5b61316684828561311f565b509392505050565b5f82601f83011261318257613181612681565b5b815161319284826020860161312d565b91505092915050565b5f606082840312156131b0576131af612bdf565b5b6131ba6060612c51565b90505f6131c9848285016130a7565b5f8301525060206131dc848285016130a7565b602083015250604082015167ffffffffffffffff811115613200576131ff612c6b565b5b61320c8482850161316e565b60408301525092915050565b5f6020828403121561322d5761322c612455565b5b5f82015167ffffffffffffffff81111561324a57613249612459565b5b6132568482850161319b565b91505092915050565b5f6040820190506132725f8301856129c8565b61327f602083018461259e565b9392505050565b5f6020828403121561329b5761329a612455565b5b5f6132a8848285016130a7565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f6132d5826132b1565b6132df81856132bb565b93506132ef81856020860161311f565b6132f881612be3565b840191505092915050565b5f60a0820190506133165f8301886129c8565b61332360208301876129c8565b613330604083018661259e565b61333d606083018561259e565b818103608083015261334f81846132cb565b90509695505050505050565b5f80fd5b5f80fd5b5f80fd5b5f80833560016020038436030381126133835761338261335b565b5b80840192508235915067ffffffffffffffff8211156133a5576133a461335f565b5b6020830192506001820236038313156133c1576133c0613363565b5b509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61340082612595565b915061340b83612595565b9250828201905080821115613423576134226133c9565b5b92915050565b5f60608201905061343c5f8301866129c8565b613449602083018561259e565b613456604083018461259e565b949350505050565b5f6060820190506134715f8301866129c8565b61347e60208301856129c8565b61348b604083018461259e565b94935050505056fea2646970667358221220c1bfb1478642fd79fec67a73804426335fe572337323b77d0ae5af9397dc0e4c64736f6c634300081a0033", n = {
|
|
8
|
+
MANAGER: 1n,
|
|
9
|
+
ADMIN: 2n
|
|
10
|
+
};
|
|
11
|
+
function I(c) {
|
|
12
|
+
return c.tokenId === void 0;
|
|
13
|
+
}
|
|
14
|
+
function S(c) {
|
|
15
|
+
return c.tokenId !== void 0;
|
|
16
|
+
}
|
|
17
|
+
function t(c) {
|
|
18
|
+
if (I(c))
|
|
19
|
+
return H(c);
|
|
20
|
+
if (S(c))
|
|
21
|
+
return L(c);
|
|
22
|
+
throw new F(c);
|
|
23
|
+
}
|
|
24
|
+
const r = class r extends N {
|
|
25
|
+
constructor() {
|
|
26
|
+
super(...arguments), this.abi = i;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Allocates assets to the budget.
|
|
30
|
+
* The caller must have already approved the contract to transfer the asset
|
|
31
|
+
* If the asset transfer fails, the allocation will revert
|
|
32
|
+
*
|
|
33
|
+
* @public
|
|
34
|
+
* @async
|
|
35
|
+
* @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer
|
|
36
|
+
* @param {?WriteParams<typeof managedBudgetAbi, 'allocate'>} [params]
|
|
37
|
+
* @returns {Promise<boolean>} - True if the allocation was successful
|
|
38
|
+
*/
|
|
39
|
+
async allocate(f, b) {
|
|
40
|
+
return this.awaitResult(this.allocateRaw(f, b));
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Allocates assets to the budget.
|
|
44
|
+
* The caller must have already approved the contract to transfer the asset
|
|
45
|
+
* If the asset transfer fails, the allocation will revert
|
|
46
|
+
*
|
|
47
|
+
* @public
|
|
48
|
+
* @async
|
|
49
|
+
* @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer
|
|
50
|
+
* @param {?WriteParams<typeof managedBudgetAbi, 'allocate'>} [params]
|
|
51
|
+
* @returns {Promise<boolean>} - True if the allocation was successful
|
|
52
|
+
*/
|
|
53
|
+
async allocateRaw(f, b) {
|
|
54
|
+
const { request: a, result: e } = await h(
|
|
55
|
+
this._config,
|
|
56
|
+
{
|
|
57
|
+
address: this.assertValidAddress(),
|
|
58
|
+
args: [t(f)],
|
|
59
|
+
...this.optionallyAttachAccount(),
|
|
60
|
+
// biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
|
|
61
|
+
...b
|
|
62
|
+
}
|
|
63
|
+
);
|
|
64
|
+
return { hash: await l(this._config, a), result: e };
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Clawbacks assets from the budget.
|
|
68
|
+
* Only the owner can directly clawback assets from the budget
|
|
69
|
+
* If the amount is zero, the entire balance of the asset will be transferred to the receiver
|
|
70
|
+
* If the asset transfer fails, the reclamation will revert
|
|
71
|
+
*
|
|
72
|
+
* @public
|
|
73
|
+
* @async
|
|
74
|
+
* @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer
|
|
75
|
+
* @param {?WriteParams<typeof managedBudgetAbi, 'clawback'>} [params]
|
|
76
|
+
* @returns {Promise<boolean>} - True if the request was successful
|
|
77
|
+
*/
|
|
78
|
+
async clawback(f, b) {
|
|
79
|
+
return this.awaitResult(this.clawbackRaw(f, b));
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Clawbacks assets from the budget.
|
|
83
|
+
* Only the owner can directly clawback assets from the budget
|
|
84
|
+
* If the amount is zero, the entire balance of the asset will be transferred to the receiver
|
|
85
|
+
* If the asset transfer fails, the reclamation will revert
|
|
86
|
+
*
|
|
87
|
+
* @public
|
|
88
|
+
* @async
|
|
89
|
+
* @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer
|
|
90
|
+
* @param {?WriteParams<typeof managedBudgetAbi, 'clawback'>} [params]
|
|
91
|
+
* @returns {Promise<boolean>} - True if the request was successful
|
|
92
|
+
*/
|
|
93
|
+
async clawbackRaw(f, b) {
|
|
94
|
+
const { request: a, result: e } = await u(
|
|
95
|
+
this._config,
|
|
96
|
+
{
|
|
97
|
+
address: this.assertValidAddress(),
|
|
98
|
+
args: [t(f)],
|
|
99
|
+
...this.optionallyAttachAccount(),
|
|
100
|
+
// biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
|
|
101
|
+
...b
|
|
102
|
+
}
|
|
103
|
+
);
|
|
104
|
+
return { hash: await w(this._config, a), result: e };
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Disburses assets from the budget to a single recipient
|
|
108
|
+
* If the asset transfer fails, the disbursement will revert
|
|
109
|
+
*
|
|
110
|
+
* @public
|
|
111
|
+
* @async
|
|
112
|
+
* @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer
|
|
113
|
+
* @param {?WriteParams<typeof managedBudgetAbi, 'disburse'>} [params]
|
|
114
|
+
* @returns {Promise<boolean>} - True if the disbursement was successful
|
|
115
|
+
*/
|
|
116
|
+
async disburse(f, b) {
|
|
117
|
+
return this.awaitResult(this.disburseRaw(f, b));
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Disburses assets from the budget to a single recipient
|
|
121
|
+
* If the asset transfer fails, the disbursement will revert
|
|
122
|
+
*
|
|
123
|
+
* @public
|
|
124
|
+
* @async
|
|
125
|
+
* @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer
|
|
126
|
+
* @param {?WriteParams<typeof managedBudgetAbi, 'disburse'>} [params]
|
|
127
|
+
* @returns {Promise<boolean>} - True if the disbursement was successful
|
|
128
|
+
*/
|
|
129
|
+
async disburseRaw(f, b) {
|
|
130
|
+
const { request: a, result: e } = await A(
|
|
131
|
+
this._config,
|
|
132
|
+
{
|
|
133
|
+
address: this.assertValidAddress(),
|
|
134
|
+
args: [t(f)],
|
|
135
|
+
...this.optionallyAttachAccount(),
|
|
136
|
+
// biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
|
|
137
|
+
...b
|
|
138
|
+
}
|
|
139
|
+
);
|
|
140
|
+
return { hash: await g(this._config, a), result: e };
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Disburses assets from the budget to multiple recipients
|
|
144
|
+
*
|
|
145
|
+
* @public
|
|
146
|
+
* @async
|
|
147
|
+
* @param {Array<FungibleTransferPayload | ERC1155TransferPayload>} transfers
|
|
148
|
+
* @param {?WriteParams<typeof managedBudgetAbi, 'disburseBatch'>} [params]
|
|
149
|
+
* @returns {Promise<boolean>} - True if all disbursements were successful
|
|
150
|
+
*/
|
|
151
|
+
async disburseBatch(f, b) {
|
|
152
|
+
return this.awaitResult(this.disburseBatchRaw(f, b));
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Disburses assets from the budget to multiple recipients
|
|
156
|
+
*
|
|
157
|
+
* @public
|
|
158
|
+
* @async
|
|
159
|
+
* @param {Array<FungibleTransferPayload | ERC1155TransferPayload>} transfers
|
|
160
|
+
* @param {?WriteParams<typeof managedBudgetAbi, 'disburseBatch'>} [params]
|
|
161
|
+
* @returns {Promise<boolean>} - True if all disbursements were successful
|
|
162
|
+
*/
|
|
163
|
+
async disburseBatchRaw(f, b) {
|
|
164
|
+
const { request: a, result: e } = await y(
|
|
165
|
+
this._config,
|
|
166
|
+
{
|
|
167
|
+
address: this.assertValidAddress(),
|
|
168
|
+
args: [f.map(t)],
|
|
169
|
+
...this.optionallyAttachAccount(),
|
|
170
|
+
// biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
|
|
171
|
+
...b
|
|
172
|
+
}
|
|
173
|
+
);
|
|
174
|
+
return { hash: await p(this._config, a), result: e };
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Set the authorized status of the given accounts
|
|
178
|
+
* The mechanism for managing authorization is left to the implementing contract
|
|
179
|
+
*
|
|
180
|
+
* @public
|
|
181
|
+
* @async
|
|
182
|
+
* @param {Address[]} addresses - The accounts to authorize or deauthorize
|
|
183
|
+
* @param {boolean[]} allowed - The authorization status for the given accounts
|
|
184
|
+
* @param {?WriteParams<typeof managedBudgetAbi, 'setAuthorized'>} [params]
|
|
185
|
+
* @returns {Promise<void>}
|
|
186
|
+
*/
|
|
187
|
+
async setAuthorized(f, b, a) {
|
|
188
|
+
return this.awaitResult(this.setAuthorizedRaw(f, b, a));
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Set the authorized status of the given accounts
|
|
192
|
+
* The mechanism for managing authorization is left to the implementing contract
|
|
193
|
+
*
|
|
194
|
+
* @public
|
|
195
|
+
* @async
|
|
196
|
+
* @param {Address[]} addresses - The accounts to authorize or deauthorize
|
|
197
|
+
* @param {boolean[]} allowed - The authorization status for the given accounts
|
|
198
|
+
* @param {?WriteParams<typeof managedBudgetAbi, 'setAuthorized'>} [params]
|
|
199
|
+
* @returns {Promise<void>}
|
|
200
|
+
*/
|
|
201
|
+
async setAuthorizedRaw(f, b, a) {
|
|
202
|
+
const { request: e, result: d } = await R(
|
|
203
|
+
this._config,
|
|
204
|
+
{
|
|
205
|
+
address: this.assertValidAddress(),
|
|
206
|
+
args: [f, b],
|
|
207
|
+
...this.optionallyAttachAccount(),
|
|
208
|
+
// biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
|
|
209
|
+
...a
|
|
210
|
+
}
|
|
211
|
+
);
|
|
212
|
+
return { hash: await _(this._config, e), result: d };
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Grant many accounts permissions on the budget.
|
|
216
|
+
*
|
|
217
|
+
* @example
|
|
218
|
+
* ```ts
|
|
219
|
+
* await budget.grantRoles(['0xfoo', '0xbar], [ManagedBudgetRoles.MANAGER, ManagedBudgetRoles.ADMIN])
|
|
220
|
+
* ```
|
|
221
|
+
* @public
|
|
222
|
+
* @async
|
|
223
|
+
* @param {Address[]} addresses
|
|
224
|
+
* @param {bigint[]} roles
|
|
225
|
+
* @param {?WriteParams<typeof managedBudgetAbi, 'grantRoles'>} [params]
|
|
226
|
+
* @returns {unknown}
|
|
227
|
+
*/
|
|
228
|
+
async grantRoles(f, b, a) {
|
|
229
|
+
return this.awaitResult(this.grantRolesRaw(f, b, a));
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Grant many accounts permissions on the budget.
|
|
233
|
+
*
|
|
234
|
+
* @example
|
|
235
|
+
* ```ts
|
|
236
|
+
* await budget.grantRoles(['0xfoo', '0xbar], [ManagedBudgetRoles.MANAGER, ManagedBudgetRoles.ADMIN])
|
|
237
|
+
*
|
|
238
|
+
* @public
|
|
239
|
+
* @async
|
|
240
|
+
* @param {Address[]} addresses
|
|
241
|
+
* @param {bigint[]} roles
|
|
242
|
+
* @param {?WriteParams<typeof managedBudgetAbi, 'grantRoles'>} [params]
|
|
243
|
+
* @returns {unknown}
|
|
244
|
+
*/
|
|
245
|
+
async grantRolesRaw(f, b, a) {
|
|
246
|
+
const { request: e, result: d } = await m(
|
|
247
|
+
this._config,
|
|
248
|
+
{
|
|
249
|
+
address: this.assertValidAddress(),
|
|
250
|
+
args: [f, b],
|
|
251
|
+
...this.optionallyAttachAccount(),
|
|
252
|
+
// biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
|
|
253
|
+
...a
|
|
254
|
+
}
|
|
255
|
+
);
|
|
256
|
+
return { hash: await T(
|
|
257
|
+
this._config,
|
|
258
|
+
// biome-ignore lint/suspicious/noExplicitAny: negligible low level lack of type intersection
|
|
259
|
+
e
|
|
260
|
+
), result: d };
|
|
261
|
+
}
|
|
262
|
+
/**
|
|
263
|
+
* Revoke many accounts' permissions on the budget.
|
|
264
|
+
*
|
|
265
|
+
* @example
|
|
266
|
+
* ```ts
|
|
267
|
+
* await budget.revokeRoles(['0xfoo', '0xbar], [ManagedBudgetRoles.MANAGER, ManagedBudgetRoles.ADMIN])
|
|
268
|
+
*
|
|
269
|
+
* @public
|
|
270
|
+
* @async
|
|
271
|
+
* @param {Address[]} addresses
|
|
272
|
+
* @param {bigint[]} roles
|
|
273
|
+
* @param {?WriteParams<typeof managedBudgetAbi, 'revokeRoles'>} [params]
|
|
274
|
+
* @returns {unknown}
|
|
275
|
+
*/
|
|
276
|
+
async revokeRoles(f, b, a) {
|
|
277
|
+
return this.awaitResult(this.revokeRolesRaw(f, b, a));
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Revoke many accounts' permissions on the budget.
|
|
281
|
+
*
|
|
282
|
+
* @example
|
|
283
|
+
* ```ts
|
|
284
|
+
* await budget.revokeRoles(['0xfoo', '0xbar], [ManagedBudgetRoles.MANAGER, ManagedBudgetRoles.ADMIN])
|
|
285
|
+
* @public
|
|
286
|
+
* @async
|
|
287
|
+
* @param {Address[]} addresses
|
|
288
|
+
* @param {bigint[]} roles
|
|
289
|
+
* @param {?WriteParams<typeof managedBudgetAbi, 'revokeRoles'>} [params]
|
|
290
|
+
* @returns {unknown}
|
|
291
|
+
*/
|
|
292
|
+
async revokeRolesRaw(f, b, a) {
|
|
293
|
+
const { request: e, result: d } = await V(
|
|
294
|
+
this._config,
|
|
295
|
+
{
|
|
296
|
+
address: this.assertValidAddress(),
|
|
297
|
+
args: [f, b],
|
|
298
|
+
...this.optionallyAttachAccount(),
|
|
299
|
+
// biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
|
|
300
|
+
...a
|
|
301
|
+
}
|
|
302
|
+
);
|
|
303
|
+
return { hash: await q(
|
|
304
|
+
this._config,
|
|
305
|
+
// biome-ignore lint/suspicious/noExplicitAny: negligible low level lack of type intersection
|
|
306
|
+
e
|
|
307
|
+
), result: d };
|
|
308
|
+
}
|
|
309
|
+
/**
|
|
310
|
+
* Return an array of the roles assigned to the given account.
|
|
311
|
+
* @example
|
|
312
|
+
* ```ts
|
|
313
|
+
* (await budget.rolesOf(0xfoo)).includes(ManagedBudgetRoles.ADMIN)
|
|
314
|
+
* @public
|
|
315
|
+
* @param {Address} account
|
|
316
|
+
* @param {?ReadParams<typeof managedBudgetAbi, 'rolesOf'>} [params]
|
|
317
|
+
* @returns {Promise<Array<bigint>>}
|
|
318
|
+
*/
|
|
319
|
+
async rolesOf(f, b) {
|
|
320
|
+
const a = await v(this._config, {
|
|
321
|
+
address: this.assertValidAddress(),
|
|
322
|
+
args: [f],
|
|
323
|
+
...this.optionallyAttachAccount(),
|
|
324
|
+
// biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
|
|
325
|
+
...b
|
|
326
|
+
});
|
|
327
|
+
return [n.MANAGER, n.ADMIN].filter(
|
|
328
|
+
(e) => (a & e) === e
|
|
329
|
+
);
|
|
330
|
+
}
|
|
331
|
+
/**
|
|
332
|
+
* Returns whether given account has any of the provided roles bitmap.
|
|
333
|
+
*
|
|
334
|
+
* @example
|
|
335
|
+
* ```ts
|
|
336
|
+
* await budget.hasAnyRole(0xfoo, ManagedBudgetRoles.ADMIN | ManagedBudgetRoles.MANAGER)
|
|
337
|
+
* @public
|
|
338
|
+
* @param {Address} account
|
|
339
|
+
* @param {bigint} roles
|
|
340
|
+
* @param {?ReadParams<typeof managedBudgetAbi, 'hasAnyRole'>} [params]
|
|
341
|
+
* @returns {Promise<boolean>}
|
|
342
|
+
*/
|
|
343
|
+
hasAnyRole(f, b, a) {
|
|
344
|
+
return k(this._config, {
|
|
345
|
+
address: this.assertValidAddress(),
|
|
346
|
+
args: [f, b],
|
|
347
|
+
...this.optionallyAttachAccount(),
|
|
348
|
+
// biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
|
|
349
|
+
...a
|
|
350
|
+
});
|
|
351
|
+
}
|
|
352
|
+
/**
|
|
353
|
+
* Returns whether given account has all of the provided roles bitmap.
|
|
354
|
+
*
|
|
355
|
+
* @example
|
|
356
|
+
* ```ts
|
|
357
|
+
* await budget.hasAllRoles(0xfoo, ManagedBudgetRoles.ADMIN & ManagedBudgetRoles.MANAGER)
|
|
358
|
+
*
|
|
359
|
+
* @public
|
|
360
|
+
* @param {Address} account
|
|
361
|
+
* @param {bigint} roles
|
|
362
|
+
* @param {?ReadParams<typeof managedBudgetAbi, 'hasAllRoles'>} [params]
|
|
363
|
+
* @returns {*}
|
|
364
|
+
*/
|
|
365
|
+
hasAllRoles(f, b, a) {
|
|
366
|
+
return D(this._config, {
|
|
367
|
+
address: this.assertValidAddress(),
|
|
368
|
+
args: [f, b],
|
|
369
|
+
...this.optionallyAttachAccount(),
|
|
370
|
+
// biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
|
|
371
|
+
...a
|
|
372
|
+
});
|
|
373
|
+
}
|
|
374
|
+
/**
|
|
375
|
+
* Check if the given account is authorized to use the budget
|
|
376
|
+
*
|
|
377
|
+
* @public
|
|
378
|
+
* @param {Address} account
|
|
379
|
+
* @param {?ReadParams<typeof managedBudgetAbi, 'isAuthorized'>} [params]
|
|
380
|
+
* @returns {Promise<boolean>} - True if the account is authorized
|
|
381
|
+
*/
|
|
382
|
+
isAuthorized(f, b) {
|
|
383
|
+
return C(this._config, {
|
|
384
|
+
address: this.assertValidAddress(),
|
|
385
|
+
args: [f],
|
|
386
|
+
...this.optionallyAttachAccount(),
|
|
387
|
+
// biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
|
|
388
|
+
...b
|
|
389
|
+
});
|
|
390
|
+
}
|
|
391
|
+
/**
|
|
392
|
+
* Get the owner of the budget
|
|
393
|
+
*
|
|
394
|
+
* @public
|
|
395
|
+
* @param {?ReadParams<typeof managedBudgetAbi, 'owner'>} [params]
|
|
396
|
+
* @returns {Promise<Address>}
|
|
397
|
+
*/
|
|
398
|
+
owner(f) {
|
|
399
|
+
return P(this._config, {
|
|
400
|
+
address: this.assertValidAddress(),
|
|
401
|
+
args: [],
|
|
402
|
+
// biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
|
|
403
|
+
...f
|
|
404
|
+
});
|
|
405
|
+
}
|
|
406
|
+
/**
|
|
407
|
+
* Get the total amount of assets allocated to the budget, including any that have been distributed
|
|
408
|
+
* If a tokenId is provided, get the total amount of ERC1155 assets allocated to the budget, including any that have been distributed
|
|
409
|
+
*
|
|
410
|
+
* @public
|
|
411
|
+
* @param {Address} asset - The address of the asset
|
|
412
|
+
* @param {?(bigint | undefined)} [tokenId] - The ID of the token
|
|
413
|
+
* @param {?ReadParams<typeof managedBudgetAbi, 'total'>} [params]
|
|
414
|
+
* @returns {Promise<bigint>} - The total amount of assets
|
|
415
|
+
*/
|
|
416
|
+
total(f, b, a) {
|
|
417
|
+
return x(this._config, {
|
|
418
|
+
address: this.assertValidAddress(),
|
|
419
|
+
args: b ? [f, b] : [f],
|
|
420
|
+
// biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
|
|
421
|
+
...a
|
|
422
|
+
});
|
|
423
|
+
}
|
|
424
|
+
/**
|
|
425
|
+
* Get the amount of assets available for distribution from the budget.
|
|
426
|
+
* If a tokenId is provided, get the amount of ERC1155 assets available for distribution from the budget
|
|
427
|
+
*
|
|
428
|
+
* @public
|
|
429
|
+
* @param {Address} asset
|
|
430
|
+
* @param {?(bigint | undefined)} [tokenId]
|
|
431
|
+
* @param {?ReadParams<typeof managedBudgetAbi, 'available'>} [params]
|
|
432
|
+
* @returns {Promise<bigint>} - The amount of assets available
|
|
433
|
+
*/
|
|
434
|
+
available(f, b, a) {
|
|
435
|
+
return z(this._config, {
|
|
436
|
+
address: this.assertValidAddress(),
|
|
437
|
+
args: b ? [f, b] : [f],
|
|
438
|
+
// biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
|
|
439
|
+
...a
|
|
440
|
+
});
|
|
441
|
+
}
|
|
442
|
+
/**
|
|
443
|
+
* Get the amount of assets that have been distributed from the budget.
|
|
444
|
+
* If a tokenId is provided, get the amount of ERC1155 assets that have been distributed from the budget
|
|
445
|
+
*
|
|
446
|
+
* @public
|
|
447
|
+
* @param {Address} asset
|
|
448
|
+
* @param {?(bigint | undefined)} [tokenId]
|
|
449
|
+
* @param {?ReadParams<typeof managedBudgetAbi, 'distributed'>} [params]
|
|
450
|
+
* @returns {Promise<bigint>} - The amount of assets distributed
|
|
451
|
+
*/
|
|
452
|
+
distributed(f, b, a) {
|
|
453
|
+
return B(this._config, {
|
|
454
|
+
address: this.assertValidAddress(),
|
|
455
|
+
args: b ? [f, b] : [f],
|
|
456
|
+
// biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
|
|
457
|
+
...a
|
|
458
|
+
});
|
|
459
|
+
}
|
|
460
|
+
/**
|
|
461
|
+
* @inheritdoc
|
|
462
|
+
*
|
|
463
|
+
* @public
|
|
464
|
+
* @param {?ManagedBudgetPayload} [_payload]
|
|
465
|
+
* @param {?DeployableOptions} [_options]
|
|
466
|
+
* @returns {GenericDeployableParams}
|
|
467
|
+
*/
|
|
468
|
+
buildParameters(f, b) {
|
|
469
|
+
var d;
|
|
470
|
+
const [a, e] = this.validateDeploymentConfig(
|
|
471
|
+
f,
|
|
472
|
+
b
|
|
473
|
+
);
|
|
474
|
+
if (!a.owner || a.owner === M) {
|
|
475
|
+
const s = e.account ? e.account.address : e.config ? E(e.config).address : (d = this._account) == null ? void 0 : d.address;
|
|
476
|
+
if (s)
|
|
477
|
+
a.owner = s;
|
|
478
|
+
else
|
|
479
|
+
throw new O();
|
|
480
|
+
}
|
|
481
|
+
return {
|
|
482
|
+
abi: i,
|
|
483
|
+
bytecode: Q,
|
|
484
|
+
args: [U(a)],
|
|
485
|
+
...this.optionallyAttachAccount(e.account)
|
|
486
|
+
};
|
|
487
|
+
}
|
|
488
|
+
};
|
|
489
|
+
r.base = "0x0b51f997fa15867134fA34366FCeA63Bee93C087", r.registryType = G.BUDGET;
|
|
490
|
+
let o = r;
|
|
491
|
+
export {
|
|
492
|
+
o as ManagedBudget,
|
|
493
|
+
n as ManagedBudgetRoles,
|
|
494
|
+
S as isERC1155TransferPayload,
|
|
495
|
+
I as isFungibleTransfer,
|
|
496
|
+
i as managedBudgetAbi,
|
|
497
|
+
t as prepareTransfer
|
|
498
|
+
};
|