@chainlink/contracts
Version:
Chainlink smart contracts
844 lines (843 loc) • 16.2 kB
JSON
[
{
"inputs": [
{
"internalType": "uint256",
"name": "internalBalance",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "externalBalance",
"type": "uint256"
}
],
"name": "BalanceInvariantViolated",
"type": "error"
},
{
"inputs": [],
"name": "FailedToSendNative",
"type": "error"
},
{
"inputs": [],
"name": "FailedToTransferLink",
"type": "error"
},
{
"inputs": [],
"name": "IndexOutOfRange",
"type": "error"
},
{
"inputs": [],
"name": "InsufficientBalance",
"type": "error"
},
{
"inputs": [],
"name": "InvalidCalldata",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "subId",
"type": "uint256"
},
{
"internalType": "address",
"name": "consumer",
"type": "address"
}
],
"name": "InvalidConsumer",
"type": "error"
},
{
"inputs": [],
"name": "InvalidSubscription",
"type": "error"
},
{
"inputs": [],
"name": "LinkAlreadySet",
"type": "error"
},
{
"inputs": [],
"name": "LinkNotSet",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "proposedOwner",
"type": "address"
}
],
"name": "MustBeRequestedOwner",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
}
],
"name": "MustBeSubOwner",
"type": "error"
},
{
"inputs": [],
"name": "OnlyCallableFromLink",
"type": "error"
},
{
"inputs": [],
"name": "PendingRequestExists",
"type": "error"
},
{
"inputs": [],
"name": "Reentrant",
"type": "error"
},
{
"inputs": [],
"name": "TooManyConsumers",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "FundsRecovered",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "NativeFundsRecovered",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "to",
"type": "address"
}
],
"name": "OwnershipTransferRequested",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "to",
"type": "address"
}
],
"name": "OwnershipTransferred",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "subId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amountLink",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amountNative",
"type": "uint256"
}
],
"name": "SubscriptionCanceled",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "subId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "consumer",
"type": "address"
}
],
"name": "SubscriptionConsumerAdded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "subId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "consumer",
"type": "address"
}
],
"name": "SubscriptionConsumerRemoved",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "subId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "owner",
"type": "address"
}
],
"name": "SubscriptionCreated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "subId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "oldBalance",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "newBalance",
"type": "uint256"
}
],
"name": "SubscriptionFunded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "subId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "oldNativeBalance",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "newNativeBalance",
"type": "uint256"
}
],
"name": "SubscriptionFundedWithNative",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "subId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "to",
"type": "address"
}
],
"name": "SubscriptionOwnerTransferRequested",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "subId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "to",
"type": "address"
}
],
"name": "SubscriptionOwnerTransferred",
"type": "event"
},
{
"inputs": [],
"name": "LINK",
"outputs": [
{
"internalType": "contract LinkTokenInterface",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "LINK_NATIVE_FEED",
"outputs": [
{
"internalType": "contract AggregatorV3Interface",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "MAX_CONSUMERS",
"outputs": [
{
"internalType": "uint16",
"name": "",
"type": "uint16"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "acceptOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "subId",
"type": "uint256"
}
],
"name": "acceptSubscriptionOwnerTransfer",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "subId",
"type": "uint256"
},
{
"internalType": "address",
"name": "consumer",
"type": "address"
}
],
"name": "addConsumer",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "subId",
"type": "uint256"
},
{
"internalType": "address",
"name": "to",
"type": "address"
}
],
"name": "cancelSubscription",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "createSubscription",
"outputs": [
{
"internalType": "uint256",
"name": "subId",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "subId",
"type": "uint256"
}
],
"name": "fundSubscriptionWithNative",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "startIndex",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "maxCount",
"type": "uint256"
}
],
"name": "getActiveSubscriptionIds",
"outputs": [
{
"internalType": "uint256[]",
"name": "ids",
"type": "uint256[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "subId",
"type": "uint256"
}
],
"name": "getSubscription",
"outputs": [
{
"internalType": "uint96",
"name": "balance",
"type": "uint96"
},
{
"internalType": "uint96",
"name": "nativeBalance",
"type": "uint96"
},
{
"internalType": "uint64",
"name": "reqCount",
"type": "uint64"
},
{
"internalType": "address",
"name": "subOwner",
"type": "address"
},
{
"internalType": "address[]",
"name": "consumers",
"type": "address[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "onTokenTransfer",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "owner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "subId",
"type": "uint256"
}
],
"name": "ownerCancelSubscription",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "subId",
"type": "uint256"
}
],
"name": "pendingRequestExists",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "to",
"type": "address"
}
],
"name": "recoverFunds",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable",
"name": "to",
"type": "address"
}
],
"name": "recoverNativeFunds",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "subId",
"type": "uint256"
},
{
"internalType": "address",
"name": "consumer",
"type": "address"
}
],
"name": "removeConsumer",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "subId",
"type": "uint256"
},
{
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "requestSubscriptionOwnerTransfer",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "s_config",
"outputs": [
{
"internalType": "uint16",
"name": "minimumRequestConfirmations",
"type": "uint16"
},
{
"internalType": "uint32",
"name": "maxGasLimit",
"type": "uint32"
},
{
"internalType": "bool",
"name": "reentrancyLock",
"type": "bool"
},
{
"internalType": "uint32",
"name": "stalenessSeconds",
"type": "uint32"
},
{
"internalType": "uint32",
"name": "gasAfterPaymentCalculation",
"type": "uint32"
},
{
"internalType": "uint32",
"name": "fulfillmentFlatFeeNativePPM",
"type": "uint32"
},
{
"internalType": "uint32",
"name": "fulfillmentFlatFeeLinkDiscountPPM",
"type": "uint32"
},
{
"internalType": "uint8",
"name": "nativePremiumPercentage",
"type": "uint8"
},
{
"internalType": "uint8",
"name": "linkPremiumPercentage",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "s_currentSubNonce",
"outputs": [
{
"internalType": "uint64",
"name": "",
"type": "uint64"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "s_totalBalance",
"outputs": [
{
"internalType": "uint96",
"name": "",
"type": "uint96"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "s_totalNativeBalance",
"outputs": [
{
"internalType": "uint96",
"name": "",
"type": "uint96"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "link",
"type": "address"
},
{
"internalType": "address",
"name": "linkNativeFeed",
"type": "address"
}
],
"name": "setLINKAndLINKNativeFeed",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "to",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "recipient",
"type": "address"
}
],
"name": "withdraw",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable",
"name": "recipient",
"type": "address"
}
],
"name": "withdrawNative",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
]