Expand description
Generated by the following Solidity interface…
library HoprCrypto {
struct CompactSignature {
bytes32 r;
bytes32 vs;
}
struct VRFParameters {
uint256 vx;
uint256 vy;
uint256 s;
uint256 h;
uint256 sBx;
uint256 sBy;
uint256 hVx;
uint256 hVy;
}
}
interface HoprChannels {
type ChannelStatus is uint8;
type Balance is uint96;
type ChannelEpoch is uint24;
type TicketIndex is uint48;
type TicketIndexOffset is uint32;
type Timestamp is uint32;
type WinProb is uint56;
struct RedeemableTicket {
TicketData data;
HoprCrypto.CompactSignature signature;
uint256 porSecret;
}
struct TicketData {
bytes32 channelId;
Balance amount;
TicketIndex ticketIndex;
TicketIndexOffset indexOffset;
ChannelEpoch epoch;
WinProb winProb;
}
error AlreadyInitialized();
error BalanceExceedsGlobalPerChannelAllowance();
error ContractNotResponsible();
error InsufficientChannelBalance();
error InvalidAggregatedTicketInterval();
error InvalidBalance();
error InvalidCurvePoint();
error InvalidFieldElement();
error InvalidNoticePeriod();
error InvalidPointWitness();
error InvalidSafeAddress();
error InvalidTicketSignature();
error InvalidTokenRecipient();
error InvalidTokensReceivedUsage();
error InvalidVRFProof();
error MultiSigUninitialized();
error NoticePeriodNotDue();
error SourceEqualsDestination();
error TicketIsNotAWin();
error TokenTransferFailed();
error WrongChannelState(string reason);
error WrongToken();
error ZeroAddress(string reason);
event ChannelBalanceDecreased(bytes32 indexed channelId, Balance newBalance);
event ChannelBalanceIncreased(bytes32 indexed channelId, Balance newBalance);
event ChannelClosed(bytes32 indexed channelId);
event ChannelOpened(address indexed source, address indexed destination);
event DomainSeparatorUpdated(bytes32 indexed domainSeparator);
event LedgerDomainSeparatorUpdated(bytes32 indexed ledgerDomainSeparator);
event OutgoingChannelClosureInitiated(bytes32 indexed channelId, Timestamp closureTime);
event TicketRedeemed(bytes32 indexed channelId, TicketIndex newTicketIndex);
constructor(address _token, Timestamp _noticePeriodChannelClosure, address _safeRegistry);
function ERC777_HOOK_FUND_CHANNEL_MULTI_SIZE() external view returns (uint256);
function ERC777_HOOK_FUND_CHANNEL_SIZE() external view returns (uint256);
function LEDGER_VERSION() external view returns (string memory);
function MAX_USED_BALANCE() external view returns (Balance);
function MIN_USED_BALANCE() external view returns (Balance);
function TOKENS_RECIPIENT_INTERFACE_HASH() external view returns (bytes32);
function VERSION() external view returns (string memory);
function _currentBlockTimestamp() external view returns (Timestamp);
function _getChannelId(address source, address destination) external pure returns (bytes32);
function _getTicketHash(RedeemableTicket memory redeemable) external view returns (bytes32);
function _isWinningTicket(bytes32 ticketHash, RedeemableTicket memory redeemable, HoprCrypto.VRFParameters memory params) external pure returns (bool);
function canImplementInterfaceForAddress(bytes32 interfaceHash, address account) external view returns (bytes32);
function channels(bytes32) external view returns (Balance balance, TicketIndex ticketIndex, Timestamp closureTime, ChannelEpoch epoch, ChannelStatus status);
function closeIncomingChannel(address source) external;
function closeIncomingChannelSafe(address selfAddress, address source) external;
function domainSeparator() external view returns (bytes32);
function finalizeOutgoingChannelClosure(address destination) external;
function finalizeOutgoingChannelClosureSafe(address selfAddress, address destination) external;
function fundChannel(address account, Balance amount) external;
function fundChannelSafe(address selfAddress, address account, Balance amount) external;
function initiateOutgoingChannelClosure(address destination) external;
function initiateOutgoingChannelClosureSafe(address selfAddress, address destination) external;
function ledgerDomainSeparator() external view returns (bytes32);
function multicall(bytes[] memory data) external returns (bytes[] memory results);
function noticePeriodChannelClosure() external view returns (Timestamp);
function redeemTicket(RedeemableTicket memory redeemable, HoprCrypto.VRFParameters memory params) external;
function redeemTicketSafe(address selfAddress, RedeemableTicket memory redeemable, HoprCrypto.VRFParameters memory params) external;
function token() external view returns (address);
function tokensReceived(address, address from, address to, uint256 amount, bytes memory userData, bytes memory) external;
function updateDomainSeparator() external;
function updateLedgerDomainSeparator() external;
}…which was generated by the following JSON ABI:
[
{
"type": "constructor",
"inputs": [
{
"name": "_token",
"type": "address",
"internalType": "address"
},
{
"name": "_noticePeriodChannelClosure",
"type": "uint32",
"internalType": "HoprChannels.Timestamp"
},
{
"name": "_safeRegistry",
"type": "address",
"internalType": "contract HoprNodeSafeRegistry"
}
],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "ERC777_HOOK_FUND_CHANNEL_MULTI_SIZE",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "ERC777_HOOK_FUND_CHANNEL_SIZE",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "LEDGER_VERSION",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "MAX_USED_BALANCE",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint96",
"internalType": "HoprChannels.Balance"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "MIN_USED_BALANCE",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint96",
"internalType": "HoprChannels.Balance"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "TOKENS_RECIPIENT_INTERFACE_HASH",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bytes32",
"internalType": "bytes32"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "VERSION",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "_currentBlockTimestamp",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint32",
"internalType": "HoprChannels.Timestamp"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "_getChannelId",
"inputs": [
{
"name": "source",
"type": "address",
"internalType": "address"
},
{
"name": "destination",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "bytes32",
"internalType": "bytes32"
}
],
"stateMutability": "pure"
},
{
"type": "function",
"name": "_getTicketHash",
"inputs": [
{
"name": "redeemable",
"type": "tuple",
"internalType": "struct HoprChannels.RedeemableTicket",
"components": [
{
"name": "data",
"type": "tuple",
"internalType": "struct HoprChannels.TicketData",
"components": [
{
"name": "channelId",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "amount",
"type": "uint96",
"internalType": "HoprChannels.Balance"
},
{
"name": "ticketIndex",
"type": "uint48",
"internalType": "HoprChannels.TicketIndex"
},
{
"name": "indexOffset",
"type": "uint32",
"internalType": "HoprChannels.TicketIndexOffset"
},
{
"name": "epoch",
"type": "uint24",
"internalType": "HoprChannels.ChannelEpoch"
},
{
"name": "winProb",
"type": "uint56",
"internalType": "HoprChannels.WinProb"
}
]
},
{
"name": "signature",
"type": "tuple",
"internalType": "struct HoprCrypto.CompactSignature",
"components": [
{
"name": "r",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "vs",
"type": "bytes32",
"internalType": "bytes32"
}
]
},
{
"name": "porSecret",
"type": "uint256",
"internalType": "uint256"
}
]
}
],
"outputs": [
{
"name": "",
"type": "bytes32",
"internalType": "bytes32"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "_isWinningTicket",
"inputs": [
{
"name": "ticketHash",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "redeemable",
"type": "tuple",
"internalType": "struct HoprChannels.RedeemableTicket",
"components": [
{
"name": "data",
"type": "tuple",
"internalType": "struct HoprChannels.TicketData",
"components": [
{
"name": "channelId",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "amount",
"type": "uint96",
"internalType": "HoprChannels.Balance"
},
{
"name": "ticketIndex",
"type": "uint48",
"internalType": "HoprChannels.TicketIndex"
},
{
"name": "indexOffset",
"type": "uint32",
"internalType": "HoprChannels.TicketIndexOffset"
},
{
"name": "epoch",
"type": "uint24",
"internalType": "HoprChannels.ChannelEpoch"
},
{
"name": "winProb",
"type": "uint56",
"internalType": "HoprChannels.WinProb"
}
]
},
{
"name": "signature",
"type": "tuple",
"internalType": "struct HoprCrypto.CompactSignature",
"components": [
{
"name": "r",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "vs",
"type": "bytes32",
"internalType": "bytes32"
}
]
},
{
"name": "porSecret",
"type": "uint256",
"internalType": "uint256"
}
]
},
{
"name": "params",
"type": "tuple",
"internalType": "struct HoprCrypto.VRFParameters",
"components": [
{
"name": "vx",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "vy",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "s",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "h",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "sBx",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "sBy",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "hVx",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "hVy",
"type": "uint256",
"internalType": "uint256"
}
]
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "pure"
},
{
"type": "function",
"name": "canImplementInterfaceForAddress",
"inputs": [
{
"name": "interfaceHash",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "account",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "bytes32",
"internalType": "bytes32"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "channels",
"inputs": [
{
"name": "",
"type": "bytes32",
"internalType": "bytes32"
}
],
"outputs": [
{
"name": "balance",
"type": "uint96",
"internalType": "HoprChannels.Balance"
},
{
"name": "ticketIndex",
"type": "uint48",
"internalType": "HoprChannels.TicketIndex"
},
{
"name": "closureTime",
"type": "uint32",
"internalType": "HoprChannels.Timestamp"
},
{
"name": "epoch",
"type": "uint24",
"internalType": "HoprChannels.ChannelEpoch"
},
{
"name": "status",
"type": "uint8",
"internalType": "enum HoprChannels.ChannelStatus"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "closeIncomingChannel",
"inputs": [
{
"name": "source",
"type": "address",
"internalType": "address"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "closeIncomingChannelSafe",
"inputs": [
{
"name": "selfAddress",
"type": "address",
"internalType": "address"
},
{
"name": "source",
"type": "address",
"internalType": "address"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "domainSeparator",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bytes32",
"internalType": "bytes32"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "finalizeOutgoingChannelClosure",
"inputs": [
{
"name": "destination",
"type": "address",
"internalType": "address"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "finalizeOutgoingChannelClosureSafe",
"inputs": [
{
"name": "selfAddress",
"type": "address",
"internalType": "address"
},
{
"name": "destination",
"type": "address",
"internalType": "address"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "fundChannel",
"inputs": [
{
"name": "account",
"type": "address",
"internalType": "address"
},
{
"name": "amount",
"type": "uint96",
"internalType": "HoprChannels.Balance"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "fundChannelSafe",
"inputs": [
{
"name": "selfAddress",
"type": "address",
"internalType": "address"
},
{
"name": "account",
"type": "address",
"internalType": "address"
},
{
"name": "amount",
"type": "uint96",
"internalType": "HoprChannels.Balance"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "initiateOutgoingChannelClosure",
"inputs": [
{
"name": "destination",
"type": "address",
"internalType": "address"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "initiateOutgoingChannelClosureSafe",
"inputs": [
{
"name": "selfAddress",
"type": "address",
"internalType": "address"
},
{
"name": "destination",
"type": "address",
"internalType": "address"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "ledgerDomainSeparator",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bytes32",
"internalType": "bytes32"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "multicall",
"inputs": [
{
"name": "data",
"type": "bytes[]",
"internalType": "bytes[]"
}
],
"outputs": [
{
"name": "results",
"type": "bytes[]",
"internalType": "bytes[]"
}
],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "noticePeriodChannelClosure",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint32",
"internalType": "HoprChannels.Timestamp"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "redeemTicket",
"inputs": [
{
"name": "redeemable",
"type": "tuple",
"internalType": "struct HoprChannels.RedeemableTicket",
"components": [
{
"name": "data",
"type": "tuple",
"internalType": "struct HoprChannels.TicketData",
"components": [
{
"name": "channelId",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "amount",
"type": "uint96",
"internalType": "HoprChannels.Balance"
},
{
"name": "ticketIndex",
"type": "uint48",
"internalType": "HoprChannels.TicketIndex"
},
{
"name": "indexOffset",
"type": "uint32",
"internalType": "HoprChannels.TicketIndexOffset"
},
{
"name": "epoch",
"type": "uint24",
"internalType": "HoprChannels.ChannelEpoch"
},
{
"name": "winProb",
"type": "uint56",
"internalType": "HoprChannels.WinProb"
}
]
},
{
"name": "signature",
"type": "tuple",
"internalType": "struct HoprCrypto.CompactSignature",
"components": [
{
"name": "r",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "vs",
"type": "bytes32",
"internalType": "bytes32"
}
]
},
{
"name": "porSecret",
"type": "uint256",
"internalType": "uint256"
}
]
},
{
"name": "params",
"type": "tuple",
"internalType": "struct HoprCrypto.VRFParameters",
"components": [
{
"name": "vx",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "vy",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "s",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "h",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "sBx",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "sBy",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "hVx",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "hVy",
"type": "uint256",
"internalType": "uint256"
}
]
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "redeemTicketSafe",
"inputs": [
{
"name": "selfAddress",
"type": "address",
"internalType": "address"
},
{
"name": "redeemable",
"type": "tuple",
"internalType": "struct HoprChannels.RedeemableTicket",
"components": [
{
"name": "data",
"type": "tuple",
"internalType": "struct HoprChannels.TicketData",
"components": [
{
"name": "channelId",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "amount",
"type": "uint96",
"internalType": "HoprChannels.Balance"
},
{
"name": "ticketIndex",
"type": "uint48",
"internalType": "HoprChannels.TicketIndex"
},
{
"name": "indexOffset",
"type": "uint32",
"internalType": "HoprChannels.TicketIndexOffset"
},
{
"name": "epoch",
"type": "uint24",
"internalType": "HoprChannels.ChannelEpoch"
},
{
"name": "winProb",
"type": "uint56",
"internalType": "HoprChannels.WinProb"
}
]
},
{
"name": "signature",
"type": "tuple",
"internalType": "struct HoprCrypto.CompactSignature",
"components": [
{
"name": "r",
"type": "bytes32",
"internalType": "bytes32"
},
{
"name": "vs",
"type": "bytes32",
"internalType": "bytes32"
}
]
},
{
"name": "porSecret",
"type": "uint256",
"internalType": "uint256"
}
]
},
{
"name": "params",
"type": "tuple",
"internalType": "struct HoprCrypto.VRFParameters",
"components": [
{
"name": "vx",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "vy",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "s",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "h",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "sBx",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "sBy",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "hVx",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "hVy",
"type": "uint256",
"internalType": "uint256"
}
]
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "token",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "contract IERC20"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "tokensReceived",
"inputs": [
{
"name": "",
"type": "address",
"internalType": "address"
},
{
"name": "from",
"type": "address",
"internalType": "address"
},
{
"name": "to",
"type": "address",
"internalType": "address"
},
{
"name": "amount",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "userData",
"type": "bytes",
"internalType": "bytes"
},
{
"name": "",
"type": "bytes",
"internalType": "bytes"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "updateDomainSeparator",
"inputs": [],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "updateLedgerDomainSeparator",
"inputs": [],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "event",
"name": "ChannelBalanceDecreased",
"inputs": [
{
"name": "channelId",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
},
{
"name": "newBalance",
"type": "uint96",
"indexed": false,
"internalType": "HoprChannels.Balance"
}
],
"anonymous": false
},
{
"type": "event",
"name": "ChannelBalanceIncreased",
"inputs": [
{
"name": "channelId",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
},
{
"name": "newBalance",
"type": "uint96",
"indexed": false,
"internalType": "HoprChannels.Balance"
}
],
"anonymous": false
},
{
"type": "event",
"name": "ChannelClosed",
"inputs": [
{
"name": "channelId",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
}
],
"anonymous": false
},
{
"type": "event",
"name": "ChannelOpened",
"inputs": [
{
"name": "source",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "destination",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "event",
"name": "DomainSeparatorUpdated",
"inputs": [
{
"name": "domainSeparator",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
}
],
"anonymous": false
},
{
"type": "event",
"name": "LedgerDomainSeparatorUpdated",
"inputs": [
{
"name": "ledgerDomainSeparator",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
}
],
"anonymous": false
},
{
"type": "event",
"name": "OutgoingChannelClosureInitiated",
"inputs": [
{
"name": "channelId",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
},
{
"name": "closureTime",
"type": "uint32",
"indexed": false,
"internalType": "HoprChannels.Timestamp"
}
],
"anonymous": false
},
{
"type": "event",
"name": "TicketRedeemed",
"inputs": [
{
"name": "channelId",
"type": "bytes32",
"indexed": true,
"internalType": "bytes32"
},
{
"name": "newTicketIndex",
"type": "uint48",
"indexed": false,
"internalType": "HoprChannels.TicketIndex"
}
],
"anonymous": false
},
{
"type": "error",
"name": "AlreadyInitialized",
"inputs": []
},
{
"type": "error",
"name": "BalanceExceedsGlobalPerChannelAllowance",
"inputs": []
},
{
"type": "error",
"name": "ContractNotResponsible",
"inputs": []
},
{
"type": "error",
"name": "InsufficientChannelBalance",
"inputs": []
},
{
"type": "error",
"name": "InvalidAggregatedTicketInterval",
"inputs": []
},
{
"type": "error",
"name": "InvalidBalance",
"inputs": []
},
{
"type": "error",
"name": "InvalidCurvePoint",
"inputs": []
},
{
"type": "error",
"name": "InvalidFieldElement",
"inputs": []
},
{
"type": "error",
"name": "InvalidNoticePeriod",
"inputs": []
},
{
"type": "error",
"name": "InvalidPointWitness",
"inputs": []
},
{
"type": "error",
"name": "InvalidSafeAddress",
"inputs": []
},
{
"type": "error",
"name": "InvalidTicketSignature",
"inputs": []
},
{
"type": "error",
"name": "InvalidTokenRecipient",
"inputs": []
},
{
"type": "error",
"name": "InvalidTokensReceivedUsage",
"inputs": []
},
{
"type": "error",
"name": "InvalidVRFProof",
"inputs": []
},
{
"type": "error",
"name": "MultiSigUninitialized",
"inputs": []
},
{
"type": "error",
"name": "NoticePeriodNotDue",
"inputs": []
},
{
"type": "error",
"name": "SourceEqualsDestination",
"inputs": []
},
{
"type": "error",
"name": "TicketIsNotAWin",
"inputs": []
},
{
"type": "error",
"name": "TokenTransferFailed",
"inputs": []
},
{
"type": "error",
"name": "WrongChannelState",
"inputs": [
{
"name": "reason",
"type": "string",
"internalType": "string"
}
]
},
{
"type": "error",
"name": "WrongToken",
"inputs": []
},
{
"type": "error",
"name": "ZeroAddress",
"inputs": [
{
"name": "reason",
"type": "string",
"internalType": "string"
}
]
}
]Structs§
- Already
Initialized - Custom error with signature
AlreadyInitialized()and selector0x0dc149f0. - Balance
- Balance
Exceeds Global PerChannel Allowance - Custom error with signature
BalanceExceedsGlobalPerChannelAllowance()and selector0xa4f3bbe4. - Channel
Balance Decreased - Event with signature
ChannelBalanceDecreased(bytes32,uint96)and selector0x22e2a422a8860656a3a33cfa1daf771e76798ce5649747957235025de12e0b24. - Channel
Balance Increased - Event with signature
ChannelBalanceIncreased(bytes32,uint96)and selector0x5fa17246d3a5d68d42baa94cde33042180b783a399c02bf63ac2076e0f708738. - Channel
Closed - Event with signature
ChannelClosed(bytes32)and selector0xceeab2eef998c17fe96f30f83fbf3c55fc5047f6e40c55a0cf72d236e9d2ba72. - Channel
Epoch - Channel
Opened - Event with signature
ChannelOpened(address,address)and selector0xdd90f938230335e59dc925c57ecb0e27a28c2d87356e31f00cd5554abd6c1b2d. - Channel
Status - Contract
NotResponsible - Custom error with signature
ContractNotResponsible()and selector0xacd5a823. - Domain
Separator Updated - Event with signature
DomainSeparatorUpdated(bytes32)and selector0x771f5240ae5fd8a7640d3fb82fa70aab2fb1dbf35f2ef464f8509946717664c5. - ERC777_
HOOK_ FUND_ CHANNEL_ MULTI_ SIZE Call - Function with signature
ERC777_HOOK_FUND_CHANNEL_MULTI_SIZE()and selector0x78d8016d. - ERC777_
HOOK_ FUND_ CHANNEL_ MULTI_ SIZE Return - Container type for the return parameters of the
ERC777_HOOK_FUND_CHANNEL_MULTI_SIZE()function. - ERC777_
HOOK_ FUND_ CHANNEL_ SIZE Call - Function with signature
ERC777_HOOK_FUND_CHANNEL_SIZE()and selector0x44dae6f8. - ERC777_
HOOK_ FUND_ CHANNEL_ SIZE Return - Container type for the return parameters of the
ERC777_HOOK_FUND_CHANNEL_SIZE()function. - Hopr
Channels Instance - A
HoprChannelsinstance. - Insufficient
Channel Balance - Custom error with signature
InsufficientChannelBalance()and selector0xb147636c. - Invalid
Aggregated Ticket Interval - Custom error with signature
InvalidAggregatedTicketInterval()and selector0xd0dc3c1e. - Invalid
Balance - Custom error with signature
InvalidBalance()and selector0xc52e3eff. - Invalid
Curve Point - Custom error with signature
InvalidCurvePoint()and selector0x72454a82. - Invalid
Field Element - Custom error with signature
InvalidFieldElement()and selector0x3ae4ed6b. - Invalid
Notice Period - Custom error with signature
InvalidNoticePeriod()and selector0xf9ee9107. - Invalid
Point Witness - Custom error with signature
InvalidPointWitness()and selector0xedfdcd98. - Invalid
Safe Address - Custom error with signature
InvalidSafeAddress()and selector0x8e9d7c5e. - Invalid
Ticket Signature - Custom error with signature
InvalidTicketSignature()and selector0xcddd5356. - Invalid
Token Recipient - Custom error with signature
InvalidTokenRecipient()and selector0xb9c49108. - Invalid
Tokens Received Usage - Custom error with signature
InvalidTokensReceivedUsage()and selector0x69ee6f28. - InvalidVRF
Proof - Custom error with signature
InvalidVRFProof()and selector0x95fdbdb8. - LEDGER_
VERSION Call - Function with signature
LEDGER_VERSION()and selector0xddad1902. - LEDGER_
VERSION Return - Container type for the return parameters of the
LEDGER_VERSION()function. - Ledger
Domain Separator Updated - Event with signature
LedgerDomainSeparatorUpdated(bytes32)and selector0xa43fad83920fd09445855e854e73c9c532e17402c9ceb09993a2392843a5bdb9. - MAX_
USED_ BALANCE Call - Function with signature
MAX_USED_BALANCE()and selector0x5d2f07c5. - MAX_
USED_ BALANCE Return - Container type for the return parameters of the
MAX_USED_BALANCE()function. - MIN_
USED_ BALANCE Call - Function with signature
MIN_USED_BALANCE()and selector0x29392e32. - MIN_
USED_ BALANCE Return - Container type for the return parameters of the
MIN_USED_BALANCE()function. - Multi
SigUninitialized - Custom error with signature
MultiSigUninitialized()and selector0x454a20c8. - Notice
Period NotDue - Custom error with signature
NoticePeriodNotDue()and selector0x7164032a. - Outgoing
Channel Closure Initiated - Event with signature
OutgoingChannelClosureInitiated(bytes32,uint32)and selector0x07b5c950597fc3bed92e2ad37fa84f701655acb372982e486f5fad3607f04a5c. - Redeemable
Ticket - Source
Equals Destination - Custom error with signature
SourceEqualsDestination()and selector0x97a3aed2. - TOKENS_
RECIPIENT_ INTERFACE_ HASH Call - Function with signature
TOKENS_RECIPIENT_INTERFACE_HASH()and selector0x72581cc0. - TOKENS_
RECIPIENT_ INTERFACE_ HASH Return - Container type for the return parameters of the
TOKENS_RECIPIENT_INTERFACE_HASH()function. - Ticket
Data - Ticket
Index - Ticket
Index Offset - Ticket
IsNotA Win - Custom error with signature
TicketIsNotAWin()and selector0xee835c89. - Ticket
Redeemed - Event with signature
TicketRedeemed(bytes32,uint48)and selector0x7165e2ebc7ce35cc98cb7666f9945b3617f3f36326b76d18937ba5fecf18739a. - Timestamp
- Token
Transfer Failed - Custom error with signature
TokenTransferFailed()and selector0x045c4b02. - VERSION
Call - Function with signature
VERSION()and selector0xffa1ad74. - VERSION
Return - Container type for the return parameters of the
VERSION()function. - WinProb
- Wrong
Channel State - Custom error with signature
WrongChannelState(string)and selector0x499463c1. - Wrong
Token - Custom error with signature
WrongToken()and selector0xa0f3feea. - Zero
Address - Custom error with signature
ZeroAddress(string)and selector0xeac0d389. - _current
Block Timestamp Call - Function with signature
_currentBlockTimestamp()and selector0xb920deed. - _current
Block Timestamp Return - Container type for the return parameters of the
_currentBlockTimestamp()function. - _get
Channel IdCall - Function with signature
_getChannelId(address,address)and selector0xbe9babdc. - _get
Channel IdReturn - Container type for the return parameters of the
_getChannelId(address,address)function. - _get
Ticket Hash Call - Function with signature
_getTicketHash(((bytes32,uint96,uint48,uint32,uint24,uint56),(bytes32,bytes32),uint256))and selector0x24086cc2. - _get
Ticket Hash Return - Container type for the return parameters of the
_getTicketHash(((bytes32,uint96,uint48,uint32,uint24,uint56),(bytes32,bytes32),uint256))function. - _isWinning
Ticket Call - Function with signature
_isWinningTicket(bytes32,((bytes32,uint96,uint48,uint32,uint24,uint56),(bytes32,bytes32),uint256),(uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))and selector0x8c3710c9. - _isWinning
Ticket Return - Container type for the return parameters of the
_isWinningTicket(bytes32,((bytes32,uint96,uint48,uint32,uint24,uint56),(bytes32,bytes32),uint256),(uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))function. - canImplement
Interface ForAddress Call - Function with signature
canImplementInterfaceForAddress(bytes32,address)and selector0x249cb3fa. - canImplement
Interface ForAddress Return - Container type for the return parameters of the
canImplementInterfaceForAddress(bytes32,address)function. - channels
Call - Function with signature
channels(bytes32)and selector0x7a7ebd7b. - channels
Return - Container type for the return parameters of the
channels(bytes32)function. - close
Incoming Channel Call - Function with signature
closeIncomingChannel(address)and selector0x1a7ffe7a. - close
Incoming Channel Return - Container type for the return parameters of the
closeIncomingChannel(address)function. - close
Incoming Channel Safe Call - Function with signature
closeIncomingChannelSafe(address,address)and selector0x54a2edf5. - close
Incoming Channel Safe Return - Container type for the return parameters of the
closeIncomingChannelSafe(address,address)function. - constructor
Call - Constructor`.
- domain
Separator Call - Function with signature
domainSeparator()and selector0xf698da25. - domain
Separator Return - Container type for the return parameters of the
domainSeparator()function. - finalize
Outgoing Channel Closure Call - Function with signature
finalizeOutgoingChannelClosure(address)and selector0x23cb3ac0. - finalize
Outgoing Channel Closure Return - Container type for the return parameters of the
finalizeOutgoingChannelClosure(address)function. - finalize
Outgoing Channel Closure Safe Call - Function with signature
finalizeOutgoingChannelClosureSafe(address,address)and selector0x651514bf. - finalize
Outgoing Channel Closure Safe Return - Container type for the return parameters of the
finalizeOutgoingChannelClosureSafe(address,address)function. - fund
Channel Call - Function with signature
fundChannel(address,uint96)and selector0xfc55309a. - fund
Channel Return - Container type for the return parameters of the
fundChannel(address,uint96)function. - fund
Channel Safe Call - Function with signature
fundChannelSafe(address,address,uint96)and selector0x0abec58f. - fund
Channel Safe Return - Container type for the return parameters of the
fundChannelSafe(address,address,uint96)function. - initiate
Outgoing Channel Closure Call - Function with signature
initiateOutgoingChannelClosure(address)and selector0x7c8e28da. - initiate
Outgoing Channel Closure Return - Container type for the return parameters of the
initiateOutgoingChannelClosure(address)function. - initiate
Outgoing Channel Closure Safe Call - Function with signature
initiateOutgoingChannelClosureSafe(address,address)and selector0xbda65f45. - initiate
Outgoing Channel Closure Safe Return - Container type for the return parameters of the
initiateOutgoingChannelClosureSafe(address,address)function. - ledger
Domain Separator Call - Function with signature
ledgerDomainSeparator()and selector0xc966c4fe. - ledger
Domain Separator Return - Container type for the return parameters of the
ledgerDomainSeparator()function. - multicall
Call - Function with signature
multicall(bytes[])and selector0xac9650d8. - multicall
Return - Container type for the return parameters of the
multicall(bytes[])function. - notice
Period Channel Closure Call - Function with signature
noticePeriodChannelClosure()and selector0x87352d65. - notice
Period Channel Closure Return - Container type for the return parameters of the
noticePeriodChannelClosure()function. - redeem
Ticket Call - Function with signature
redeemTicket(((bytes32,uint96,uint48,uint32,uint24,uint56),(bytes32,bytes32),uint256),(uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))and selector0xfcb7796f. - redeem
Ticket Return - Container type for the return parameters of the
redeemTicket(((bytes32,uint96,uint48,uint32,uint24,uint56),(bytes32,bytes32),uint256),(uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))function. - redeem
Ticket Safe Call - Function with signature
redeemTicketSafe(address,((bytes32,uint96,uint48,uint32,uint24,uint56),(bytes32,bytes32),uint256),(uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))and selector0x0cd88d72. - redeem
Ticket Safe Return - Container type for the return parameters of the
redeemTicketSafe(address,((bytes32,uint96,uint48,uint32,uint24,uint56),(bytes32,bytes32),uint256),(uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))function. - token
Call - Function with signature
token()and selector0xfc0c546a. - token
Return - Container type for the return parameters of the
token()function. - tokens
Received Call - Function with signature
tokensReceived(address,address,address,uint256,bytes,bytes)and selector0x0023de29. - tokens
Received Return - Container type for the return parameters of the
tokensReceived(address,address,address,uint256,bytes,bytes)function. - update
Domain Separator Call - Function with signature
updateDomainSeparator()and selector0x89ccfe89. - update
Domain Separator Return - Container type for the return parameters of the
updateDomainSeparator()function. - update
Ledger Domain Separator Call - Function with signature
updateLedgerDomainSeparator()and selector0xdc96fd50. - update
Ledger Domain Separator Return - Container type for the return parameters of the
updateLedgerDomainSeparator()function.
Enums§
- Hopr
Channels Calls - Container for all the
HoprChannelsfunction calls. - Hopr
Channels Errors - Container for all the
HoprChannelscustom errors. - Hopr
Channels Events - Container for all the
HoprChannelsevents.
Statics§
- BYTECODE
- The creation / init bytecode of the contract.
- DEPLOYED_
BYTECODE - The runtime bytecode of the contract, as deployed on the network.
Functions§
- deploy
- Deploys this contract using the given
providerand constructor arguments, if any. - deploy_
builder - Creates a
RawCallBuilderfor deploying this contract using the givenproviderand constructor arguments, if any. - new
- Creates a new wrapper around an on-chain
HoprChannelscontract instance.