Hierarchy

  • IVault__factory

Constructors

Properties

Methods

Constructors

Properties

abi: readonly [{
    inputs: readonly [{
        internalType: "UD60x18";
        name: "totalPremium";
        type: "uint256";
    }, {
        internalType: "UD60x18";
        name: "premiumLimit";
        type: "uint256";
    }];
    name: "Vault__AboveMaxSlippage";
    type: "error";
}, {
    inputs: readonly [];
    name: "Vault__AddressZero";
    type: "error";
}, {
    inputs: readonly [];
    name: "Vault__InsufficientFunds";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "UD60x18";
        name: "maximum";
        type: "uint256";
    }, {
        internalType: "UD60x18";
        name: "amount";
        type: "uint256";
    }];
    name: "Vault__MaximumAmountExceeded";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "timestamp";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "maturity";
        type: "uint256";
    }];
    name: "Vault__OptionExpired";
    type: "error";
}, {
    inputs: readonly [];
    name: "Vault__OptionPoolNotListed";
    type: "error";
}, {
    inputs: readonly [];
    name: "Vault__OptionTypeMismatchWithVault";
    type: "error";
}, {
    inputs: readonly [];
    name: "Vault__OutOfDTEBounds";
    type: "error";
}, {
    inputs: readonly [];
    name: "Vault__OutOfDeltaBounds";
    type: "error";
}, {
    inputs: readonly [];
    name: "Vault__SettingsNotFromRegistry";
    type: "error";
}, {
    inputs: readonly [];
    name: "Vault__SettingsUpdateIsEmpty";
    type: "error";
}, {
    inputs: readonly [];
    name: "Vault__StrikeZero";
    type: "error";
}, {
    inputs: readonly [];
    name: "Vault__TradeMustBeBuy";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "UD60x18";
        name: "balance";
        type: "uint256";
    }, {
        internalType: "UD60x18";
        name: "amount";
        type: "uint256";
    }];
    name: "Vault__TransferExceedsBalance";
    type: "error";
}, {
    inputs: readonly [];
    name: "Vault__ZeroAsset";
    type: "error";
}, {
    inputs: readonly [];
    name: "Vault__ZeroShares";
    type: "error";
}, {
    inputs: readonly [];
    name: "Vault__ZeroSize";
    type: "error";
}, {
    anonymous: false;
    inputs: readonly [{
        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: readonly [{
        indexed: true;
        internalType: "bytes32";
        name: "borrowId";
        type: "bytes32";
    }, {
        indexed: true;
        internalType: "address";
        name: "from";
        type: "address";
    }, {
        indexed: true;
        internalType: "address";
        name: "borrowToken";
        type: "address";
    }, {
        indexed: false;
        internalType: "address";
        name: "collateralToken";
        type: "address";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "sizeBorrowed";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "collateralLocked";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "borrowFee";
        type: "uint256";
    }];
    name: "Borrow";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "bytes32";
        name: "borrowId";
        type: "bytes32";
    }, {
        indexed: true;
        internalType: "address";
        name: "from";
        type: "address";
    }, {
        indexed: true;
        internalType: "address";
        name: "collateralToken";
        type: "address";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "collateralLiquidated";
        type: "uint256";
    }];
    name: "BorrowLiquidated";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "address";
        name: "caller";
        type: "address";
    }, {
        indexed: true;
        internalType: "address";
        name: "owner";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "assets";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "shares";
        type: "uint256";
    }];
    name: "Deposit";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "address";
        name: "recipient";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "managementFee";
        type: "uint256";
    }];
    name: "ManagementFeePaid";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "address";
        name: "recipient";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "performanceFee";
        type: "uint256";
    }];
    name: "PerformanceFeePaid";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "bytes32";
        name: "borrowId";
        type: "bytes32";
    }, {
        indexed: true;
        internalType: "address";
        name: "from";
        type: "address";
    }, {
        indexed: true;
        internalType: "address";
        name: "borrowToken";
        type: "address";
    }, {
        indexed: false;
        internalType: "address";
        name: "collateralToken";
        type: "address";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "amountRepaid";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "collateralUnlocked";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "repayFee";
        type: "uint256";
    }];
    name: "RepayBorrow";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "address";
        name: "sender";
        type: "address";
    }, {
        indexed: false;
        internalType: "address";
        name: "recipient";
        type: "address";
    }, {
        indexed: true;
        internalType: "address";
        name: "tokenIn";
        type: "address";
    }, {
        indexed: true;
        internalType: "address";
        name: "tokenOut";
        type: "address";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "amountIn";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "amountOut";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "takerFee";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "makerRebate";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "vaultFee";
        type: "uint256";
    }];
    name: "Swap";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "address";
        name: "user";
        type: "address";
    }, {
        indexed: true;
        internalType: "address";
        name: "pool";
        type: "address";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "contractSize";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "bool";
        name: "isBuy";
        type: "bool";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "premium";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "takerFee";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "makerRebate";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "UD60x18";
        name: "vaultFee";
        type: "uint256";
    }];
    name: "Trade";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        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: readonly [];
    name: "UpdateQuotes";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: true;
        internalType: "address";
        name: "caller";
        type: "address";
    }, {
        indexed: true;
        internalType: "address";
        name: "receiver";
        type: "address";
    }, {
        indexed: true;
        internalType: "address";
        name: "owner";
        type: "address";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "assets";
        type: "uint256";
    }, {
        indexed: false;
        internalType: "uint256";
        name: "shares";
        type: "uint256";
    }];
    name: "Withdraw";
    type: "event";
}, {
    inputs: readonly [{
        components: readonly [{
            internalType: "address";
            name: "base";
            type: "address";
        }, {
            internalType: "address";
            name: "quote";
            type: "address";
        }, {
            internalType: "address";
            name: "oracleAdapter";
            type: "address";
        }, {
            internalType: "UD60x18";
            name: "strike";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "maturity";
            type: "uint256";
        }, {
            internalType: "bool";
            name: "isCallPool";
            type: "bool";
        }];
        internalType: "struct IPoolFactory.PoolKey";
        name: "poolKey";
        type: "tuple";
    }, {
        internalType: "UD60x18";
        name: "size";
        type: "uint256";
    }, {
        internalType: "bool";
        name: "isBuy";
        type: "bool";
    }, {
        internalType: "address";
        name: "taker";
        type: "address";
    }];
    name: "getQuote";
    outputs: readonly [{
        internalType: "uint256";
        name: "premium";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        components: readonly [{
            internalType: "address";
            name: "base";
            type: "address";
        }, {
            internalType: "address";
            name: "quote";
            type: "address";
        }, {
            internalType: "address";
            name: "oracleAdapter";
            type: "address";
        }, {
            internalType: "UD60x18";
            name: "strike";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "maturity";
            type: "uint256";
        }, {
            internalType: "bool";
            name: "isCallPool";
            type: "bool";
        }];
        internalType: "struct IPoolFactory.PoolKey";
        name: "poolKey";
        type: "tuple";
    }, {
        internalType: "UD60x18";
        name: "size";
        type: "uint256";
    }, {
        internalType: "bool";
        name: "isBuy";
        type: "bool";
    }, {
        internalType: "uint256";
        name: "premiumLimit";
        type: "uint256";
    }, {
        internalType: "address";
        name: "referrer";
        type: "address";
    }];
    name: "trade";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "bytes";
        name: "settings";
        type: "bytes";
    }];
    name: "updateSettings";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}] = _abi

Methods

  • Parameters

    • address: string
    • Optional runner: null | ContractRunner

    Returns IVault

  • Returns IVaultInterface

Generated using TypeDoc