Constructors

Properties

Methods

Constructors

Properties

abi: readonly [{
    inputs: readonly [{
        internalType: "address";
        name: "GARP_";
        type: "address";
    }, {
        internalType: "address";
        name: "defaultOwner";
        type: "address";
    }];
    stateMutability: "nonpayable";
    type: "constructor";
}, {
    inputs: readonly [];
    name: "ChainAlreadySetup";
    type: "error";
}, {
    inputs: readonly [];
    name: "InvalidAddress";
    type: "error";
}, {
    inputs: readonly [];
    name: "InvalidBytes65Address";
    type: "error";
}, {
    inputs: readonly [];
    name: "InvalidCaller";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "bytes1";
        name: "context";
        type: "bytes1";
    }];
    name: "InvalidContext";
    type: "error";
}, {
    inputs: readonly [];
    name: "InvalidSourceApplication";
    type: "error";
}, {
    inputs: readonly [];
    name: "MaliciousVault";
    type: "error";
}, {
    inputs: readonly [];
    name: "MaxUnderwriteDurationTooLong";
    type: "error";
}, {
    inputs: readonly [];
    name: "MaxUnderwriteDurationTooShort";
    type: "error";
}, {
    inputs: readonly [];
    name: "NoVaultConnection";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "expected";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "actual";
        type: "uint256";
    }];
    name: "NotEnoughIncentives";
    type: "error";
}, {
    inputs: readonly [];
    name: "SubcallOutOfGas";
    type: "error";
}, {
    inputs: readonly [];
    name: "SwapAlreadyUnderwritten";
    type: "error";
}, {
    inputs: readonly [];
    name: "SwapRecentlyUnderwritten";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "identifier";
        type: "bytes32";
    }];
    name: "UnderwriteDoesNotExist";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "blocksUnitilExpiry";
        type: "uint256";
    }];
    name: "UnderwriteNotExpired";
    type: "error";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "bytes32";
        name: "identifier";
        type: "bytes32";
    }, {
        indexed: false;
        internalType: "address";
        name: "expirer";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "reward";
        type: "uint256";
    }];
    name: "ExpireUnderwrite";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "bytes32";
        name: "identifier";
        type: "bytes32";
    }];
    name: "FulfillUnderwrite";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "uint256";
        name: "newMaxUnderwriteDuration";
        type: "uint256";
    }];
    name: "MaxUnderwriteDuration";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "bytes32";
        name: "identifier";
        type: "bytes32";
    }, {
        indexed: false;
        internalType: "uint48";
        name: "minGas";
        type: "uint48";
    }];
    name: "MinGasFor";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "bytes32";
        name: "chainIdentifier";
        type: "bytes32";
    }, {
        indexed: false;
        internalType: "bytes";
        name: "remoteCCI";
        type: "bytes";
    }, {
        indexed: false;
        internalType: "bytes";
        name: "remoteGARP";
        type: "bytes";
    }];
    name: "RemoteImplementationSet";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "bytes1";
        name: "error";
        type: "bytes1";
    }];
    name: "SwapFailed";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "bytes32";
        name: "identifier";
        type: "bytes32";
    }, {
        indexed: true;
        internalType: "address";
        name: "underwriter";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint96";
        name: "expiry";
        type: "uint96";
    }, {
        indexed: false;
        internalType: "address";
        name: "targetVault";
        type: "address";
    }, {
        indexed: false;
        internalType: "address";
        name: "toAsset";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "U";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "address";
        name: "toAccount";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "outAmount";
        type: "uint256";
    }];
    name: "SwapUnderwritten";
    type: "event";
}, {
    inputs: readonly [];
    name: "EXPIRE_CALLER_REWARD";
    outputs: readonly [{
        internalType: "uint256";
        name: "";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [];
    name: "EXPIRE_CALLER_REWARD_DENOMINATOR";
    outputs: readonly [{
        internalType: "uint256";
        name: "";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [];
    name: "GARP";
    outputs: readonly [{
        internalType: "contract IIncentivizedMessageEscrow";
        name: "";
        type: "address";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [];
    name: "UNDERWRITING_COLLATORAL";
    outputs: readonly [{
        internalType: "uint256";
        name: "";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [];
    name: "UNDERWRITING_COLLATORAL_DENOMINATOR";
    outputs: readonly [{
        internalType: "uint256";
        name: "";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "";
        type: "bytes32";
    }];
    name: "chainIdentifierToDestinationAddress";
    outputs: readonly [{
        internalType: "bytes";
        name: "";
        type: "bytes";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "chainIdentifier";
        type: "bytes32";
    }, {
        internalType: "bytes";
        name: "remoteCCI";
        type: "bytes";
    }, {
        internalType: "bytes";
        name: "remoteGARP";
        type: "bytes";
    }];
    name: "connectNewChain";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "evmAddress";
        type: "address";
    }];
    name: "convertEVMTo65";
    outputs: readonly [{
        internalType: "bytes";
        name: "";
        type: "bytes";
    }];
    stateMutability: "pure";
    type: "function";
}, {
    inputs: readonly [];
    name: "estimateAdditionalCost";
    outputs: readonly [{
        internalType: "address";
        name: "asset";
        type: "address";
    }, {
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "targetVault";
        type: "address";
    }, {
        internalType: "address";
        name: "toAsset";
        type: "address";
    }, {
        internalType: "uint256";
        name: "U";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "minOut";
        type: "uint256";
    }, {
        internalType: "address";
        name: "toAccount";
        type: "address";
    }, {
        internalType: "uint16";
        name: "underwriteIncentiveX16";
        type: "uint16";
    }, {
        internalType: "bytes";
        name: "cdata";
        type: "bytes";
    }];
    name: "expireUnderwrite";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "targetVault";
        type: "address";
    }, {
        internalType: "address";
        name: "toAsset";
        type: "address";
    }, {
        internalType: "uint256";
        name: "U";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "minOut";
        type: "uint256";
    }, {
        internalType: "address";
        name: "toAccount";
        type: "address";
    }, {
        internalType: "uint16";
        name: "underwriteIncentiveX16";
        type: "uint16";
    }, {
        internalType: "bytes";
        name: "cdata";
        type: "bytes";
    }];
    name: "getUnderwriteIdentifier";
    outputs: readonly [{
        internalType: "bytes32";
        name: "identifier";
        type: "bytes32";
    }];
    stateMutability: "pure";
    type: "function";
}, {
    inputs: readonly [];
    name: "maxUnderwritingDuration";
    outputs: readonly [{
        internalType: "uint256";
        name: "";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "";
        type: "bytes32";
    }];
    name: "minGasFor";
    outputs: readonly [{
        internalType: "uint48";
        name: "";
        type: "uint48";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [];
    name: "owner";
    outputs: readonly [{
        internalType: "address";
        name: "";
        type: "address";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "destinationIdentifier";
        type: "bytes32";
    }, {
        internalType: "bytes32";
        name: "messageIdentifier";
        type: "bytes32";
    }, {
        internalType: "bytes";
        name: "acknowledgement";
        type: "bytes";
    }];
    name: "receiveAck";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "sourceIdentifier";
        type: "bytes32";
    }, {
        internalType: "bytes32";
        name: "";
        type: "bytes32";
    }, {
        internalType: "bytes";
        name: "fromApplication";
        type: "bytes";
    }, {
        internalType: "bytes";
        name: "message";
        type: "bytes";
    }];
    name: "receiveMessage";
    outputs: readonly [{
        internalType: "bytes";
        name: "acknowledgement";
        type: "bytes";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [];
    name: "renounceOwnership";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "newMaxUnderwriteDuration";
        type: "uint256";
    }];
    name: "setMaxUnderwritingDuration";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "chainIdentifier";
        type: "bytes32";
    }, {
        internalType: "uint48";
        name: "minGas";
        type: "uint48";
    }];
    name: "setMinGasFor";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [];
    name: "thisBytes65";
    outputs: readonly [{
        internalType: "bytes";
        name: "";
        type: "bytes";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "newOwner";
        type: "address";
    }];
    name: "transferOwnership";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "targetVault";
        type: "address";
    }, {
        internalType: "address";
        name: "toAsset";
        type: "address";
    }, {
        internalType: "uint256";
        name: "U";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "minOut";
        type: "uint256";
    }, {
        internalType: "address";
        name: "toAccount";
        type: "address";
    }, {
        internalType: "uint16";
        name: "underwriteIncentiveX16";
        type: "uint16";
    }, {
        internalType: "bytes";
        name: "cdata";
        type: "bytes";
    }];
    name: "underwrite";
    outputs: readonly [{
        internalType: "bytes32";
        name: "identifier";
        type: "bytes32";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "sourceIdentifier";
        type: "bytes32";
    }, {
        internalType: "bytes";
        name: "fromVault";
        type: "bytes";
    }, {
        internalType: "address";
        name: "targetVault";
        type: "address";
    }, {
        internalType: "address";
        name: "toAsset";
        type: "address";
    }, {
        internalType: "uint256";
        name: "U";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "minOut";
        type: "uint256";
    }, {
        internalType: "address";
        name: "toAccount";
        type: "address";
    }, {
        internalType: "uint16";
        name: "underwriteIncentiveX16";
        type: "uint16";
    }, {
        internalType: "bytes";
        name: "cdata";
        type: "bytes";
    }];
    name: "underwriteAndCheckConnection";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "";
        type: "bytes32";
    }];
    name: "underwritingStorage";
    outputs: readonly [{
        internalType: "uint256";
        name: "tokens";
        type: "uint256";
    }, {
        internalType: "address";
        name: "refundTo";
        type: "address";
    }, {
        internalType: "uint96";
        name: "expiry";
        type: "uint96";
    }];
    stateMutability: "view";
    type: "function";
}] = _abi

Methods