toucan-sdk
Version:
A JavaScript SDK for Toucan Protocol. Works in the web browser and Node.js.
2,781 lines (2,780 loc) • 89.5 kB
text/typescript
export const poolTokenABI = [
{ inputs: [], stateMutability: "nonpayable", type: "constructor" },
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "tco2",
type: "address",
},
],
name: "AddFeeExemptedTCO2",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "previousAdmin",
type: "address",
},
{
indexed: false,
internalType: "address",
name: "newAdmin",
type: "address",
},
],
name: "AdminChanged",
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: false,
internalType: "string",
name: "methodology",
type: "string",
},
],
name: "AttributeMethodologyAdded",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "string",
name: "methodology",
type: "string",
},
],
name: "AttributeMethodologyRemoved",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "string",
name: "region",
type: "string",
},
],
name: "AttributeRegionAdded",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "string",
name: "region",
type: "string",
},
],
name: "AttributeRegionRemoved",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "string",
name: "standard",
type: "string",
},
],
name: "AttributeStandardAdded",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "string",
name: "standard",
type: "string",
},
],
name: "AttributeStandardRemoved",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "beacon",
type: "address",
},
],
name: "BeaconUpgraded",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "erc20Addr",
type: "address",
},
{
indexed: false,
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "Deposited",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "erc20addr",
type: "address",
},
],
name: "ExternalAddressRemovedFromWhitelist",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "erc20addr",
type: "address",
},
],
name: "ExternalAddressWhitelisted",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "uint8",
name: "version",
type: "uint8",
},
],
name: "Initialized",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "erc20addr",
type: "address",
},
],
name: "InternalAddressBlacklisted",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "erc20addr",
type: "address",
},
],
name: "InternalAddressRemovedFromBlackList",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "erc20addr",
type: "address",
},
],
name: "InternalAddressRemovedFromWhitelist",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "erc20addr",
type: "address",
},
],
name: "InternalAddressWhitelisted",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "string",
name: "mappingName",
type: "string",
},
{
indexed: false,
internalType: "bool",
name: "accepted",
type: "bool",
},
],
name: "MappingSwitched",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "uint256",
name: "minimumVintageStartTime",
type: "uint256",
},
],
name: "MinimumVintageStartTimeUpdated",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "previousOwner",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "newOwner",
type: "address",
},
],
name: "OwnershipTransferred",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "account",
type: "address",
},
],
name: "Paused",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "redeemer",
type: "address",
},
{
indexed: false,
internalType: "uint256",
name: "fees",
type: "uint256",
},
],
name: "RedeemFeeBurnt",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "redeemer",
type: "address",
},
{
indexed: false,
internalType: "uint256",
name: "fees",
type: "uint256",
},
],
name: "RedeemFeePaid",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "account",
type: "address",
},
{
indexed: false,
internalType: "address",
name: "erc20",
type: "address",
},
{
indexed: false,
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "Redeemed",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "tco2",
type: "address",
},
],
name: "RemoveFeeExemptedTCO2",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "bytes32",
name: "role",
type: "bytes32",
},
{
indexed: true,
internalType: "bytes32",
name: "previousAdminRole",
type: "bytes32",
},
{
indexed: true,
internalType: "bytes32",
name: "newAdminRole",
type: "bytes32",
},
],
name: "RoleAdminChanged",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "bytes32",
name: "role",
type: "bytes32",
},
{
indexed: true,
internalType: "address",
name: "account",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "sender",
type: "address",
},
],
name: "RoleGranted",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "bytes32",
name: "role",
type: "bytes32",
},
{
indexed: true,
internalType: "address",
name: "account",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "sender",
type: "address",
},
],
name: "RoleRevoked",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "router",
type: "address",
},
],
name: "RouterUpdated",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "uint256",
name: "newCap",
type: "uint256",
},
],
name: "SupplyCapUpdated",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "uint32",
name: "destinationDomain",
type: "uint32",
},
{
indexed: true,
internalType: "address",
name: "tco2",
type: "address",
},
{
indexed: false,
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "TCO2Bridged",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address[]",
name: "tco2s",
type: "address[]",
},
],
name: "TCO2ScoringUpdated",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "ContractRegistry",
type: "address",
},
],
name: "ToucanRegistrySet",
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",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "account",
type: "address",
},
],
name: "Unpaused",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "implementation",
type: "address",
},
],
name: "Upgraded",
type: "event",
},
{
inputs: [],
name: "DEFAULT_ADMIN_ROLE",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "MANAGER_ROLE",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "PAUSER_ROLE",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "VERSION",
outputs: [
{
internalType: "string",
name: "",
type: "string",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "VERSION_RELEASE_CANDIDATE",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "bool",
name: "addToList",
type: "bool",
},
{
internalType: "string[]",
name: "_regions",
type: "string[]",
},
{
internalType: "string[]",
name: "_standards",
type: "string[]",
},
{
internalType: "string[]",
name: "_methodologies",
type: "string[]",
},
],
name: "addAttributes",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_address",
type: "address",
},
],
name: "addRedeemFeeExemptedAddress",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_tco2",
type: "address",
},
],
name: "addRedeemFeeExemptedTCO2",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address[]",
name: "erc20Addr",
type: "address[]",
},
],
name: "addToExternalWhiteList",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address[]",
name: "erc20Addr",
type: "address[]",
},
],
name: "addToInternalBlackList",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address[]",
name: "erc20Addr",
type: "address[]",
},
],
name: "addToInternalWhiteList",
outputs: [],
stateMutability: "nonpayable",
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: "account",
type: "address",
},
],
name: "balanceOf",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_account",
type: "address",
},
{
internalType: "uint256",
name: "_amount",
type: "uint256",
},
],
name: "bridgeBurn",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_account",
type: "address",
},
{
internalType: "uint256",
name: "_amount",
type: "uint256",
},
],
name: "bridgeMint",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint32",
name: "destinationDomain",
type: "uint32",
},
{
internalType: "address[]",
name: "tco2s",
type: "address[]",
},
{
internalType: "uint256[]",
name: "amounts",
type: "uint256[]",
},
],
name: "bridgeTCO2s",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address[]",
name: "tco2s",
type: "address[]",
},
{
internalType: "uint256[]",
name: "amounts",
type: "uint256[]",
},
],
name: "calculateRedeemFees",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "erc20Addr",
type: "address",
},
],
name: "checkAttributeMatching",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "erc20Addr",
type: "address",
},
],
name: "checkEligible",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "contractRegistry",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
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: [
{
internalType: "address",
name: "erc20Addr",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "deposit",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
name: "externalWhiteList",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "feeRedeemBurnAddress",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "feeRedeemBurnPercentageInBase",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "feeRedeemDivider",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "feeRedeemPercentageInBase",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "feeRedeemReceiver",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "getRemaining",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "role",
type: "bytes32",
},
],
name: "getRoleAdmin",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "getScoredTCO2s",
outputs: [
{
internalType: "address[]",
name: "",
type: "address[]",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "role",
type: "bytes32",
},
{
internalType: "address",
name: "account",
type: "address",
},
],
name: "grantRole",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "role",
type: "bytes32",
},
{
internalType: "address",
name: "account",
type: "address",
},
],
name: "hasRole",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "spender",
type: "address",
},
{
internalType: "uint256",
name: "addedValue",
type: "uint256",
},
],
name: "increaseAllowance",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "initialize",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
name: "internalBlackList",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
name: "internalWhiteList",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "string",
name: "",
type: "string",
},
],
name: "methodologies",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "methodologiesIsAcceptedMapping",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "minimumVintageStartTime",
outputs: [
{
internalType: "uint64",
name: "",
type: "uint64",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "name",
outputs: [
{
internalType: "string",
name: "",
type: "string",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "owner",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "pause",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "paused",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "proxiableUUID",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "tco2",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "redeemAndBurn",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "redeemAuto",
outputs: [
{
internalType: "address[]",
name: "tco2s",
type: "address[]",
},
{
internalType: "uint256[]",
name: "amounts",
type: "uint256[]",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "redeemAuto2",
outputs: [
{
internalType: "address[]",
name: "tco2s",
type: "address[]",
},
{
internalType: "uint256[]",
name: "amounts",
type: "uint256[]",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
name: "redeemFeeExemptedAddresses",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
name: "redeemFeeExemptedTCO2s",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address[]",
name: "tco2s",
type: "address[]",
},
{
internalType: "uint256[]",
name: "amounts",
type: "uint256[]",
},
],
name: "redeemMany",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "string",
name: "",
type: "string",
},
],
name: "regions",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "regionsIsAcceptedMapping",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address[]",
name: "erc20Addr",
type: "address[]",
},
],
name: "removeFromExternalWhiteList",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address[]",
name: "erc20Addr",
type: "address[]",
},
],
name: "removeFromInternalBlackList",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address[]",
name: "erc20Addr",
type: "address[]",
},
],
name: "removeFromInternalWhiteList",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_address",
type: "address",
},
],
name: "removeRedeemFeeExemptedAddress",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_tco2",
type: "address",
},
],
name: "removeRedeemFeeExemptedTCO2",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "renounceOwnership",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "role",
type: "bytes32",
},
{
internalType: "address",
name: "account",
type: "address",
},
],
name: "renounceRole",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "role",
type: "bytes32",
},
{
internalType: "address",
name: "account",
type: "address",
},
],
name: "revokeRole",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "router",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "scoredTCO2s",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "seedMode",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_feeRedeemBurnAddress",
type: "address",
},
],
name: "setFeeRedeemBurnAddress",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_feeRedeemBurnPercentageInBase",
type: "uint256",
},
],
name: "setFeeRedeemBurnPercentage",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_feeRedeemPercentageInBase",
type: "uint256",
},
],
name: "setFeeRedeemPercentage",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_feeRedeemReceiver",
type: "address",
},
],
name: "setFeeRedeemReceiver",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint64",
name: "_minimumVintageStartTime",
type: "uint64",
},
],
name: "setMinimumVintageStartTime",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_router",
type: "address",
},
],
name: "setRouter",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "newCap",
type: "uint256",
},
],
name: "setSupplyCap",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address[]",
name: "tco2s",
type: "address[]",
},
],
name: "setTCO2Scoring",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_address",
type: "address",
},
],
name: "setToucanContractRegistry",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "string",
name: "",
type: "string",
},
],
name: "standards",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "standardsIsAcceptedMapping",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "supplyCap",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "bytes4",
name: "interfaceId",
type: "bytes4",
},
],
name: "supportsInterface",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "string",
name: "_mappingName",
type: "string",
},
{
internalType: "bool",
name: "accepted",
type: "bool",
},
],
name: "switchMapping",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "symbol",
outputs: [
{
internalType: "string",
name: "",
type: "string",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "tco2",
type: "address",
},
],
name: "tokenBalances",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "totalSupply",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "recipient",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "transfer",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "sender",
type: "address",
},
{
internalType: "address",
name: "recipient",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "transferFrom",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "newOwner",
type: "address",
},
],
name: "transferOwnership",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "unpause",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "newImplementation",
type: "address",
},
],
name: "upgradeTo",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "newImplementation",
type: "address",
},
{
internalType: "bytes",
name: "data",
type: "bytes",
},
],
name: "upgradeToAndCall",
outputs: [],
stateMutability: "payable",
type: "function",
},
];
export const offsetHelperABI = [
{
inputs: [
{
internalType: "address[]",
name: "_poolAddresses",
type: "address[]",
},
{
internalType: "string[]",
name: "_tokenSymbolsForPaths",
type: "string[]",
},
{
internalType: "address[][]",
name: "_paths",
type: "address[][]",
},
{
internalType: "address",
name: "_dexRouterAddress",
type: "address",
},
],
stateMutability: "nonpayable",
type: "constructor",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "uint8",
name: "version",
type: "uint8",
},
],
name: "Initialized",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "previousOwner",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "newOwner",
type: "address",
},
],
name: "OwnershipTransferred",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "sender",
type: "address",
},
{
indexed: false,
internalType: "address",
name: "poolToken",
type: "address",
},
{
indexed: false,
internalType: "address[]",
name: "tco2s",
type: "address[]",
},
{
indexed: false,
internalType: "uint256[]",
name: "amounts",
type: "uint256[]",
},
],
name: "Redeemed",
type: "event",
},
{
stateMutability: "payable",
type: "fallback",
},
{
inputs: [
{
internalType: "string",
name: "_tokenSymbol",
type: "string",
},
{
internalType: "address[]",
name: "_path",
type: "address[]",
},
],
name: "addPath",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_poolToken",
type: "address",
},
],
name: "addPoolToken",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_poolToken",
type: "address",
},
],
name: "autoOffsetExactInETH",
outputs: [
{
internalType: "address[]",
name: "tco2s",
type: "address[]",
},
{
internalType: "uint256[]",
name: "amounts",
type: "uint256[]",
},
],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_fromToken",
type: "address",
},
{
internalType: "address",
name: "_poolToken",
type: "address",
},
{
internalType: "uint256",
name: "_amountToSwap",
type: "uint256",
},
],
name: "autoOffsetExactInToken",
outputs: [
{
internalType: "address[]",
name: "tco2s",
type: "address[]",
},
{
internalType: "uint256[]",
name: "amounts",
type: "uint256[]",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_poolToken",
type: "address",
},
{
internalType: "uint256",
name: "_amountToOffset",
type: "uint256",
},
],
name: "autoOffsetExactOutETH",
outputs: [
{
internalType: "address[]",
name: "tco2s",
type: "address[]",
},
{
internalType: "uint256[]",
name: "amounts",
type: "uint256[]",
},
],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_fromToken",
type: "address",
},
{
internalType: "address",
name: "_poolToken",
type: "address",
},
{
internalType: "uint256",
name: "_amountToOffset",
type: "uint256",
},
],
name: "autoOffsetExactOutToken",
outputs: [
{
internalType: "address[]",
name: "tco2s",
type: "address[]",
},
{
internalType: "uint256[]",
name: "amounts",
type: "uint256[]",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_poolToken",
type: "address",
},
{
internalType: "uint256",
name: "_amountToOffset",
type: "uint256",
},
],
name: "autoOffsetPoolToken",
outputs: [
{
internalType: "address[]",
name: "tco2s",
type: "address[]",
},
{
internalType: "uint256[]",
name: "amounts",
type: "uint256[]",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_fromToken",
type: "address",
},
{
internalType: "uint256",
name: "_amount",
type: "uint256",
},
],
name: "autoRedeem",
outputs: [
{
internalType: "address[]",
name: "tco2s",
type: "address[]",
},
{
internalType: "uint256[]",
name: "amounts",
type: "uint256[]",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address[]",
name: "_tco2s",
type: "address[]",
},
{
internalType: "uint256[]",
name: "_amounts",
type: "uint256[]",
},
],
name: "autoRetire",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
{
internalType: "address",
name: "",
type: "address",
},
],
name: "balances",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_poolToken",
type: "address",
},
{
internalType: "uint256",
name: "_fromTokenAmount",
type: "uint256",
},
],
name: "calculateExpectedPoolTokenForETH",
outputs: [
{
internalType: "uint256",
name: "amountOut",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_fromToken",
type: "address",
},
{
internalType: "address",
name: "_poolToken",
type: "address",
},
{
internalType: "uint256",
name: "_fromAmount",
type: "uint256",
},
],
name: "calculateExpectedPoolTokenForToken",
outputs: [
{
internalType: "uint256",
name: "amountOut",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_poolToken",
type: "address",
},
{
internalType: "uint256",
name: "_toAmount",
type: "uint256",
},
],
name: "calculateNeededETHAmount",
outputs: [
{
internalType: "uint256",
name: "amountIn",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_fromToken",
type: "address",
},
{
internalType: "address",
name: "_poolToken",
type: "address",
},
{
internalType: "uint256",
name: "_toAmount",
type: "uint256",
},
],
name: "calculateNeededTokenAmount",
outputs: [
{
internalType: "uint256",
name: "amountIn",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_erc20Addr",
type: "address",
},
{
internalType: "uint256",
name: "_amount",
type: "uint256",
},
],
name: "deposit",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "dexRouterAddress",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "eligibleSwapPaths",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "string",
name: "",
type: "string",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "eligibleSwapPathsBySymbol",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "initialize",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_erc20Address",
type: "address",
},
],
name: "isERC20AddressEligible",
outputs: [
{
internalType: "address[]",
name: "_path",
type: "address[]",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_poolToken",
type: "address",
},
],
name: "isPoolAddressEligible",
outputs: [
{
internalType: "bool",
name: "_isEligible",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "owner",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "paths",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "poolAddresses",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "string",
name: "_tokenSymbol",
type: "string",
},
],
name: "removePath",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_poolToken",
type: "address",
},
],
name: "removePoolToken",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "renounceOwnership",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_poolToken",
type: "address",
},
],
name: "swapExactInETH",
outputs: [
{
internalType: "uint256",
name: "amountOut",
type: "uint256",
},
],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_fromToken",
type: "address",
},
{
internalType: "address",
name: "_poolToken",
type: "address",
},
{
internalType: "uint256",
name: "_fromAmount",
type: "uint256",
},
],
name: "swapExactInToken",
outputs: [
{
internalType: "uint256",
name: "amountOut",
type: "uint256",
},
],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_poolToken",
type: "address",
},
{
internalType: "uint256",
name: "_toAmount",
type: "uint256",
},
],
name: "swapExactOutETH",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_fromToken",
type: "address",
},
{
internalType: "address",
name: "_poolToken",
type: "address",
},
{
internalType: "uint256",
name: "_toAmount",
type: "uint256",
},
],
name: "swapExactOutToken",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "tokenSymbolsFor