@superfluid-finance/ethereum-contracts 1.2.3-dev.3df6de8.0 → 1.2.3-dev.4eebafa.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/contracts/AccessControl.json +1 -1
- package/build/contracts/AccessControlEnumerable.json +1 -1
- package/build/contracts/Address.json +1 -1
- package/build/contracts/AgreementBase.json +10 -10
- package/build/contracts/AgreementLibrary.json +4 -4
- package/build/contracts/BaseRelayRecipient.json +1 -1
- package/build/contracts/BatchLiquidator.json +1385 -1242
- package/build/contracts/BatchOperation.json +1 -1
- package/build/contracts/CFAv1Library.json +3437 -3625
- package/build/contracts/CallUtils.json +1 -1
- package/build/contracts/ClosingOnUpdateFlowTestApp.json +4440 -4451
- package/build/contracts/ConstantFlowAgreementV1.json +5204 -5204
- package/build/contracts/Context.json +1 -1
- package/build/contracts/ContextDefinitions.json +1 -1
- package/build/contracts/Create2.json +1 -1
- package/build/contracts/CustomSuperTokenBase.json +2 -2
- package/build/contracts/ERC165.json +1 -1
- package/build/contracts/ERC1820Implementer.json +79 -79
- package/build/contracts/ERC1820RegistryCompiled.json +1 -1
- package/build/contracts/ERC20.json +1008 -1008
- package/build/contracts/ERC20Burnable.json +1 -1
- package/build/contracts/ERC20Pausable.json +1 -1
- package/build/contracts/ERC20PresetMinterPauser.json +1816 -1816
- package/build/contracts/ERC20WithTokenInfo.json +1 -1
- package/build/contracts/ERC777Helper.json +1 -1
- package/build/contracts/ERC777RecipientDrainingGas.json +1874 -1874
- package/build/contracts/ERC777RecipientReverting.json +1896 -1896
- package/build/contracts/EnumerableSet.json +1 -1
- package/build/contracts/EventsEmitter.json +414 -0
- package/build/contracts/ExclusiveInflowTestApp.json +4468 -4479
- package/build/contracts/FixedSizeData.json +405 -405
- package/build/contracts/FlowExchangeTestApp.json +4578 -4589
- package/build/contracts/FlowOperatorDefinitions.json +1 -1
- package/build/contracts/FullUpgradableSuperTokenProxy.json +319 -319
- package/build/contracts/IAccessControl.json +1 -1
- package/build/contracts/IAccessControlEnumerable.json +1 -1
- package/build/contracts/IConstantFlowAgreementV1.json +2 -2
- package/build/contracts/IDAv1Library.json +3227 -3403
- package/build/contracts/IERC165.json +1 -1
- package/build/contracts/IERC1820Implementer.json +1 -1
- package/build/contracts/IERC1820Registry.json +1 -1
- package/build/contracts/IERC20.json +1 -1
- package/build/contracts/IERC20Metadata.json +1 -1
- package/build/contracts/IERC777.json +1 -1
- package/build/contracts/IERC777Recipient.json +1 -1
- package/build/contracts/IERC777Sender.json +1 -1
- package/build/contracts/IInstantDistributionAgreementV1.json +2 -2
- package/build/contracts/IMaticBridgedNativeSuperToken.json +6 -6
- package/build/contracts/IMaticBridgedNativeSuperTokenCustom.json +2 -2
- package/build/contracts/IMultiSigWallet.json +1 -1
- package/build/contracts/IPureSuperToken.json +6 -6
- package/build/contracts/IPureSuperTokenCustom.json +2 -2
- package/build/contracts/IRelayRecipient.json +1 -1
- package/build/contracts/IResolver.json +1 -1
- package/build/contracts/ISETH.json +6 -6
- package/build/contracts/ISETHCustom.json +2 -2
- package/build/contracts/ISuperAgreement.json +2 -2
- package/build/contracts/ISuperApp.json +2 -2
- package/build/contracts/ISuperToken.json +6 -6
- package/build/contracts/ISuperTokenFactory.json +2 -2
- package/build/contracts/ISuperfluid.json +2 -2
- package/build/contracts/ISuperfluidGovernance.json +2 -2
- package/build/contracts/ISuperfluidToken.json +122 -122
- package/build/contracts/ITOGAv1.json +2689 -2739
- package/build/contracts/ITOGAv2.json +2689 -2739
- package/build/contracts/Initializable.json +1 -1
- package/build/contracts/InstantDistributionAgreementV1.json +5387 -5387
- package/build/contracts/MaticBridgedNativeSuperTokenProxy.json +971 -971
- package/build/contracts/NonClosableOutflowTestApp.json +4343 -4354
- package/build/contracts/Ownable.json +1 -1
- package/build/contracts/Pausable.json +1 -1
- package/build/contracts/Proxy.json +1 -1
- package/build/contracts/PureSuperToken.json +694 -694
- package/build/contracts/Resolver.json +1058 -1058
- package/build/contracts/SETHProxy.json +661 -661
- package/build/contracts/SafeCast.json +1 -1
- package/build/contracts/SafeERC20.json +1 -1
- package/build/contracts/SafeMath.json +1 -1
- package/build/contracts/SelfDeletingFlowTestApp.json +4440 -4451
- package/build/contracts/SlotsBitmapLibrary.json +1757 -1757
- package/build/contracts/Strings.json +1 -1
- package/build/contracts/SuperAppBase.json +2 -2
- package/build/contracts/SuperAppDefinitions.json +1 -1
- package/build/contracts/SuperToken.json +9757 -9515
- package/build/contracts/SuperTokenFactory.json +2074 -2074
- package/build/contracts/SuperTokenFactoryBase.json +989 -989
- package/build/contracts/SuperTokenFactoryHelper.json +1095 -1095
- package/build/contracts/SuperUpgrader.json +2495 -2495
- package/build/contracts/Superfluid.json +12978 -12978
- package/build/contracts/SuperfluidFrameworkDeployer.json +2042 -2042
- package/build/contracts/SuperfluidGovernanceBase.json +9 -9
- package/build/contracts/SuperfluidGovernanceConfigs.json +1 -1
- package/build/contracts/SuperfluidGovernanceII.json +2022 -2022
- package/build/contracts/SuperfluidGovernanceIIProxy.json +227 -227
- package/build/contracts/SuperfluidLoader.json +752 -752
- package/build/contracts/SuperfluidToken.json +3476 -2953
- package/build/contracts/TOGA.json +4681 -4731
- package/build/contracts/TestGovernance.json +2402 -2402
- package/build/contracts/TestToken.json +1267 -1267
- package/build/contracts/TokenCustodian.json +903 -903
- package/build/contracts/TokenInfo.json +1 -1
- package/build/contracts/UUPSProxiable.json +233 -233
- package/build/contracts/UUPSProxy.json +257 -257
- package/build/contracts/UUPSUtils.json +85 -85
- package/build/contracts-sizes.txt +6 -6
- package/contracts/apps/CFAv1Library.sol +147 -111
- package/contracts/apps/IDAv1Library.sol +133 -101
- package/contracts/interfaces/superfluid/ISuperfluidToken.sol +8 -8
- package/contracts/libs/EventsEmitter.sol +16 -0
- package/contracts/mocks/CFAAppMocks.sol +52 -36
- package/contracts/mocks/CustomSuperTokenMock.sol +11 -4
- package/contracts/mocks/IDASuperAppTester.sol +24 -18
- package/contracts/mocks/MultiFlowTesterApp.sol +33 -24
- package/contracts/mocks/SuperAppMocks.sol +54 -40
- package/contracts/superfluid/SuperfluidToken.sol +33 -31
- package/contracts/utils/BatchLiquidator.sol +15 -11
- package/contracts/utils/TOGA.sol +40 -30
- package/package.json +2 -2
|
@@ -1001,7 +1001,7 @@
|
|
|
1001
1001
|
"type": "function"
|
|
1002
1002
|
}
|
|
1003
1003
|
],
|
|
1004
|
-
"metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"agreementType\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"code\",\"type\":\"address\"}],\"name\":\"AgreementClassRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"agreementType\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"code\",\"type\":\"address\"}],\"name\":\"AgreementClassUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"}],\"name\":\"AppRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"contract ISuperfluidGovernance\",\"name\":\"oldGov\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"contract ISuperfluidGovernance\",\"name\":\"newGov\",\"type\":\"address\"}],\"name\":\"GovernanceReplaced\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"reason\",\"type\":\"uint256\"}],\"name\":\"Jail\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"contract ISuperTokenFactory\",\"name\":\"newFactory\",\"type\":\"address\"}],\"name\":\"SuperTokenFactoryUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract ISuperToken\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"code\",\"type\":\"address\"}],\"name\":\"SuperTokenLogicUpdated\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"agreementType\",\"type\":\"bytes32\"}],\"name\":\"addToAgreementClassesBitmap\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"newBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"targetApp\",\"type\":\"address\"}],\"name\":\"allowCompositeApp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"},{\"internalType\":\"int256\",\"name\":\"appAllowanceUsedDelta\",\"type\":\"int256\"}],\"name\":\"appCallbackPop\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"newCtx\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"},{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"appAllowanceGranted\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"appAllowanceUsed\",\"type\":\"int256\"},{\"internalType\":\"contract ISuperfluidToken\",\"name\":\"appAllowanceToken\",\"type\":\"address\"}],\"name\":\"appCallbackPush\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"newCtx\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"operationType\",\"type\":\"uint32\"},{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"internalType\":\"struct ISuperfluid.Operation[]\",\"name\":\"operations\",\"type\":\"tuple[]\"}],\"name\":\"batchCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperAgreement\",\"name\":\"agreementClass\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"userData\",\"type\":\"bytes\"}],\"name\":\"callAgreement\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"returnedData\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperAgreement\",\"name\":\"agreementClass\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"userData\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"}],\"name\":\"callAgreementWithContext\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"newCtx\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"returnedData\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"callAppAction\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"returnedData\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"}],\"name\":\"callAppActionWithContext\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"newCtx\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"isTermination\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"}],\"name\":\"callAppAfterCallback\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"newCtx\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"isTermination\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"}],\"name\":\"callAppBeforeCallback\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"cbdata\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"appAllowanceWantedMore\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"appAllowanceUsedDelta\",\"type\":\"int256\"}],\"name\":\"ctxUseAllowance\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"newCtx\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"}],\"name\":\"decodeCtx\",\"outputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"appLevel\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"callType\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"},{\"internalType\":\"bytes4\",\"name\":\"agreementSelector\",\"type\":\"bytes4\"},{\"internalType\":\"bytes\",\"name\":\"userData\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"appAllowanceGranted\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"appAllowanceWanted\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"appAllowanceUsed\",\"type\":\"int256\"},{\"internalType\":\"address\",\"name\":\"appAddress\",\"type\":\"address\"},{\"internalType\":\"contract ISuperfluidToken\",\"name\":\"appAllowanceToken\",\"type\":\"address\"}],\"internalType\":\"struct ISuperfluid.Context\",\"name\":\"context\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"operationType\",\"type\":\"uint32\"},{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"internalType\":\"struct ISuperfluid.Operation[]\",\"name\":\"operations\",\"type\":\"tuple[]\"}],\"name\":\"forwardBatchCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"agreementType\",\"type\":\"bytes32\"}],\"name\":\"getAgreementClass\",\"outputs\":[{\"internalType\":\"contract ISuperAgreement\",\"name\":\"agreementClass\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"}],\"name\":\"getAppLevel\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"appLevel\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"}],\"name\":\"getAppManifest\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isSuperApp\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isJailed\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"noopMask\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGovernance\",\"outputs\":[{\"internalType\":\"contract ISuperfluidGovernance\",\"name\":\"governance\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getNow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getSuperTokenFactory\",\"outputs\":[{\"internalType\":\"contract ISuperTokenFactory\",\"name\":\"factory\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getSuperTokenFactoryLogic\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"logic\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperAgreement\",\"name\":\"agreementClass\",\"type\":\"address\"}],\"name\":\"isAgreementClassListed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"yes\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"agreementType\",\"type\":\"bytes32\"}],\"name\":\"isAgreementTypeListed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"yes\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"}],\"name\":\"isApp\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"}],\"name\":\"isAppJailed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isJail\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"contract ISuperApp\",\"name\":\"targetApp\",\"type\":\"address\"}],\"name\":\"isCompositeAppAllowed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isAppAllowed\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"}],\"name\":\"isCtxValid\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"},{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"reason\",\"type\":\"uint256\"}],\"name\":\"jailApp\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"newCtx\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bitmap\",\"type\":\"uint256\"}],\"name\":\"mapAgreementClasses\",\"outputs\":[{\"internalType\":\"contract ISuperAgreement[]\",\"name\":\"agreementClasses\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperAgreement\",\"name\":\"agreementClassLogic\",\"type\":\"address\"}],\"name\":\"registerAgreementClass\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"configWord\",\"type\":\"uint256\"}],\"name\":\"registerApp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"configWord\",\"type\":\"uint256\"}],\"name\":\"registerAppByFactory\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"configWord\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"registrationKey\",\"type\":\"string\"}],\"name\":\"registerAppWithKey\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"agreementType\",\"type\":\"bytes32\"}],\"name\":\"removeFromAgreementClassesBitmap\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"newBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluidGovernance\",\"name\":\"newGov\",\"type\":\"address\"}],\"name\":\"replaceGovernance\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperAgreement\",\"name\":\"agreementClassLogic\",\"type\":\"address\"}],\"name\":\"updateAgreementClass\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperTokenFactory\",\"name\":\"newFactory\",\"type\":\"address\"}],\"name\":\"updateSuperTokenFactory\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperToken\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"updateSuperTokenLogic\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"Superfluid NOTE: This is the central contract of the system where super agreement, super app and super token features are connected. The Superfluid host contract is also the entry point for the protocol users, where batch call and meta transaction are provided for UX improvements.\",\"events\":{\"AgreementClassRegistered(bytes32,address)\":{\"details\":\"agreementType is the keccak256 hash of: \\\"org.superfluid-finance.agreements.<AGREEMENT_NAME>.<VERSION>\\\"\",\"params\":{\"agreementType\":\"The agreement type registered\",\"code\":\"Address of the new agreement\"}},\"AgreementClassUpdated(bytes32,address)\":{\"details\":\"agreementType is the keccak256 hash of: \\\"org.superfluid-finance.agreements.<AGREEMENT_NAME>.<VERSION>\\\"\",\"params\":{\"agreementType\":\"The agreement type updated\",\"code\":\"Address of the new agreement\"}},\"AppRegistered(address)\":{\"details\":\"App registered event\",\"params\":{\"app\":\"Address of jailed app\"}},\"GovernanceReplaced(address,address)\":{\"details\":\"Governance replaced event\",\"params\":{\"newGov\":\"Address of the new governance contract\",\"oldGov\":\"Address of the old governance contract\"}},\"Jail(address,uint256)\":{\"details\":\"Jail event for the app\",\"params\":{\"app\":\"Address of jailed app\",\"reason\":\"Reason the app is jailed (see Definitions.sol for the full list)\"}},\"SuperTokenFactoryUpdated(address)\":{\"details\":\"SuperToken factory updated event\",\"params\":{\"newFactory\":\"Address of the new factory\"}},\"SuperTokenLogicUpdated(address,address)\":{\"details\":\"SuperToken logic updated event\",\"params\":{\"code\":\"Address of the new SuperToken logic\"}}},\"kind\":\"dev\",\"methods\":{\"addToAgreementClassesBitmap(uint256,bytes32)\":{\"details\":\"agreementType is the keccak256 hash of: \\\"org.superfluid-finance.agreements.<AGREEMENT_NAME>.<VERSION>\\\"\",\"params\":{\"bitmap\":\"Agreement class bitmap\"}},\"allowCompositeApp(address)\":{\"details\":\"Whitelist the target app for app composition for the source app (msg.sender)\",\"params\":{\"targetApp\":\"The target super app address\"}},\"appCallbackPop(bytes,int256)\":{\"details\":\"(For agreements) Pop from the current app callback stack\",\"params\":{\"appAllowanceUsedDelta\":\"App allowance used by the app.\",\"ctx\":\"The ctx that was pushed before the callback stack.\"},\"returns\":{\"newCtx\":\"[SECURITY] NOTE: - Here we cannot do assertValidCtx(ctx), since we do not really save the stack in memory. - Hence there is still implicit trust that the agreement handles the callback push/pop pair correctly.\"}},\"appCallbackPush(bytes,address,uint256,int256,address)\":{\"details\":\"(For agreements) Create a new callback stack\",\"params\":{\"app\":\"The super app.\",\"appAllowanceGranted\":\"App allowance granted so far.\",\"appAllowanceUsed\":\"App allowance used so far.\",\"ctx\":\"The current ctx, it will be validated.\"},\"returns\":{\"newCtx\":\"newCtx\"}},\"batchCall((uint32,address,bytes)[])\":{\"details\":\"Batch call function\",\"params\":{\"operations\":\"Array of batch operations\"}},\"callAgreement(address,bytes,bytes)\":{\"details\":\"Call agreement function\",\"params\":{\"agreementClass\":\"The agreement address you are calling\",\"callData\":\"The contextual call data with placeholder ctx\",\"userData\":\"Extra user data being sent to the super app callbacks\"}},\"callAppAction(address,bytes)\":{\"details\":\"Main use case is calling app action in a batch call via the host\",\"params\":{\"callData\":\"The contextual call data NOTE: See \\\"Contextless Call Proxies\\\" above for more about contextual call data.\"}},\"callAppAfterCallback(address,bytes,bool,bytes)\":{\"details\":\"(For agreements) Call the app after callback\",\"params\":{\"app\":\"The super app.\",\"callData\":\"The call data sending to the super app.\",\"ctx\":\"Current ctx, it will be validated.\",\"isTermination\":\"Is it a termination callback?\"},\"returns\":{\"newCtx\":\"newCtx\"}},\"callAppBeforeCallback(address,bytes,bool,bytes)\":{\"details\":\"(For agreements) StaticCall the app before callback\",\"params\":{\"app\":\"The super app.\",\"callData\":\"The call data sending to the super app.\",\"ctx\":\"Current ctx, it will be validated.\",\"isTermination\":\"Is it a termination callback?\"},\"returns\":{\"cbdata\":\" Data returned from the callback.\"}},\"ctxUseAllowance(bytes,uint256,int256)\":{\"details\":\"(For agreements) Use app allowance.\",\"params\":{\"appAllowanceUsedDelta\":\"See app allowance for more details.\",\"appAllowanceWantedMore\":\"See app allowance for more details.\",\"ctx\":\"The current ctx, it will be validated.\"},\"returns\":{\"newCtx\":\"newCtx\"}},\"forwardBatchCall((uint32,address,bytes)[])\":{\"details\":\"Batch call function for trusted forwarders (EIP-2771)\",\"params\":{\"operations\":\"Array of batch operations\"}},\"getAgreementClass(bytes32)\":{\"details\":\"agreementType is the keccak256 hash of: \\\"org.superfluid-finance.agreements.<AGREEMENT_NAME>.<VERSION>\\\"\"},\"getAppLevel(address)\":{\"details\":\"Query app level\",\"params\":{\"app\":\"Super app address\"}},\"getAppManifest(address)\":{\"details\":\"Get the manifest of the super app\",\"params\":{\"app\":\"Super app address\"}},\"getGovernance()\":{\"details\":\"Get the current governance address of the Superfluid host\"},\"getSuperTokenFactory()\":{\"details\":\"Get the super token factory\",\"returns\":{\"factory\":\"The factory\"}},\"getSuperTokenFactoryLogic()\":{\"details\":\"Get the super token factory logic (applicable to upgradable deployment)\",\"returns\":{\"logic\":\"The factory logic\"}},\"isAgreementClassListed(address)\":{\"details\":\"Check if the agreement class is whitelisted\"},\"isAgreementTypeListed(bytes32)\":{\"details\":\"agreementType is the keccak256 hash of: \\\"org.superfluid-finance.agreements.<AGREEMENT_NAME>.<VERSION>\\\"\"},\"isApp(address)\":{\"details\":\"Query if the app is registered\",\"params\":{\"app\":\"Super app address\"}},\"isAppJailed(address)\":{\"details\":\"Query if the app has been jailed\",\"params\":{\"app\":\"Super app address\"}},\"isCompositeAppAllowed(address,address)\":{\"details\":\"Query if source app is allowed to call the target app as downstream app\",\"params\":{\"app\":\"Super app address\",\"targetApp\":\"The target super app address\"}},\"jailApp(bytes,address,uint256)\":{\"details\":\"(For agreements) Jail the app.\",\"params\":{\"app\":\"The super app.\",\"reason\":\"Jail reason code.\"},\"returns\":{\"newCtx\":\"newCtx\"}},\"mapAgreementClasses(uint256)\":{\"details\":\"Map list of the agreement classes using a bitmap\",\"params\":{\"bitmap\":\"Agreement class bitmap\"}},\"registerAgreementClass(address)\":{\"details\":\"Register a new agreement class to the system\",\"params\":{\"agreementClassLogic\":\"Initial agreement class code Modifiers: - onlyGovernance\"}},\"registerApp(uint256)\":{\"custom:deprecated\":\"you should use `registerAppWithKey` or `registerAppByFactory` instead, because app registration is currently governance permissioned on mainnets.\",\"details\":\"Message sender (must be a contract) declares itself as a super app.\",\"params\":{\"configWord\":\"The super app manifest configuration, flags are defined in `SuperAppDefinitions`\"}},\"registerAppByFactory(address,uint256)\":{\"details\":\"Message sender (must be a contract) declares app as a super app\",\"params\":{\"configWord\":\"The super app manifest configuration, flags are defined in `SuperAppDefinitions`\"}},\"registerAppWithKey(uint256,string)\":{\"details\":\"Message sender declares itself as a super app.\",\"params\":{\"configWord\":\"The super app manifest configuration, flags are defined in `SuperAppDefinitions`\",\"registrationKey\":\"The registration key issued by the governance, needed to register on a mainnet. See https://github.com/superfluid-finance/protocol-monorepo/wiki/Super-App-White-listing-Guide On testnets or in dev environment, a placeholder (e.g. empty string) can be used.\"}},\"removeFromAgreementClassesBitmap(uint256,bytes32)\":{\"details\":\"agreementType is the keccak256 hash of: \\\"org.superfluid-finance.agreements.<AGREEMENT_NAME>.<VERSION>\\\"\",\"params\":{\"bitmap\":\"Agreement class bitmap\"}},\"replaceGovernance(address)\":{\"details\":\"Replace the current governance with a new one\"},\"updateAgreementClass(address)\":{\"details\":\"Update code of an agreement class\",\"params\":{\"agreementClassLogic\":\"New code for the agreement class Modifiers: - onlyGovernance\"}},\"updateSuperTokenFactory(address)\":{\"details\":\"Update super token factory\",\"params\":{\"newFactory\":\"New factory logic\"}},\"updateSuperTokenLogic(address)\":{\"details\":\"Refer to ISuperTokenFactory.Upgradability for expected behaviours\"}},\"title\":\"Host interface\",\"version\":1},\"userdoc\":{\"events\":{\"AgreementClassRegistered(bytes32,address)\":{\"notice\":\"Agreement class registered event\"},\"AgreementClassUpdated(bytes32,address)\":{\"notice\":\"Agreement class updated event\"}},\"kind\":\"user\",\"methods\":{\"addToAgreementClassesBitmap(uint256,bytes32)\":{\"notice\":\"Create a new bitmask by adding a agreement class to it\"},\"callAppAction(address,bytes)\":{\"notice\":\"Call app action\"},\"getAgreementClass(bytes32)\":{\"notice\":\"Get agreement class\"},\"isAgreementTypeListed(bytes32)\":{\"notice\":\"Check if the agreement type is whitelisted\"},\"registerAppByFactory(address,uint256)\":{\"notice\":\"On mainnet deployments, only factory contracts pre-authorized by governance can use this. See https://github.com/superfluid-finance/protocol-monorepo/wiki/Super-App-White-listing-Guide\"},\"registerAppWithKey(uint256,string)\":{\"notice\":\"While the message sender must be the super app itself, the transaction sender (tx.origin) must be the deployer account the registration key was issued for.\"},\"removeFromAgreementClassesBitmap(uint256,bytes32)\":{\"notice\":\"Create a new bitmask by removing a agreement class from it\"},\"updateSuperTokenLogic(address)\":{\"notice\":\"Update the super token logic to the latest\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/interfaces/superfluid/ISuperfluid.sol\":\"ISuperfluid\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xbbc8ac883ac3c0078ce5ad3e288fbb3ffcc8a30c3a98c0fda0114d64fc44fca2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://87a7a5d2f6f63f84598af02b8c50ca2df2631cb8ba2453e8d95fcb17e4be9824\",\"dweb:/ipfs/QmR76hqtAcRqoFj33tmNjcWTLrgNsAaakYwnKZ8zoJtKei\"]},\"@openzeppelin/contracts/token/ERC777/IERC777.sol\":{\"keccak256\":\"0xe4e0b7e3f0265ffaa565d26acd2d45f2633f19127ed625e5a05a9f201a87a667\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1762b5bc15a009b5f092ccf547b81e0827c8705884f18e0623e497658514a7ed\",\"dweb:/ipfs/QmTtmVQYuynan3j2uVjdjjRJS1mr7LPRgxSZNnfqC7oxkz\"]},\"project:/contracts/interfaces/superfluid/Definitions.sol\":{\"keccak256\":\"0x199095781e4221b6015d859558da09977f79199f38d342ab4899c2cecdf8cec1\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://9fd3a5a8b16d8517e2af10e20390a9af5adbfa4e783e3a7dd89eb4588db98385\",\"dweb:/ipfs/QmPDtGR43DeMMVsHjUh7FYzMGsFKPpGriRkaahFpN5T5d3\"]},\"project:/contracts/interfaces/superfluid/ISuperAgreement.sol\":{\"keccak256\":\"0xc3a6a907245116bcecc70fe4b207454012e8ce4fa190228fb8bbe39e0b1bc5cf\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://83c116bdae48685d20e5a27c942111e685ec1ef6334e7ff6f6d9af66edbd8025\",\"dweb:/ipfs/QmTnVuNTaRFiDmkAmDk7NFYdfQTW1kqgBZiY2exC6k8jDx\"]},\"project:/contracts/interfaces/superfluid/ISuperApp.sol\":{\"keccak256\":\"0x57f4203168992c940eb6b8c7cc75f854cb36a1f9323b3f39ddc5e4fbe819c043\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://888941dfa3e5004f678f215b98a85d1bf54e412317928a78e0a1cff090773d4c\",\"dweb:/ipfs/QmVe838upcAyqpy1d3oQNHJrbRyWCKHL51zWrMKruvLxFG\"]},\"project:/contracts/interfaces/superfluid/ISuperToken.sol\":{\"keccak256\":\"0x3cb0b7216007b942f7611d7b3d983c0df9408fdd4fd6b799c33fc9033e0abf8b\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://17901a1fd3635f441671e14ece8ecc6806af20c5eb80cca3b7c6e53a51fef7b6\",\"dweb:/ipfs/QmUXXMfU6nmsyEnufyGEwyZ5M7pzpXNTr6vw32e3JjjoZp\"]},\"project:/contracts/interfaces/superfluid/ISuperTokenFactory.sol\":{\"keccak256\":\"0x68a466c978557e47bd7385b1d7d78f1c8fb07462a870efc5a791008e33a4f535\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://d109879bdb7f022560a792af2ff481df729bf1b4b8e1831b8022f4d12892d41d\",\"dweb:/ipfs/QmRSWqHq8CP5XWgyV4mJpPxMg33s312s2K5ndHRHVqqZ8n\"]},\"project:/contracts/interfaces/superfluid/ISuperfluid.sol\":{\"keccak256\":\"0x2d9b845469a35b66f1166406149ac85e933dbe9156f57e4a4078948e6a6e71a4\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://48e5cb11d4b90e42af521e23b33d57e12187c989d8d56be332b1649308168d45\",\"dweb:/ipfs/QmdaTW4HfpFfHjkHiJ3CmZUmCfLJyFCPTnCygwhiNhx3Tu\"]},\"project:/contracts/interfaces/superfluid/ISuperfluidGovernance.sol\":{\"keccak256\":\"0x2166f766b7f61f9bb1376b0948efa0d0c0046b93dc301e51ce495203b145189b\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://929630e6a15f523b142b2897783b2f7a54532ac5ae578bd17a0b7f25a6ca2bd8\",\"dweb:/ipfs/QmTu9ffH9qbQncJGEc24bmnoCGjifQ7BG47AYR8AzMLfXR\"]},\"project:/contracts/interfaces/superfluid/ISuperfluidToken.sol\":{\"keccak256\":\"0x9189eaba9e856cc4932ea29eeaf4e89a09448dde13860591691ec122856fdc75\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://7d5991b906bba706373f5bfe3c2c8789a7a45360a41eee50574272b393c4ab70\",\"dweb:/ipfs/QmVCXVnYA13vMNxa7rGzNB129sUXiGE1asuHdnEMEPVZsp\"]},\"project:/contracts/interfaces/tokens/ERC20WithTokenInfo.sol\":{\"keccak256\":\"0x66708dae3fcd06e6fc0a46f2959fc2d1e6b9361f28598337339d26af8eb8c0f9\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://77b80718cec21b81ef190c19fb9fbe73913a95c71f7e6715f671bbe8a224dafc\",\"dweb:/ipfs/QmUdsc6DF2Bgih5VZm7sfaECjhGmwE7tAx8pMkzGQgVKQw\"]},\"project:/contracts/interfaces/tokens/TokenInfo.sol\":{\"keccak256\":\"0x70e573644a0ff271c0ccef526809e9d9ab4950ec58755ca84e833cde3b8f3df0\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://aea3709687cc37ba625f4cc882fbdb149a7bf5be5afe2b030203c8719641a77b\",\"dweb:/ipfs/QmVpvfR6ZheE5wNUK9CobaVBgVvEnEPkvjWF9cfwyZr7eQ\"]}},\"version\":1}",
|
|
1004
|
+
"metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"agreementType\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"code\",\"type\":\"address\"}],\"name\":\"AgreementClassRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"agreementType\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"code\",\"type\":\"address\"}],\"name\":\"AgreementClassUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"}],\"name\":\"AppRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"contract ISuperfluidGovernance\",\"name\":\"oldGov\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"contract ISuperfluidGovernance\",\"name\":\"newGov\",\"type\":\"address\"}],\"name\":\"GovernanceReplaced\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"reason\",\"type\":\"uint256\"}],\"name\":\"Jail\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"contract ISuperTokenFactory\",\"name\":\"newFactory\",\"type\":\"address\"}],\"name\":\"SuperTokenFactoryUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract ISuperToken\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"code\",\"type\":\"address\"}],\"name\":\"SuperTokenLogicUpdated\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"agreementType\",\"type\":\"bytes32\"}],\"name\":\"addToAgreementClassesBitmap\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"newBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"targetApp\",\"type\":\"address\"}],\"name\":\"allowCompositeApp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"},{\"internalType\":\"int256\",\"name\":\"appAllowanceUsedDelta\",\"type\":\"int256\"}],\"name\":\"appCallbackPop\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"newCtx\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"},{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"appAllowanceGranted\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"appAllowanceUsed\",\"type\":\"int256\"},{\"internalType\":\"contract ISuperfluidToken\",\"name\":\"appAllowanceToken\",\"type\":\"address\"}],\"name\":\"appCallbackPush\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"newCtx\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"operationType\",\"type\":\"uint32\"},{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"internalType\":\"struct ISuperfluid.Operation[]\",\"name\":\"operations\",\"type\":\"tuple[]\"}],\"name\":\"batchCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperAgreement\",\"name\":\"agreementClass\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"userData\",\"type\":\"bytes\"}],\"name\":\"callAgreement\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"returnedData\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperAgreement\",\"name\":\"agreementClass\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"userData\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"}],\"name\":\"callAgreementWithContext\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"newCtx\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"returnedData\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"callAppAction\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"returnedData\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"}],\"name\":\"callAppActionWithContext\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"newCtx\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"isTermination\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"}],\"name\":\"callAppAfterCallback\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"newCtx\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"isTermination\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"}],\"name\":\"callAppBeforeCallback\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"cbdata\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"appAllowanceWantedMore\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"appAllowanceUsedDelta\",\"type\":\"int256\"}],\"name\":\"ctxUseAllowance\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"newCtx\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"}],\"name\":\"decodeCtx\",\"outputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"appLevel\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"callType\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"},{\"internalType\":\"bytes4\",\"name\":\"agreementSelector\",\"type\":\"bytes4\"},{\"internalType\":\"bytes\",\"name\":\"userData\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"appAllowanceGranted\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"appAllowanceWanted\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"appAllowanceUsed\",\"type\":\"int256\"},{\"internalType\":\"address\",\"name\":\"appAddress\",\"type\":\"address\"},{\"internalType\":\"contract ISuperfluidToken\",\"name\":\"appAllowanceToken\",\"type\":\"address\"}],\"internalType\":\"struct ISuperfluid.Context\",\"name\":\"context\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"operationType\",\"type\":\"uint32\"},{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"internalType\":\"struct ISuperfluid.Operation[]\",\"name\":\"operations\",\"type\":\"tuple[]\"}],\"name\":\"forwardBatchCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"agreementType\",\"type\":\"bytes32\"}],\"name\":\"getAgreementClass\",\"outputs\":[{\"internalType\":\"contract ISuperAgreement\",\"name\":\"agreementClass\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"}],\"name\":\"getAppLevel\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"appLevel\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"}],\"name\":\"getAppManifest\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isSuperApp\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isJailed\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"noopMask\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGovernance\",\"outputs\":[{\"internalType\":\"contract ISuperfluidGovernance\",\"name\":\"governance\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getNow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getSuperTokenFactory\",\"outputs\":[{\"internalType\":\"contract ISuperTokenFactory\",\"name\":\"factory\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getSuperTokenFactoryLogic\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"logic\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperAgreement\",\"name\":\"agreementClass\",\"type\":\"address\"}],\"name\":\"isAgreementClassListed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"yes\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"agreementType\",\"type\":\"bytes32\"}],\"name\":\"isAgreementTypeListed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"yes\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"}],\"name\":\"isApp\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"}],\"name\":\"isAppJailed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isJail\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"contract ISuperApp\",\"name\":\"targetApp\",\"type\":\"address\"}],\"name\":\"isCompositeAppAllowed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isAppAllowed\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"}],\"name\":\"isCtxValid\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"ctx\",\"type\":\"bytes\"},{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"reason\",\"type\":\"uint256\"}],\"name\":\"jailApp\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"newCtx\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bitmap\",\"type\":\"uint256\"}],\"name\":\"mapAgreementClasses\",\"outputs\":[{\"internalType\":\"contract ISuperAgreement[]\",\"name\":\"agreementClasses\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperAgreement\",\"name\":\"agreementClassLogic\",\"type\":\"address\"}],\"name\":\"registerAgreementClass\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"configWord\",\"type\":\"uint256\"}],\"name\":\"registerApp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperApp\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"configWord\",\"type\":\"uint256\"}],\"name\":\"registerAppByFactory\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"configWord\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"registrationKey\",\"type\":\"string\"}],\"name\":\"registerAppWithKey\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bitmap\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"agreementType\",\"type\":\"bytes32\"}],\"name\":\"removeFromAgreementClassesBitmap\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"newBitmap\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluidGovernance\",\"name\":\"newGov\",\"type\":\"address\"}],\"name\":\"replaceGovernance\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperAgreement\",\"name\":\"agreementClassLogic\",\"type\":\"address\"}],\"name\":\"updateAgreementClass\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperTokenFactory\",\"name\":\"newFactory\",\"type\":\"address\"}],\"name\":\"updateSuperTokenFactory\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperToken\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"updateSuperTokenLogic\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"Superfluid NOTE: This is the central contract of the system where super agreement, super app and super token features are connected. The Superfluid host contract is also the entry point for the protocol users, where batch call and meta transaction are provided for UX improvements.\",\"events\":{\"AgreementClassRegistered(bytes32,address)\":{\"details\":\"agreementType is the keccak256 hash of: \\\"org.superfluid-finance.agreements.<AGREEMENT_NAME>.<VERSION>\\\"\",\"params\":{\"agreementType\":\"The agreement type registered\",\"code\":\"Address of the new agreement\"}},\"AgreementClassUpdated(bytes32,address)\":{\"details\":\"agreementType is the keccak256 hash of: \\\"org.superfluid-finance.agreements.<AGREEMENT_NAME>.<VERSION>\\\"\",\"params\":{\"agreementType\":\"The agreement type updated\",\"code\":\"Address of the new agreement\"}},\"AppRegistered(address)\":{\"details\":\"App registered event\",\"params\":{\"app\":\"Address of jailed app\"}},\"GovernanceReplaced(address,address)\":{\"details\":\"Governance replaced event\",\"params\":{\"newGov\":\"Address of the new governance contract\",\"oldGov\":\"Address of the old governance contract\"}},\"Jail(address,uint256)\":{\"details\":\"Jail event for the app\",\"params\":{\"app\":\"Address of jailed app\",\"reason\":\"Reason the app is jailed (see Definitions.sol for the full list)\"}},\"SuperTokenFactoryUpdated(address)\":{\"details\":\"SuperToken factory updated event\",\"params\":{\"newFactory\":\"Address of the new factory\"}},\"SuperTokenLogicUpdated(address,address)\":{\"details\":\"SuperToken logic updated event\",\"params\":{\"code\":\"Address of the new SuperToken logic\"}}},\"kind\":\"dev\",\"methods\":{\"addToAgreementClassesBitmap(uint256,bytes32)\":{\"details\":\"agreementType is the keccak256 hash of: \\\"org.superfluid-finance.agreements.<AGREEMENT_NAME>.<VERSION>\\\"\",\"params\":{\"bitmap\":\"Agreement class bitmap\"}},\"allowCompositeApp(address)\":{\"details\":\"Whitelist the target app for app composition for the source app (msg.sender)\",\"params\":{\"targetApp\":\"The target super app address\"}},\"appCallbackPop(bytes,int256)\":{\"details\":\"(For agreements) Pop from the current app callback stack\",\"params\":{\"appAllowanceUsedDelta\":\"App allowance used by the app.\",\"ctx\":\"The ctx that was pushed before the callback stack.\"},\"returns\":{\"newCtx\":\"[SECURITY] NOTE: - Here we cannot do assertValidCtx(ctx), since we do not really save the stack in memory. - Hence there is still implicit trust that the agreement handles the callback push/pop pair correctly.\"}},\"appCallbackPush(bytes,address,uint256,int256,address)\":{\"details\":\"(For agreements) Create a new callback stack\",\"params\":{\"app\":\"The super app.\",\"appAllowanceGranted\":\"App allowance granted so far.\",\"appAllowanceUsed\":\"App allowance used so far.\",\"ctx\":\"The current ctx, it will be validated.\"},\"returns\":{\"newCtx\":\"newCtx\"}},\"batchCall((uint32,address,bytes)[])\":{\"details\":\"Batch call function\",\"params\":{\"operations\":\"Array of batch operations\"}},\"callAgreement(address,bytes,bytes)\":{\"details\":\"Call agreement function\",\"params\":{\"agreementClass\":\"The agreement address you are calling\",\"callData\":\"The contextual call data with placeholder ctx\",\"userData\":\"Extra user data being sent to the super app callbacks\"}},\"callAppAction(address,bytes)\":{\"details\":\"Main use case is calling app action in a batch call via the host\",\"params\":{\"callData\":\"The contextual call data NOTE: See \\\"Contextless Call Proxies\\\" above for more about contextual call data.\"}},\"callAppAfterCallback(address,bytes,bool,bytes)\":{\"details\":\"(For agreements) Call the app after callback\",\"params\":{\"app\":\"The super app.\",\"callData\":\"The call data sending to the super app.\",\"ctx\":\"Current ctx, it will be validated.\",\"isTermination\":\"Is it a termination callback?\"},\"returns\":{\"newCtx\":\"newCtx\"}},\"callAppBeforeCallback(address,bytes,bool,bytes)\":{\"details\":\"(For agreements) StaticCall the app before callback\",\"params\":{\"app\":\"The super app.\",\"callData\":\"The call data sending to the super app.\",\"ctx\":\"Current ctx, it will be validated.\",\"isTermination\":\"Is it a termination callback?\"},\"returns\":{\"cbdata\":\" Data returned from the callback.\"}},\"ctxUseAllowance(bytes,uint256,int256)\":{\"details\":\"(For agreements) Use app allowance.\",\"params\":{\"appAllowanceUsedDelta\":\"See app allowance for more details.\",\"appAllowanceWantedMore\":\"See app allowance for more details.\",\"ctx\":\"The current ctx, it will be validated.\"},\"returns\":{\"newCtx\":\"newCtx\"}},\"forwardBatchCall((uint32,address,bytes)[])\":{\"details\":\"Batch call function for trusted forwarders (EIP-2771)\",\"params\":{\"operations\":\"Array of batch operations\"}},\"getAgreementClass(bytes32)\":{\"details\":\"agreementType is the keccak256 hash of: \\\"org.superfluid-finance.agreements.<AGREEMENT_NAME>.<VERSION>\\\"\"},\"getAppLevel(address)\":{\"details\":\"Query app level\",\"params\":{\"app\":\"Super app address\"}},\"getAppManifest(address)\":{\"details\":\"Get the manifest of the super app\",\"params\":{\"app\":\"Super app address\"}},\"getGovernance()\":{\"details\":\"Get the current governance address of the Superfluid host\"},\"getSuperTokenFactory()\":{\"details\":\"Get the super token factory\",\"returns\":{\"factory\":\"The factory\"}},\"getSuperTokenFactoryLogic()\":{\"details\":\"Get the super token factory logic (applicable to upgradable deployment)\",\"returns\":{\"logic\":\"The factory logic\"}},\"isAgreementClassListed(address)\":{\"details\":\"Check if the agreement class is whitelisted\"},\"isAgreementTypeListed(bytes32)\":{\"details\":\"agreementType is the keccak256 hash of: \\\"org.superfluid-finance.agreements.<AGREEMENT_NAME>.<VERSION>\\\"\"},\"isApp(address)\":{\"details\":\"Query if the app is registered\",\"params\":{\"app\":\"Super app address\"}},\"isAppJailed(address)\":{\"details\":\"Query if the app has been jailed\",\"params\":{\"app\":\"Super app address\"}},\"isCompositeAppAllowed(address,address)\":{\"details\":\"Query if source app is allowed to call the target app as downstream app\",\"params\":{\"app\":\"Super app address\",\"targetApp\":\"The target super app address\"}},\"jailApp(bytes,address,uint256)\":{\"details\":\"(For agreements) Jail the app.\",\"params\":{\"app\":\"The super app.\",\"reason\":\"Jail reason code.\"},\"returns\":{\"newCtx\":\"newCtx\"}},\"mapAgreementClasses(uint256)\":{\"details\":\"Map list of the agreement classes using a bitmap\",\"params\":{\"bitmap\":\"Agreement class bitmap\"}},\"registerAgreementClass(address)\":{\"details\":\"Register a new agreement class to the system\",\"params\":{\"agreementClassLogic\":\"Initial agreement class code Modifiers: - onlyGovernance\"}},\"registerApp(uint256)\":{\"custom:deprecated\":\"you should use `registerAppWithKey` or `registerAppByFactory` instead, because app registration is currently governance permissioned on mainnets.\",\"details\":\"Message sender (must be a contract) declares itself as a super app.\",\"params\":{\"configWord\":\"The super app manifest configuration, flags are defined in `SuperAppDefinitions`\"}},\"registerAppByFactory(address,uint256)\":{\"details\":\"Message sender (must be a contract) declares app as a super app\",\"params\":{\"configWord\":\"The super app manifest configuration, flags are defined in `SuperAppDefinitions`\"}},\"registerAppWithKey(uint256,string)\":{\"details\":\"Message sender declares itself as a super app.\",\"params\":{\"configWord\":\"The super app manifest configuration, flags are defined in `SuperAppDefinitions`\",\"registrationKey\":\"The registration key issued by the governance, needed to register on a mainnet. See https://github.com/superfluid-finance/protocol-monorepo/wiki/Super-App-White-listing-Guide On testnets or in dev environment, a placeholder (e.g. empty string) can be used.\"}},\"removeFromAgreementClassesBitmap(uint256,bytes32)\":{\"details\":\"agreementType is the keccak256 hash of: \\\"org.superfluid-finance.agreements.<AGREEMENT_NAME>.<VERSION>\\\"\",\"params\":{\"bitmap\":\"Agreement class bitmap\"}},\"replaceGovernance(address)\":{\"details\":\"Replace the current governance with a new one\"},\"updateAgreementClass(address)\":{\"details\":\"Update code of an agreement class\",\"params\":{\"agreementClassLogic\":\"New code for the agreement class Modifiers: - onlyGovernance\"}},\"updateSuperTokenFactory(address)\":{\"details\":\"Update super token factory\",\"params\":{\"newFactory\":\"New factory logic\"}},\"updateSuperTokenLogic(address)\":{\"details\":\"Refer to ISuperTokenFactory.Upgradability for expected behaviours\"}},\"title\":\"Host interface\",\"version\":1},\"userdoc\":{\"events\":{\"AgreementClassRegistered(bytes32,address)\":{\"notice\":\"Agreement class registered event\"},\"AgreementClassUpdated(bytes32,address)\":{\"notice\":\"Agreement class updated event\"}},\"kind\":\"user\",\"methods\":{\"addToAgreementClassesBitmap(uint256,bytes32)\":{\"notice\":\"Create a new bitmask by adding a agreement class to it\"},\"callAppAction(address,bytes)\":{\"notice\":\"Call app action\"},\"getAgreementClass(bytes32)\":{\"notice\":\"Get agreement class\"},\"isAgreementTypeListed(bytes32)\":{\"notice\":\"Check if the agreement type is whitelisted\"},\"registerAppByFactory(address,uint256)\":{\"notice\":\"On mainnet deployments, only factory contracts pre-authorized by governance can use this. See https://github.com/superfluid-finance/protocol-monorepo/wiki/Super-App-White-listing-Guide\"},\"registerAppWithKey(uint256,string)\":{\"notice\":\"While the message sender must be the super app itself, the transaction sender (tx.origin) must be the deployer account the registration key was issued for.\"},\"removeFromAgreementClassesBitmap(uint256,bytes32)\":{\"notice\":\"Create a new bitmask by removing a agreement class from it\"},\"updateSuperTokenLogic(address)\":{\"notice\":\"Update the super token logic to the latest\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/interfaces/superfluid/ISuperfluid.sol\":\"ISuperfluid\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xbbc8ac883ac3c0078ce5ad3e288fbb3ffcc8a30c3a98c0fda0114d64fc44fca2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://87a7a5d2f6f63f84598af02b8c50ca2df2631cb8ba2453e8d95fcb17e4be9824\",\"dweb:/ipfs/QmR76hqtAcRqoFj33tmNjcWTLrgNsAaakYwnKZ8zoJtKei\"]},\"@openzeppelin/contracts/token/ERC777/IERC777.sol\":{\"keccak256\":\"0xe4e0b7e3f0265ffaa565d26acd2d45f2633f19127ed625e5a05a9f201a87a667\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1762b5bc15a009b5f092ccf547b81e0827c8705884f18e0623e497658514a7ed\",\"dweb:/ipfs/QmTtmVQYuynan3j2uVjdjjRJS1mr7LPRgxSZNnfqC7oxkz\"]},\"project:/contracts/interfaces/superfluid/Definitions.sol\":{\"keccak256\":\"0x199095781e4221b6015d859558da09977f79199f38d342ab4899c2cecdf8cec1\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://9fd3a5a8b16d8517e2af10e20390a9af5adbfa4e783e3a7dd89eb4588db98385\",\"dweb:/ipfs/QmPDtGR43DeMMVsHjUh7FYzMGsFKPpGriRkaahFpN5T5d3\"]},\"project:/contracts/interfaces/superfluid/ISuperAgreement.sol\":{\"keccak256\":\"0xc3a6a907245116bcecc70fe4b207454012e8ce4fa190228fb8bbe39e0b1bc5cf\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://83c116bdae48685d20e5a27c942111e685ec1ef6334e7ff6f6d9af66edbd8025\",\"dweb:/ipfs/QmTnVuNTaRFiDmkAmDk7NFYdfQTW1kqgBZiY2exC6k8jDx\"]},\"project:/contracts/interfaces/superfluid/ISuperApp.sol\":{\"keccak256\":\"0x57f4203168992c940eb6b8c7cc75f854cb36a1f9323b3f39ddc5e4fbe819c043\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://888941dfa3e5004f678f215b98a85d1bf54e412317928a78e0a1cff090773d4c\",\"dweb:/ipfs/QmVe838upcAyqpy1d3oQNHJrbRyWCKHL51zWrMKruvLxFG\"]},\"project:/contracts/interfaces/superfluid/ISuperToken.sol\":{\"keccak256\":\"0x3cb0b7216007b942f7611d7b3d983c0df9408fdd4fd6b799c33fc9033e0abf8b\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://17901a1fd3635f441671e14ece8ecc6806af20c5eb80cca3b7c6e53a51fef7b6\",\"dweb:/ipfs/QmUXXMfU6nmsyEnufyGEwyZ5M7pzpXNTr6vw32e3JjjoZp\"]},\"project:/contracts/interfaces/superfluid/ISuperTokenFactory.sol\":{\"keccak256\":\"0x68a466c978557e47bd7385b1d7d78f1c8fb07462a870efc5a791008e33a4f535\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://d109879bdb7f022560a792af2ff481df729bf1b4b8e1831b8022f4d12892d41d\",\"dweb:/ipfs/QmRSWqHq8CP5XWgyV4mJpPxMg33s312s2K5ndHRHVqqZ8n\"]},\"project:/contracts/interfaces/superfluid/ISuperfluid.sol\":{\"keccak256\":\"0x2d9b845469a35b66f1166406149ac85e933dbe9156f57e4a4078948e6a6e71a4\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://48e5cb11d4b90e42af521e23b33d57e12187c989d8d56be332b1649308168d45\",\"dweb:/ipfs/QmdaTW4HfpFfHjkHiJ3CmZUmCfLJyFCPTnCygwhiNhx3Tu\"]},\"project:/contracts/interfaces/superfluid/ISuperfluidGovernance.sol\":{\"keccak256\":\"0x2166f766b7f61f9bb1376b0948efa0d0c0046b93dc301e51ce495203b145189b\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://929630e6a15f523b142b2897783b2f7a54532ac5ae578bd17a0b7f25a6ca2bd8\",\"dweb:/ipfs/QmTu9ffH9qbQncJGEc24bmnoCGjifQ7BG47AYR8AzMLfXR\"]},\"project:/contracts/interfaces/superfluid/ISuperfluidToken.sol\":{\"keccak256\":\"0x518b869178aafffde40c654a1e24b3b1a2b5e42e5e8f17562556f404db8b9434\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://458ce84666b418fa3a7569c0e109db4d920fb6d1cb67ebc4c497c9c71107d93b\",\"dweb:/ipfs/QmV9nqhRF7MDGkV6UW3WWcqeXov2vmqHuRcvbqaaV8yP6u\"]},\"project:/contracts/interfaces/tokens/ERC20WithTokenInfo.sol\":{\"keccak256\":\"0x66708dae3fcd06e6fc0a46f2959fc2d1e6b9361f28598337339d26af8eb8c0f9\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://77b80718cec21b81ef190c19fb9fbe73913a95c71f7e6715f671bbe8a224dafc\",\"dweb:/ipfs/QmUdsc6DF2Bgih5VZm7sfaECjhGmwE7tAx8pMkzGQgVKQw\"]},\"project:/contracts/interfaces/tokens/TokenInfo.sol\":{\"keccak256\":\"0x70e573644a0ff271c0ccef526809e9d9ab4950ec58755ca84e833cde3b8f3df0\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://aea3709687cc37ba625f4cc882fbdb149a7bf5be5afe2b030203c8719641a77b\",\"dweb:/ipfs/QmVpvfR6ZheE5wNUK9CobaVBgVvEnEPkvjWF9cfwyZr7eQ\"]}},\"version\":1}",
|
|
1005
1005
|
"bytecode": "0x",
|
|
1006
1006
|
"deployedBytecode": "0x",
|
|
1007
1007
|
"immutableReferences": {},
|
|
@@ -6362,7 +6362,7 @@
|
|
|
6362
6362
|
},
|
|
6363
6363
|
"networks": {},
|
|
6364
6364
|
"schemaVersion": "3.4.7",
|
|
6365
|
-
"updatedAt": "2022-
|
|
6365
|
+
"updatedAt": "2022-06-06T10:25:55.173Z",
|
|
6366
6366
|
"devdoc": {
|
|
6367
6367
|
"author": "Superfluid NOTE: This is the central contract of the system where super agreement, super app and super token features are connected. The Superfluid host contract is also the entry point for the protocol users, where batch call and meta transaction are provided for UX improvements.",
|
|
6368
6368
|
"events": {
|
|
@@ -221,7 +221,7 @@
|
|
|
221
221
|
"type": "function"
|
|
222
222
|
}
|
|
223
223
|
],
|
|
224
|
-
"metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"contract ISuperToken[]\",\"name\":\"tokens\",\"type\":\"address[]\"}],\"name\":\"batchUpdateSuperTokenLogic\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"contract ISuperfluidToken\",\"name\":\"superToken\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"}],\"name\":\"clearConfig\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"contract ISuperfluidToken\",\"name\":\"superToken\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"}],\"name\":\"getConfigAsAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"contract ISuperfluidToken\",\"name\":\"superToken\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"}],\"name\":\"getConfigAsUint256\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"agreementClass\",\"type\":\"address\"}],\"name\":\"registerAgreementClass\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"newGov\",\"type\":\"address\"}],\"name\":\"replaceGovernance\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"contract ISuperfluidToken\",\"name\":\"superToken\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"name\":\"setConfig\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"contract ISuperfluidToken\",\"name\":\"superToken\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"setConfig\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"hostNewLogic\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"agreementClassNewLogics\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"superTokenFactoryNewLogic\",\"type\":\"address\"}],\"name\":\"updateContracts\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"Superfluid\",\"kind\":\"dev\",\"methods\":{\"batchUpdateSuperTokenLogic(address,address[])\":{\"details\":\"Update supertoken logic contract to the latest that is managed by the super token factory\"},\"clearConfig(address,address,bytes32)\":{\"details\":\"Clear configuration\"},\"getConfigAsAddress(address,address,bytes32)\":{\"details\":\"Get configuration as address value\"},\"getConfigAsUint256(address,address,bytes32)\":{\"details\":\"Get configuration as uint256 value\"},\"registerAgreementClass(address,address)\":{\"details\":\"Register a new agreement class\"},\"replaceGovernance(address,address)\":{\"details\":\"Replace the current governance with a new governance\"},\"setConfig(address,address,bytes32,address)\":{\"details\":\"Set configuration as address value\"},\"setConfig(address,address,bytes32,uint256)\":{\"details\":\"Set configuration as uint256 value\"},\"updateContracts(address,address,address[],address)\":{\"details\":\"Update logics of the contracts NOTE: - Because they might have inter-dependencies, it is good to have one single function to update them all\"}},\"title\":\"Superfluid governance interface\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/interfaces/superfluid/ISuperfluidGovernance.sol\":\"ISuperfluidGovernance\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xbbc8ac883ac3c0078ce5ad3e288fbb3ffcc8a30c3a98c0fda0114d64fc44fca2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://87a7a5d2f6f63f84598af02b8c50ca2df2631cb8ba2453e8d95fcb17e4be9824\",\"dweb:/ipfs/QmR76hqtAcRqoFj33tmNjcWTLrgNsAaakYwnKZ8zoJtKei\"]},\"@openzeppelin/contracts/token/ERC777/IERC777.sol\":{\"keccak256\":\"0xe4e0b7e3f0265ffaa565d26acd2d45f2633f19127ed625e5a05a9f201a87a667\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1762b5bc15a009b5f092ccf547b81e0827c8705884f18e0623e497658514a7ed\",\"dweb:/ipfs/QmTtmVQYuynan3j2uVjdjjRJS1mr7LPRgxSZNnfqC7oxkz\"]},\"project:/contracts/interfaces/superfluid/Definitions.sol\":{\"keccak256\":\"0x199095781e4221b6015d859558da09977f79199f38d342ab4899c2cecdf8cec1\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://9fd3a5a8b16d8517e2af10e20390a9af5adbfa4e783e3a7dd89eb4588db98385\",\"dweb:/ipfs/QmPDtGR43DeMMVsHjUh7FYzMGsFKPpGriRkaahFpN5T5d3\"]},\"project:/contracts/interfaces/superfluid/ISuperAgreement.sol\":{\"keccak256\":\"0xc3a6a907245116bcecc70fe4b207454012e8ce4fa190228fb8bbe39e0b1bc5cf\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://83c116bdae48685d20e5a27c942111e685ec1ef6334e7ff6f6d9af66edbd8025\",\"dweb:/ipfs/QmTnVuNTaRFiDmkAmDk7NFYdfQTW1kqgBZiY2exC6k8jDx\"]},\"project:/contracts/interfaces/superfluid/ISuperApp.sol\":{\"keccak256\":\"0x57f4203168992c940eb6b8c7cc75f854cb36a1f9323b3f39ddc5e4fbe819c043\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://888941dfa3e5004f678f215b98a85d1bf54e412317928a78e0a1cff090773d4c\",\"dweb:/ipfs/QmVe838upcAyqpy1d3oQNHJrbRyWCKHL51zWrMKruvLxFG\"]},\"project:/contracts/interfaces/superfluid/ISuperToken.sol\":{\"keccak256\":\"0x3cb0b7216007b942f7611d7b3d983c0df9408fdd4fd6b799c33fc9033e0abf8b\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://17901a1fd3635f441671e14ece8ecc6806af20c5eb80cca3b7c6e53a51fef7b6\",\"dweb:/ipfs/QmUXXMfU6nmsyEnufyGEwyZ5M7pzpXNTr6vw32e3JjjoZp\"]},\"project:/contracts/interfaces/superfluid/ISuperTokenFactory.sol\":{\"keccak256\":\"0x68a466c978557e47bd7385b1d7d78f1c8fb07462a870efc5a791008e33a4f535\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://d109879bdb7f022560a792af2ff481df729bf1b4b8e1831b8022f4d12892d41d\",\"dweb:/ipfs/QmRSWqHq8CP5XWgyV4mJpPxMg33s312s2K5ndHRHVqqZ8n\"]},\"project:/contracts/interfaces/superfluid/ISuperfluid.sol\":{\"keccak256\":\"0x2d9b845469a35b66f1166406149ac85e933dbe9156f57e4a4078948e6a6e71a4\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://48e5cb11d4b90e42af521e23b33d57e12187c989d8d56be332b1649308168d45\",\"dweb:/ipfs/QmdaTW4HfpFfHjkHiJ3CmZUmCfLJyFCPTnCygwhiNhx3Tu\"]},\"project:/contracts/interfaces/superfluid/ISuperfluidGovernance.sol\":{\"keccak256\":\"0x2166f766b7f61f9bb1376b0948efa0d0c0046b93dc301e51ce495203b145189b\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://929630e6a15f523b142b2897783b2f7a54532ac5ae578bd17a0b7f25a6ca2bd8\",\"dweb:/ipfs/QmTu9ffH9qbQncJGEc24bmnoCGjifQ7BG47AYR8AzMLfXR\"]},\"project:/contracts/interfaces/superfluid/ISuperfluidToken.sol\":{\"keccak256\":\"
|
|
224
|
+
"metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"contract ISuperToken[]\",\"name\":\"tokens\",\"type\":\"address[]\"}],\"name\":\"batchUpdateSuperTokenLogic\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"contract ISuperfluidToken\",\"name\":\"superToken\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"}],\"name\":\"clearConfig\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"contract ISuperfluidToken\",\"name\":\"superToken\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"}],\"name\":\"getConfigAsAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"contract ISuperfluidToken\",\"name\":\"superToken\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"}],\"name\":\"getConfigAsUint256\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"agreementClass\",\"type\":\"address\"}],\"name\":\"registerAgreementClass\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"newGov\",\"type\":\"address\"}],\"name\":\"replaceGovernance\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"contract ISuperfluidToken\",\"name\":\"superToken\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"name\":\"setConfig\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"contract ISuperfluidToken\",\"name\":\"superToken\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"key\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"setConfig\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISuperfluid\",\"name\":\"host\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"hostNewLogic\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"agreementClassNewLogics\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"superTokenFactoryNewLogic\",\"type\":\"address\"}],\"name\":\"updateContracts\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"Superfluid\",\"kind\":\"dev\",\"methods\":{\"batchUpdateSuperTokenLogic(address,address[])\":{\"details\":\"Update supertoken logic contract to the latest that is managed by the super token factory\"},\"clearConfig(address,address,bytes32)\":{\"details\":\"Clear configuration\"},\"getConfigAsAddress(address,address,bytes32)\":{\"details\":\"Get configuration as address value\"},\"getConfigAsUint256(address,address,bytes32)\":{\"details\":\"Get configuration as uint256 value\"},\"registerAgreementClass(address,address)\":{\"details\":\"Register a new agreement class\"},\"replaceGovernance(address,address)\":{\"details\":\"Replace the current governance with a new governance\"},\"setConfig(address,address,bytes32,address)\":{\"details\":\"Set configuration as address value\"},\"setConfig(address,address,bytes32,uint256)\":{\"details\":\"Set configuration as uint256 value\"},\"updateContracts(address,address,address[],address)\":{\"details\":\"Update logics of the contracts NOTE: - Because they might have inter-dependencies, it is good to have one single function to update them all\"}},\"title\":\"Superfluid governance interface\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/interfaces/superfluid/ISuperfluidGovernance.sol\":\"ISuperfluidGovernance\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xbbc8ac883ac3c0078ce5ad3e288fbb3ffcc8a30c3a98c0fda0114d64fc44fca2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://87a7a5d2f6f63f84598af02b8c50ca2df2631cb8ba2453e8d95fcb17e4be9824\",\"dweb:/ipfs/QmR76hqtAcRqoFj33tmNjcWTLrgNsAaakYwnKZ8zoJtKei\"]},\"@openzeppelin/contracts/token/ERC777/IERC777.sol\":{\"keccak256\":\"0xe4e0b7e3f0265ffaa565d26acd2d45f2633f19127ed625e5a05a9f201a87a667\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1762b5bc15a009b5f092ccf547b81e0827c8705884f18e0623e497658514a7ed\",\"dweb:/ipfs/QmTtmVQYuynan3j2uVjdjjRJS1mr7LPRgxSZNnfqC7oxkz\"]},\"project:/contracts/interfaces/superfluid/Definitions.sol\":{\"keccak256\":\"0x199095781e4221b6015d859558da09977f79199f38d342ab4899c2cecdf8cec1\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://9fd3a5a8b16d8517e2af10e20390a9af5adbfa4e783e3a7dd89eb4588db98385\",\"dweb:/ipfs/QmPDtGR43DeMMVsHjUh7FYzMGsFKPpGriRkaahFpN5T5d3\"]},\"project:/contracts/interfaces/superfluid/ISuperAgreement.sol\":{\"keccak256\":\"0xc3a6a907245116bcecc70fe4b207454012e8ce4fa190228fb8bbe39e0b1bc5cf\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://83c116bdae48685d20e5a27c942111e685ec1ef6334e7ff6f6d9af66edbd8025\",\"dweb:/ipfs/QmTnVuNTaRFiDmkAmDk7NFYdfQTW1kqgBZiY2exC6k8jDx\"]},\"project:/contracts/interfaces/superfluid/ISuperApp.sol\":{\"keccak256\":\"0x57f4203168992c940eb6b8c7cc75f854cb36a1f9323b3f39ddc5e4fbe819c043\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://888941dfa3e5004f678f215b98a85d1bf54e412317928a78e0a1cff090773d4c\",\"dweb:/ipfs/QmVe838upcAyqpy1d3oQNHJrbRyWCKHL51zWrMKruvLxFG\"]},\"project:/contracts/interfaces/superfluid/ISuperToken.sol\":{\"keccak256\":\"0x3cb0b7216007b942f7611d7b3d983c0df9408fdd4fd6b799c33fc9033e0abf8b\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://17901a1fd3635f441671e14ece8ecc6806af20c5eb80cca3b7c6e53a51fef7b6\",\"dweb:/ipfs/QmUXXMfU6nmsyEnufyGEwyZ5M7pzpXNTr6vw32e3JjjoZp\"]},\"project:/contracts/interfaces/superfluid/ISuperTokenFactory.sol\":{\"keccak256\":\"0x68a466c978557e47bd7385b1d7d78f1c8fb07462a870efc5a791008e33a4f535\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://d109879bdb7f022560a792af2ff481df729bf1b4b8e1831b8022f4d12892d41d\",\"dweb:/ipfs/QmRSWqHq8CP5XWgyV4mJpPxMg33s312s2K5ndHRHVqqZ8n\"]},\"project:/contracts/interfaces/superfluid/ISuperfluid.sol\":{\"keccak256\":\"0x2d9b845469a35b66f1166406149ac85e933dbe9156f57e4a4078948e6a6e71a4\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://48e5cb11d4b90e42af521e23b33d57e12187c989d8d56be332b1649308168d45\",\"dweb:/ipfs/QmdaTW4HfpFfHjkHiJ3CmZUmCfLJyFCPTnCygwhiNhx3Tu\"]},\"project:/contracts/interfaces/superfluid/ISuperfluidGovernance.sol\":{\"keccak256\":\"0x2166f766b7f61f9bb1376b0948efa0d0c0046b93dc301e51ce495203b145189b\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://929630e6a15f523b142b2897783b2f7a54532ac5ae578bd17a0b7f25a6ca2bd8\",\"dweb:/ipfs/QmTu9ffH9qbQncJGEc24bmnoCGjifQ7BG47AYR8AzMLfXR\"]},\"project:/contracts/interfaces/superfluid/ISuperfluidToken.sol\":{\"keccak256\":\"0x518b869178aafffde40c654a1e24b3b1a2b5e42e5e8f17562556f404db8b9434\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://458ce84666b418fa3a7569c0e109db4d920fb6d1cb67ebc4c497c9c71107d93b\",\"dweb:/ipfs/QmV9nqhRF7MDGkV6UW3WWcqeXov2vmqHuRcvbqaaV8yP6u\"]},\"project:/contracts/interfaces/tokens/ERC20WithTokenInfo.sol\":{\"keccak256\":\"0x66708dae3fcd06e6fc0a46f2959fc2d1e6b9361f28598337339d26af8eb8c0f9\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://77b80718cec21b81ef190c19fb9fbe73913a95c71f7e6715f671bbe8a224dafc\",\"dweb:/ipfs/QmUdsc6DF2Bgih5VZm7sfaECjhGmwE7tAx8pMkzGQgVKQw\"]},\"project:/contracts/interfaces/tokens/TokenInfo.sol\":{\"keccak256\":\"0x70e573644a0ff271c0ccef526809e9d9ab4950ec58755ca84e833cde3b8f3df0\",\"license\":\"AGPLv3\",\"urls\":[\"bzz-raw://aea3709687cc37ba625f4cc882fbdb149a7bf5be5afe2b030203c8719641a77b\",\"dweb:/ipfs/QmVpvfR6ZheE5wNUK9CobaVBgVvEnEPkvjWF9cfwyZr7eQ\"]}},\"version\":1}",
|
|
225
225
|
"bytecode": "0x",
|
|
226
226
|
"deployedBytecode": "0x",
|
|
227
227
|
"immutableReferences": {},
|
|
@@ -1621,7 +1621,7 @@
|
|
|
1621
1621
|
},
|
|
1622
1622
|
"networks": {},
|
|
1623
1623
|
"schemaVersion": "3.4.7",
|
|
1624
|
-
"updatedAt": "2022-
|
|
1624
|
+
"updatedAt": "2022-06-06T10:25:55.175Z",
|
|
1625
1625
|
"devdoc": {
|
|
1626
1626
|
"author": "Superfluid",
|
|
1627
1627
|
"kind": "dev",
|