abi
abi: readonly [{
inputs: readonly [{
internalType: "contract IStakingRegistry";
name: "_stakingRegistry";
type: "address";
}, {
internalType: "contract IMessageDispatcher";
name: "_dispatcher";
type: "address";
}, {
internalType: "contract IMessageExecutor";
name: "_executor";
type: "address";
}, {
internalType: "contract IFeeManager";
name: "_feeManager";
type: "address";
}, {
internalType: "address";
name: "_railsPathImplementation";
type: "address";
}, {
internalType: "uint256";
name: "_defaultTokenFee";
type: "uint256";
}, {
internalType: "address";
name: "_tokenFeeRecipient";
type: "address";
}];
stateMutability: "nonpayable";
type: "constructor";
}, {
stateMutability: "payable";
type: "receive";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "bytes32";
name: "claimId";
type: "bytes32";
}, {
internalType: "uint256";
name: "bonderFee";
type: "uint256";
}, {
components: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "uint256";
name: "maxBonderFee";
type: "uint256";
}, {
internalType: "uint256";
name: "maxTotalSent";
type: "uint256";
}, {
internalType: "bytes32";
name: "attestedClaimId";
type: "bytes32";
}];
internalType: "struct Hop[]";
name: "nextHops";
type: "tuple[]";
}];
name: "bond";
outputs: readonly [{
internalType: "bytes32";
name: "transferId";
type: "bytes32";
}];
stateMutability: "payable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}];
name: "claimFeesFromPath";
outputs: readonly [];
stateMutability: "payable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "bytes32";
name: "claimId";
type: "bytes32";
}];
name: "confirmClaim";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "";
type: "bytes32";
}];
name: "counterpartChainIds";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "defaultTokenFee";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "dispatcher";
outputs: readonly [{
internalType: "contract IMessageDispatcher";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "address";
name: "account";
type: "address";
}, {
internalType: "uint256";
name: "totalFees";
type: "uint256";
}, {
internalType: "bytes32";
name: "lastClaimId";
type: "bytes32";
}];
name: "distributeClaimedFees";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "executor";
outputs: readonly [{
internalType: "contract IMessageExecutor";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "feeManager";
outputs: readonly [{
internalType: "contract IFeeManager";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
name: "gateways";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
internalType: "bytes32";
name: "attestedClaimId";
type: "bytes32";
}, {
internalType: "uint256";
name: "sourcePool";
type: "uint256";
}];
name: "getAmountOut";
outputs: readonly [{
internalType: "uint256";
name: "amountOut";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}];
name: "getCounterpartChainId";
outputs: readonly [{
internalType: "uint256";
name: "counterpartChainId";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "chainId";
type: "uint256";
}];
name: "getMessageFee";
outputs: readonly [{
internalType: "uint256";
name: "messageFee";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}];
name: "getPath";
outputs: readonly [{
internalType: "contract IRailsPath";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "chainId0";
type: "uint256";
}, {
internalType: "contract IERC20";
name: "token0";
type: "address";
}, {
internalType: "uint256";
name: "chainId1";
type: "uint256";
}, {
internalType: "contract IERC20";
name: "token1";
type: "address";
}, {
internalType: "uint256";
name: "initialReserve";
type: "uint256";
}];
name: "getPathId";
outputs: readonly [{
internalType: "bytes32";
name: "";
type: "bytes32";
}];
stateMutability: "pure";
type: "function";
}, {
inputs: readonly [];
name: "getPushClaimFee";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "getRemoveFee";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}];
name: "getSendFee";
outputs: readonly [{
internalType: "uint256";
name: "";
type: "uint256";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "chainId";
type: "uint256";
}, {
internalType: "address";
name: "gateway";
type: "address";
}];
name: "initChain";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "contract IERC20";
name: "token";
type: "address";
}, {
internalType: "uint256";
name: "counterpartChainId";
type: "uint256";
}, {
internalType: "contract IERC20";
name: "counterpartToken";
type: "address";
}, {
internalType: "uint256";
name: "initialReserve";
type: "uint256";
}];
name: "initPath";
outputs: readonly [{
internalType: "bytes32";
name: "";
type: "bytes32";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}];
name: "isPathInitialized";
outputs: readonly [{
internalType: "bool";
name: "";
type: "bool";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [];
name: "owner";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "bytes32";
name: "claimId";
type: "bytes32";
}, {
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
internalType: "uint256";
name: "maxBonderFee";
type: "uint256";
}, {
internalType: "bytes32";
name: "attestedClaimId";
type: "bytes32";
}, {
internalType: "uint256";
name: "sourcePool";
type: "uint256";
}, {
internalType: "bytes32";
name: "nextHopsHash";
type: "bytes32";
}];
name: "pushClaim";
outputs: readonly [];
stateMutability: "payable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "bytes32";
name: "claimId";
type: "bytes32";
}, {
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "amountOut";
type: "uint256";
}, {
internalType: "uint256";
name: "maxBonderFee";
type: "uint256";
}, {
internalType: "bytes32";
name: "attestedClaimId";
type: "bytes32";
}, {
internalType: "uint256";
name: "sourcePool";
type: "uint256";
}, {
internalType: "uint256";
name: "bonderFee";
type: "uint256";
}, {
components: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "uint256";
name: "maxBonderFee";
type: "uint256";
}, {
internalType: "uint256";
name: "maxTotalSent";
type: "uint256";
}, {
internalType: "bytes32";
name: "attestedClaimId";
type: "bytes32";
}];
internalType: "struct Hop[]";
name: "nextHops";
type: "tuple[]";
}];
name: "pushClaimAndBond";
outputs: readonly [];
stateMutability: "payable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "bytes32";
name: "claimId";
type: "bytes32";
}, {
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "amountOut";
type: "uint256";
}, {
internalType: "uint256";
name: "maxBonderFee";
type: "uint256";
}, {
internalType: "bytes32";
name: "attestedClaimId";
type: "bytes32";
}, {
internalType: "uint256";
name: "sourcePool";
type: "uint256";
}, {
components: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "uint256";
name: "maxBonderFee";
type: "uint256";
}, {
internalType: "uint256";
name: "maxTotalSent";
type: "uint256";
}, {
internalType: "bytes32";
name: "attestedClaimId";
type: "bytes32";
}];
internalType: "struct Hop[]";
name: "nextHops";
type: "tuple[]";
}];
name: "pushClaimAndWithdraw";
outputs: readonly [];
stateMutability: "payable";
type: "function";
}, {
inputs: readonly [];
name: "railsPathImplementation";
outputs: readonly [{
internalType: "address";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "bytes32";
name: "transferDataHash";
type: "bytes32";
}, {
internalType: "bytes32";
name: "claimId";
type: "bytes32";
}];
name: "readdClaim";
outputs: readonly [];
stateMutability: "payable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "bytes32";
name: "claimId";
type: "bytes32";
}];
name: "removeClaim";
outputs: readonly [];
stateMutability: "payable";
type: "function";
}, {
inputs: readonly [];
name: "renounceOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "to";
type: "address";
}, {
internalType: "uint256";
name: "amount";
type: "uint256";
}, {
components: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "uint256";
name: "maxBonderFee";
type: "uint256";
}, {
internalType: "uint256";
name: "maxTotalSent";
type: "uint256";
}, {
internalType: "bytes32";
name: "attestedClaimId";
type: "bytes32";
}];
internalType: "struct Hop[]";
name: "hops";
type: "tuple[]";
}];
name: "send";
outputs: readonly [{
internalType: "bytes32";
name: "transferId";
type: "bytes32";
}];
stateMutability: "payable";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "fee";
type: "uint256";
}];
name: "setDefaultTokenFee";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "contract IStakingRegistry";
name: "newStakingRegistry";
type: "address";
}];
name: "setStakingRegistry";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "recipient";
type: "address";
}];
name: "setTokenFeeRecipient";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [];
name: "stakingRegistry";
outputs: readonly [{
internalType: "contract IStakingRegistry";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "";
type: "bytes32";
}];
name: "tokens";
outputs: readonly [{
internalType: "contract IERC20";
name: "";
type: "address";
}];
stateMutability: "view";
type: "function";
}, {
inputs: readonly [{
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "uint256";
name: "fee";
type: "uint256";
}];
name: "updateDefaultTokenFee";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "uint256";
name: "fee";
type: "uint256";
}];
name: "updateTokenFee";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "bytes32";
name: "claimId";
type: "bytes32";
}];
name: "withdrawBonds";
outputs: readonly [{
internalType: "uint256";
name: "amount";
type: "uint256";
}];
stateMutability: "nonpayable";
type: "function";
}, {
inputs: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "bytes32";
name: "claimId";
type: "bytes32";
}, {
components: readonly [{
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
internalType: "uint256";
name: "maxBonderFee";
type: "uint256";
}, {
internalType: "uint256";
name: "maxTotalSent";
type: "uint256";
}, {
internalType: "bytes32";
name: "attestedClaimId";
type: "bytes32";
}];
internalType: "struct Hop[]";
name: "nextHops";
type: "tuple[]";
}];
name: "withdrawClaim";
outputs: readonly [{
internalType: "bytes32";
name: "transferId";
type: "bytes32";
}];
stateMutability: "payable";
type: "function";
}, {
anonymous: false;
inputs: readonly [{
indexed: true;
internalType: "address";
name: "previousOwner";
type: "address";
}, {
indexed: true;
internalType: "address";
name: "newOwner";
type: "address";
}];
name: "OwnershipTransferred";
type: "event";
}, {
anonymous: false;
inputs: readonly [{
indexed: false;
internalType: "bytes32";
name: "pathId";
type: "bytes32";
}, {
indexed: false;
internalType: "contract IERC20";
name: "token";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "counterpartChainId";
type: "uint256";
}, {
indexed: false;
internalType: "contract IERC20";
name: "counterpartToken";
type: "address";
}, {
indexed: false;
internalType: "uint256";
name: "initialReserve";
type: "uint256";
}, {
indexed: false;
internalType: "address";
name: "path";
type: "address";
}];
name: "PathInitialized";
type: "event";
}] = RailsGateway__factory.abi