UNPKG

@coinbase/agentkit

Version:

Coinbase AgentKit core primitives

1,700 lines (1,699 loc) 77.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ISuperTokenAbi = exports.SuperTokenFactoryABI = exports.SuperTokenFactoryAddress_Base_Sepolia = exports.SuperTokenFactoryAddress = exports.GDAv1ForwarderABI = exports.CFAv1ForwarderABI = exports.GDAv1ForwarderAddress = exports.CFAv1ForwarderAddress = void 0; // For money streaming exports.CFAv1ForwarderAddress = "0xcfA132E353cB4E398080B9700609bb008eceB125"; // For distribution pools exports.GDAv1ForwarderAddress = "0x6DA13Bde224A05a288748d857b9e7DDEffd1dE08"; exports.CFAv1ForwarderABI = [ { inputs: [ { internalType: "contract ISuperfluid", name: "host", type: "address", }, ], stateMutability: "nonpayable", type: "constructor", }, { inputs: [], name: "CFA_FWD_INVALID_FLOW_RATE", type: "error" }, { inputs: [ { internalType: "contract ISuperToken", name: "token", type: "address", }, { internalType: "address", name: "sender", type: "address" }, { internalType: "address", name: "receiver", type: "address" }, { internalType: "int96", name: "flowrate", type: "int96" }, { internalType: "bytes", name: "userData", type: "bytes" }, ], name: "createFlow", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract ISuperToken", name: "token", type: "address", }, { internalType: "address", name: "sender", type: "address" }, { internalType: "address", name: "receiver", type: "address" }, { internalType: "bytes", name: "userData", type: "bytes" }, ], name: "deleteFlow", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract ISuperToken", name: "token", type: "address", }, { internalType: "address", name: "account", type: "address" }, ], name: "getAccountFlowInfo", outputs: [ { internalType: "uint256", name: "lastUpdated", type: "uint256" }, { internalType: "int96", name: "flowrate", type: "int96" }, { internalType: "uint256", name: "deposit", type: "uint256" }, { internalType: "uint256", name: "owedDeposit", type: "uint256" }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "contract ISuperToken", name: "token", type: "address", }, { internalType: "address", name: "account", type: "address" }, ], name: "getAccountFlowrate", outputs: [{ internalType: "int96", name: "flowrate", type: "int96" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "contract ISuperToken", name: "token", type: "address", }, { internalType: "int96", name: "flowrate", type: "int96" }, ], name: "getBufferAmountByFlowrate", outputs: [{ internalType: "uint256", name: "bufferAmount", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "contract ISuperToken", name: "token", type: "address", }, { internalType: "address", name: "sender", type: "address" }, { internalType: "address", name: "receiver", type: "address" }, ], name: "getFlowInfo", outputs: [ { internalType: "uint256", name: "lastUpdated", type: "uint256" }, { internalType: "int96", name: "flowrate", type: "int96" }, { internalType: "uint256", name: "deposit", type: "uint256" }, { internalType: "uint256", name: "owedDeposit", type: "uint256" }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "contract ISuperToken", name: "token", type: "address", }, { internalType: "address", name: "sender", type: "address" }, { internalType: "address", name: "flowOperator", type: "address" }, ], name: "getFlowOperatorPermissions", outputs: [ { internalType: "uint8", name: "permissions", type: "uint8" }, { internalType: "int96", name: "flowrateAllowance", type: "int96" }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "contract ISuperToken", name: "token", type: "address", }, { internalType: "address", name: "sender", type: "address" }, { internalType: "address", name: "receiver", type: "address" }, ], name: "getFlowrate", outputs: [{ internalType: "int96", name: "flowrate", type: "int96" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "contract ISuperToken", name: "token", type: "address", }, { internalType: "address", name: "flowOperator", type: "address" }, ], name: "grantPermissions", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract ISuperToken", name: "token", type: "address", }, { internalType: "address", name: "flowOperator", type: "address" }, ], name: "revokePermissions", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract ISuperToken", name: "token", type: "address", }, { internalType: "address", name: "receiver", type: "address" }, { internalType: "int96", name: "flowrate", type: "int96" }, ], name: "setFlowrate", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract ISuperToken", name: "token", type: "address", }, { internalType: "address", name: "sender", type: "address" }, { internalType: "address", name: "receiver", type: "address" }, { internalType: "int96", name: "flowrate", type: "int96" }, ], name: "setFlowrateFrom", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract ISuperToken", name: "token", type: "address", }, { internalType: "address", name: "sender", type: "address" }, { internalType: "address", name: "receiver", type: "address" }, { internalType: "int96", name: "flowrate", type: "int96" }, { internalType: "bytes", name: "userData", type: "bytes" }, ], name: "updateFlow", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract ISuperToken", name: "token", type: "address", }, { internalType: "address", name: "flowOperator", type: "address" }, { internalType: "uint8", name: "permissions", type: "uint8" }, { internalType: "int96", name: "flowrateAllowance", type: "int96" }, ], name: "updateFlowOperatorPermissions", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function", }, ]; exports.GDAv1ForwarderABI = [ { inputs: [ { internalType: "contract ISuperfluid", name: "host", type: "address", }, ], stateMutability: "nonpayable", type: "constructor", }, { inputs: [ { internalType: "contract ISuperfluidPool", name: "pool", type: "address", }, { internalType: "address", name: "memberAddress", type: "address" }, { internalType: "bytes", name: "userData", type: "bytes" }, ], name: "claimAll", outputs: [{ internalType: "bool", name: "success", type: "bool" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract ISuperfluidPool", name: "pool", type: "address", }, { internalType: "bytes", name: "userData", type: "bytes" }, ], name: "connectPool", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract ISuperfluidToken", name: "token", type: "address", }, { internalType: "address", name: "admin", type: "address" }, { components: [ { internalType: "bool", name: "transferabilityForUnitsOwner", type: "bool", }, { internalType: "bool", name: "distributionFromAnyAddress", type: "bool", }, ], internalType: "struct PoolConfig", name: "config", type: "tuple", }, ], name: "createPool", outputs: [ { internalType: "bool", name: "success", type: "bool" }, { internalType: "contract ISuperfluidPool", name: "pool", type: "address", }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract ISuperfluidPool", name: "pool", type: "address", }, { internalType: "bytes", name: "userData", type: "bytes" }, ], name: "disconnectPool", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract ISuperfluidToken", name: "token", type: "address", }, { internalType: "address", name: "from", type: "address" }, { internalType: "contract ISuperfluidPool", name: "pool", type: "address", }, { internalType: "uint256", name: "requestedAmount", type: "uint256", }, { internalType: "bytes", name: "userData", type: "bytes" }, ], name: "distribute", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract ISuperfluidToken", name: "token", type: "address", }, { internalType: "address", name: "from", type: "address" }, { internalType: "contract ISuperfluidPool", name: "pool", type: "address", }, { internalType: "int96", name: "requestedFlowRate", type: "int96" }, { internalType: "bytes", name: "userData", type: "bytes" }, ], name: "distributeFlow", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract ISuperfluidToken", name: "token", type: "address", }, { internalType: "address", name: "from", type: "address" }, { internalType: "contract ISuperfluidPool", name: "to", type: "address", }, { internalType: "uint256", name: "requestedAmount", type: "uint256", }, ], name: "estimateDistributionActualAmount", outputs: [{ internalType: "uint256", name: "actualAmount", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "contract ISuperfluidToken", name: "token", type: "address", }, { internalType: "address", name: "from", type: "address" }, { internalType: "contract ISuperfluidPool", name: "to", type: "address", }, { internalType: "int96", name: "requestedFlowRate", type: "int96" }, ], name: "estimateFlowDistributionActualFlowRate", outputs: [ { internalType: "int96", name: "actualFlowRate", type: "int96" }, { internalType: "int96", name: "totalDistributionFlowRate", type: "int96", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "contract ISuperfluidToken", name: "token", type: "address", }, { internalType: "address", name: "from", type: "address" }, { internalType: "contract ISuperfluidPool", name: "to", type: "address", }, ], name: "getFlowDistributionFlowRate", outputs: [{ internalType: "int96", name: "", type: "int96" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "contract ISuperfluidToken", name: "token", type: "address", }, { internalType: "address", name: "account", type: "address" }, ], name: "getNetFlow", outputs: [{ internalType: "int96", name: "", type: "int96" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "contract ISuperfluidPool", name: "pool", type: "address", }, ], name: "getPoolAdjustmentFlowInfo", outputs: [ { internalType: "address", name: "", type: "address" }, { internalType: "bytes32", name: "", type: "bytes32" }, { internalType: "int96", name: "", type: "int96" }, ], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "address", name: "pool", type: "address" }], name: "getPoolAdjustmentFlowRate", outputs: [{ internalType: "int96", name: "", type: "int96" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "contract ISuperfluidPool", name: "pool", type: "address", }, { internalType: "address", name: "member", type: "address" }, ], name: "isMemberConnected", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "contract ISuperfluidToken", name: "token", type: "address", }, { internalType: "address", name: "account", type: "address" }, ], name: "isPool", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "contract ISuperfluidPool", name: "pool", type: "address", }, { internalType: "address", name: "memberAddress", type: "address" }, { internalType: "uint128", name: "newUnits", type: "uint128" }, { internalType: "bytes", name: "userData", type: "bytes" }, ], name: "updateMemberUnits", outputs: [{ internalType: "bool", name: "success", type: "bool" }], stateMutability: "nonpayable", type: "function", }, ]; exports.SuperTokenFactoryAddress = "0xe20B9a38E0c96F61d1bA6b42a61512D56Fea1Eb3"; exports.SuperTokenFactoryAddress_Base_Sepolia = "0x7447E94Dfe3d804a9f46Bf12838d467c912C8F6C"; exports.SuperTokenFactoryABI = [ { inputs: [ { internalType: "contract ISuperfluid", name: "host", type: "address" }, { internalType: "contract ISuperToken", name: "superTokenLogic", type: "address" }, { internalType: "contract IConstantOutflowNFT", name: "constantOutflowNFTLogic", type: "address", }, { internalType: "contract IConstantInflowNFT", name: "constantInflowNFTLogic", type: "address", }, { internalType: "contract IPoolAdminNFT", name: "poolAdminNFTLogic", type: "address" }, { internalType: "contract IPoolMemberNFT", name: "poolMemberNFTLogic", type: "address" }, ], stateMutability: "nonpayable", type: "constructor", }, { inputs: [], name: "SUPER_TOKEN_FACTORY_ALREADY_EXISTS", type: "error" }, { inputs: [], name: "SUPER_TOKEN_FACTORY_DOES_NOT_EXIST", type: "error" }, { inputs: [], name: "SUPER_TOKEN_FACTORY_NON_UPGRADEABLE_IS_DEPRECATED", type: "error" }, { inputs: [], name: "SUPER_TOKEN_FACTORY_ONLY_GOVERNANCE_OWNER", type: "error" }, { inputs: [], name: "SUPER_TOKEN_FACTORY_ONLY_HOST", type: "error" }, { inputs: [], name: "SUPER_TOKEN_FACTORY_UNINITIALIZED", type: "error" }, { inputs: [], name: "SUPER_TOKEN_FACTORY_ZERO_ADDRESS", type: "error" }, { anonymous: false, inputs: [ { indexed: false, internalType: "bytes32", name: "uuid", type: "bytes32" }, { indexed: false, internalType: "address", name: "codeAddress", type: "address" }, ], name: "CodeUpdated", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "contract ISuperToken", name: "token", type: "address" }, ], name: "CustomSuperTokenCreated", type: "event", }, { anonymous: false, inputs: [{ indexed: false, internalType: "uint8", name: "version", type: "uint8" }], name: "Initialized", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "contract ISuperToken", name: "token", type: "address" }, ], name: "SuperTokenCreated", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "contract ISuperToken", name: "tokenLogic", type: "address" }, ], name: "SuperTokenLogicCreated", type: "event", }, { inputs: [], name: "CONSTANT_INFLOW_NFT_LOGIC", outputs: [{ internalType: "contract IConstantInflowNFT", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "CONSTANT_OUTFLOW_NFT_LOGIC", outputs: [{ internalType: "contract IConstantOutflowNFT", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "POOL_ADMIN_NFT_LOGIC", outputs: [{ internalType: "contract IPoolAdminNFT", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "POOL_MEMBER_NFT_LOGIC", outputs: [{ internalType: "contract IPoolMemberNFT", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "_SUPER_TOKEN_LOGIC", outputs: [{ internalType: "contract ISuperToken", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "castrate", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [{ internalType: "address", name: "_underlyingToken", type: "address" }], name: "computeCanonicalERC20WrapperAddress", outputs: [ { internalType: "address", name: "superTokenAddress", type: "address" }, { internalType: "bool", name: "isDeployed", type: "bool" }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "contract IERC20Metadata", name: "_underlyingToken", type: "address" }, ], name: "createCanonicalERC20Wrapper", outputs: [{ internalType: "contract ISuperToken", name: "", type: "address" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract IERC20Metadata", name: "underlyingToken", type: "address" }, { internalType: "enum ISuperTokenFactory.Upgradability", name: "upgradability", type: "uint8", }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "symbol", type: "string" }, ], name: "createERC20Wrapper", outputs: [{ internalType: "contract ISuperToken", name: "superToken", type: "address" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract IERC20Metadata", name: "underlyingToken", type: "address" }, { internalType: "enum ISuperTokenFactory.Upgradability", name: "upgradability", type: "uint8", }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "symbol", type: "string" }, { internalType: "address", name: "admin", type: "address" }, ], name: "createERC20Wrapper", outputs: [{ internalType: "contract ISuperToken", name: "superToken", type: "address" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract IERC20Metadata", name: "underlyingToken", type: "address" }, { internalType: "uint8", name: "underlyingDecimals", type: "uint8" }, { internalType: "enum ISuperTokenFactory.Upgradability", name: "upgradability", type: "uint8", }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "symbol", type: "string" }, ], name: "createERC20Wrapper", outputs: [{ internalType: "contract ISuperToken", name: "superToken", type: "address" }], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "contract IERC20Metadata", name: "underlyingToken", type: "address" }, { internalType: "uint8", name: "underlyingDecimals", type: "uint8" }, { internalType: "enum ISuperTokenFactory.Upgradability", name: "upgradability", type: "uint8", }, { internalType: "string", name: "name", type: "string" }, { internalType: "string", name: "symbol", type: "string" }, { internalType: "address", name: "admin", type: "address" }, ], name: "createERC20Wrapper", outputs: [{ internalType: "contract ISuperToken", name: "superToken", type: "address" }], stateMutability: "nonpayable", type: "function", }, { inputs: [{ internalType: "address", name: "_underlyingTokenAddress", type: "address" }], name: "getCanonicalERC20Wrapper", outputs: [{ internalType: "address", name: "superTokenAddress", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "getCodeAddress", outputs: [{ internalType: "address", name: "codeAddress", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "getHost", outputs: [{ internalType: "address", name: "host", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "getSuperTokenLogic", outputs: [{ internalType: "contract ISuperToken", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "initialize", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { components: [ { internalType: "address", name: "underlyingToken", type: "address" }, { internalType: "address", name: "superToken", type: "address" }, ], internalType: "struct SuperTokenFactoryBase.InitializeData[]", name: "_data", type: "tuple[]", }, ], name: "initializeCanonicalWrapperSuperTokens", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [{ internalType: "address", name: "customSuperTokenProxy", type: "address" }], name: "initializeCustomSuperToken", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "proxiableUUID", outputs: [{ internalType: "bytes32", name: "", type: "bytes32" }], stateMutability: "pure", type: "function", }, { inputs: [{ internalType: "address", name: "newAddress", type: "address" }], name: "updateCode", outputs: [], stateMutability: "nonpayable", type: "function", }, ]; exports.ISuperTokenAbi = [ { inputs: [], name: "SF_TOKEN_AGREEMENT_ALREADY_EXISTS", type: "error", }, { inputs: [], name: "SF_TOKEN_AGREEMENT_DOES_NOT_EXIST", type: "error", }, { inputs: [], name: "SF_TOKEN_BURN_INSUFFICIENT_BALANCE", type: "error", }, { inputs: [], name: "SF_TOKEN_MOVE_INSUFFICIENT_BALANCE", type: "error", }, { inputs: [], name: "SF_TOKEN_ONLY_HOST", type: "error", }, { inputs: [], name: "SF_TOKEN_ONLY_LISTED_AGREEMENT", type: "error", }, { inputs: [], name: "SUPER_TOKEN_APPROVE_FROM_ZERO_ADDRESS", type: "error", }, { inputs: [], name: "SUPER_TOKEN_APPROVE_TO_ZERO_ADDRESS", type: "error", }, { inputs: [], name: "SUPER_TOKEN_BURN_FROM_ZERO_ADDRESS", type: "error", }, { inputs: [], name: "SUPER_TOKEN_CALLER_IS_NOT_OPERATOR_FOR_HOLDER", type: "error", }, { inputs: [], name: "SUPER_TOKEN_INFLATIONARY_DEFLATIONARY_NOT_SUPPORTED", type: "error", }, { inputs: [], name: "SUPER_TOKEN_MINT_TO_ZERO_ADDRESS", type: "error", }, { inputs: [], name: "SUPER_TOKEN_NFT_PROXY_ADDRESS_CHANGED", type: "error", }, { inputs: [], name: "SUPER_TOKEN_NOT_ERC777_TOKENS_RECIPIENT", type: "error", }, { inputs: [], name: "SUPER_TOKEN_NO_UNDERLYING_TOKEN", type: "error", }, { inputs: [], name: "SUPER_TOKEN_ONLY_ADMIN", type: "error", }, { inputs: [], name: "SUPER_TOKEN_ONLY_GOV_OWNER", type: "error", }, { inputs: [], name: "SUPER_TOKEN_ONLY_SELF", type: "error", }, { inputs: [], name: "SUPER_TOKEN_TRANSFER_FROM_ZERO_ADDRESS", type: "error", }, { inputs: [], name: "SUPER_TOKEN_TRANSFER_TO_ZERO_ADDRESS", type: "error", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "oldAdmin", type: "address", }, { indexed: true, internalType: "address", name: "newAdmin", type: "address", }, ], name: "AdminChanged", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "agreementClass", type: "address", }, { indexed: false, internalType: "bytes32", name: "id", type: "bytes32", }, { indexed: false, internalType: "bytes32[]", name: "data", type: "bytes32[]", }, ], name: "AgreementCreated", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "agreementClass", type: "address", }, { indexed: false, internalType: "bytes32", name: "id", type: "bytes32", }, { indexed: true, internalType: "address", name: "penaltyAccount", type: "address", }, { indexed: true, internalType: "address", name: "rewardAccount", type: "address", }, { indexed: false, internalType: "uint256", name: "rewardAmount", type: "uint256", }, ], name: "AgreementLiquidated", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "liquidatorAccount", type: "address", }, { indexed: true, internalType: "address", name: "agreementClass", type: "address", }, { indexed: false, internalType: "bytes32", name: "id", type: "bytes32", }, { indexed: true, internalType: "address", name: "penaltyAccount", type: "address", }, { indexed: true, internalType: "address", name: "bondAccount", type: "address", }, { indexed: false, internalType: "uint256", name: "rewardAmount", type: "uint256", }, { indexed: false, internalType: "uint256", name: "bailoutAmount", type: "uint256", }, ], name: "AgreementLiquidatedBy", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "agreementClass", type: "address", }, { indexed: false, internalType: "bytes32", name: "id", type: "bytes32", }, { indexed: true, internalType: "address", name: "liquidatorAccount", type: "address", }, { indexed: true, internalType: "address", name: "targetAccount", type: "address", }, { indexed: false, internalType: "address", name: "rewardAmountReceiver", type: "address", }, { indexed: false, internalType: "uint256", name: "rewardAmount", type: "uint256", }, { indexed: false, internalType: "int256", name: "targetAccountBalanceDelta", type: "int256", }, { indexed: false, internalType: "bytes", name: "liquidationTypeData", type: "bytes", }, ], name: "AgreementLiquidatedV2", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "agreementClass", type: "address", }, { indexed: true, internalType: "address", name: "account", type: "address", }, { indexed: false, internalType: "uint256", name: "slotId", type: "uint256", }, ], name: "AgreementStateUpdated", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "agreementClass", type: "address", }, { indexed: false, internalType: "bytes32", name: "id", type: "bytes32", }, ], name: "AgreementTerminated", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "agreementClass", type: "address", }, { indexed: false, internalType: "bytes32", name: "id", type: "bytes32", }, { indexed: false, internalType: "bytes32[]", name: "data", type: "bytes32[]", }, ], name: "AgreementUpdated", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address", }, { indexed: true, internalType: "address", name: "spender", type: "address", }, { indexed: false, internalType: "uint256", name: "value", type: "uint256", }, ], name: "Approval", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address", }, { indexed: true, internalType: "address", name: "tokenHolder", type: "address", }, ], name: "AuthorizedOperator", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "bailoutAccount", type: "address", }, { indexed: false, internalType: "uint256", name: "bailoutAmount", type: "uint256", }, ], name: "Bailout", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address", }, { indexed: true, internalType: "address", name: "from", type: "address", }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256", }, { indexed: false, internalType: "bytes", name: "data", type: "bytes", }, { indexed: false, internalType: "bytes", name: "operatorData", type: "bytes", }, ], name: "Burned", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "contract IConstantInflowNFT", name: "constantInflowNFT", type: "address", }, ], name: "ConstantInflowNFTCreated", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "contract IConstantOutflowNFT", name: "constantOutflowNFT", type: "address", }, ], name: "ConstantOutflowNFTCreated", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address", }, { indexed: true, internalType: "address", name: "to", type: "address", }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256", }, { indexed: false, internalType: "bytes", name: "data", type: "bytes", }, { indexed: false, internalType: "bytes", name: "operatorData", type: "bytes", }, ], name: "Minted", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "contract IPoolAdminNFT", name: "poolAdminNFT", type: "address", }, ], name: "PoolAdminNFTCreated", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "contract IPoolMemberNFT", name: "poolMemberNFT", type: "address", }, ], name: "PoolMemberNFTCreated", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address", }, { indexed: true, internalType: "address", name: "tokenHolder", type: "address", }, ], name: "RevokedOperator", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "operator", type: "address", }, { indexed: true, internalType: "address", name: "from", type: "address", }, { indexed: true, internalType: "address", name: "to", type: "address", }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256", }, { indexed: false, internalType: "bytes", name: "data", type: "bytes", }, { indexed: false, internalType: "bytes", name: "operatorData", type: "bytes", }, ], name: "Sent", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "account", type: "address", }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256", }, ], name: "TokenDowngraded", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "account", type: "address", }, { indexed: false, internalType: "uint256", name: "amount", type: "uint256", }, ], name: "TokenUpgraded", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address", }, { indexed: true, internalType: "address", name: "to", type: "address", }, { indexed: false, internalType: "uint256", name: "value", type: "uint256", }, ], name: "Transfer", type: "event", }, { inputs: [], name: "CONSTANT_INFLOW_NFT", outputs: [ { internalType: "contract IConstantInflowNFT", name: "", type: "address", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "CONSTANT_OUTFLOW_NFT", outputs: [ { internalType: "contract IConstantOutflowNFT", name: "", type: "address", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "POOL_ADMIN_NFT", outputs: [ { internalType: "contract IPoolAdminNFT", name: "", type: "address", }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "POOL_MEMBER_NFT", outputs: [ { internalType: "contract IPoolMemberNFT", name: "", type: "address", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "owner", type: "address", }, { internalType: "address", name: "spender", type: "address", }, ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "spender", type: "address", }, { internalType: "uint256", name: "amount", type: "uint256", }, ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool", }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "operator", type: "address", }, ], name: "authorizeOperator", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "account", type: "address", }, ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "balance", type: "uint256", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "uint256", name: "amount", type: "uint256", }, { internalType: "bytes", name: "userData", type: "bytes", }, ], name: "burn", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "newAdmin", type: "address", }, ], name: "changeAdmin", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "bytes32", name: "id", type: "bytes32", }, { internalType: "bytes32[]", name: "data", type: "bytes32[]", }, ], name: "createAgreement", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "spender", type: "address", }, { internalType: "uint256", name: "subtractedValue", type: "uint256", }, ], name: "decreaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool", }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "defaultOperators", outputs: [ { internalType: "address[]", name: "", type: "address[]", }, ], stateMutability: "view", type: "function", }, {