UNPKG

@mstable/protocol

Version:
1,319 lines (1,118 loc) 37.6 kB
/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import { ethers, EventFilter, Signer, BigNumber, BigNumberish, PopulatedTransaction, BaseContract, ContractTransaction, Overrides, CallOverrides, } from "ethers"; import { BytesLike } from "@ethersproject/bytes"; import { Listener, Provider } from "@ethersproject/providers"; import { FunctionFragment, EventFragment, Result } from "@ethersproject/abi"; import { TypedEventFilter, TypedEvent, TypedListener } from "./commons"; interface ISavingsContractV4Interface extends ethers.utils.Interface { functions: { "allowance(address,address)": FunctionFragment; "approve(address,uint256)": FunctionFragment; "asset()": FunctionFragment; "balanceOf(address)": FunctionFragment; "balanceOfUnderlying(address)": FunctionFragment; "convertToAssets(uint256)": FunctionFragment; "convertToShares(uint256)": FunctionFragment; "creditBalances(address)": FunctionFragment; "creditsToUnderlying(uint256)": FunctionFragment; "deposit(uint256,address,address)": FunctionFragment; "depositInterest(uint256)": FunctionFragment; "depositSavings(uint256,address,address)": FunctionFragment; "exchangeRate()": FunctionFragment; "maxDeposit(address)": FunctionFragment; "maxMint(address)": FunctionFragment; "maxRedeem(address)": FunctionFragment; "maxWithdraw(address)": FunctionFragment; "mint(uint256,address)": FunctionFragment; "previewDeposit(uint256)": FunctionFragment; "previewMint(uint256)": FunctionFragment; "previewRedeem(uint256)": FunctionFragment; "previewWithdraw(uint256)": FunctionFragment; "redeem(uint256,address,address)": FunctionFragment; "redeemAndUnwrap(uint256,bool,uint256,address,address,address,bool)": FunctionFragment; "redeemCredits(uint256)": FunctionFragment; "redeemUnderlying(uint256)": FunctionFragment; "totalAssets()": FunctionFragment; "totalSupply()": FunctionFragment; "transfer(address,uint256)": FunctionFragment; "transferFrom(address,address,uint256)": FunctionFragment; "underlyingToCredits(uint256)": FunctionFragment; "withdraw(uint256,address,address)": FunctionFragment; }; encodeFunctionData( functionFragment: "allowance", values: [string, string] ): string; encodeFunctionData( functionFragment: "approve", values: [string, BigNumberish] ): string; encodeFunctionData(functionFragment: "asset", values?: undefined): string; encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; encodeFunctionData( functionFragment: "balanceOfUnderlying", values: [string] ): string; encodeFunctionData( functionFragment: "convertToAssets", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "convertToShares", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "creditBalances", values: [string] ): string; encodeFunctionData( functionFragment: "creditsToUnderlying", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "deposit", values: [BigNumberish, string, string] ): string; encodeFunctionData( functionFragment: "depositInterest", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "depositSavings", values: [BigNumberish, string, string] ): string; encodeFunctionData( functionFragment: "exchangeRate", values?: undefined ): string; encodeFunctionData(functionFragment: "maxDeposit", values: [string]): string; encodeFunctionData(functionFragment: "maxMint", values: [string]): string; encodeFunctionData(functionFragment: "maxRedeem", values: [string]): string; encodeFunctionData(functionFragment: "maxWithdraw", values: [string]): string; encodeFunctionData( functionFragment: "mint", values: [BigNumberish, string] ): string; encodeFunctionData( functionFragment: "previewDeposit", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "previewMint", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "previewRedeem", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "previewWithdraw", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "redeem", values: [BigNumberish, string, string] ): string; encodeFunctionData( functionFragment: "redeemAndUnwrap", values: [ BigNumberish, boolean, BigNumberish, string, string, string, boolean ] ): string; encodeFunctionData( functionFragment: "redeemCredits", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "redeemUnderlying", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "totalAssets", values?: undefined ): string; encodeFunctionData( functionFragment: "totalSupply", values?: undefined ): string; encodeFunctionData( functionFragment: "transfer", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "transferFrom", values: [string, string, BigNumberish] ): string; encodeFunctionData( functionFragment: "underlyingToCredits", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "withdraw", values: [BigNumberish, string, string] ): string; decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; decodeFunctionResult(functionFragment: "asset", data: BytesLike): Result; decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; decodeFunctionResult( functionFragment: "balanceOfUnderlying", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "convertToAssets", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "convertToShares", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "creditBalances", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "creditsToUnderlying", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; decodeFunctionResult( functionFragment: "depositInterest", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "depositSavings", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "exchangeRate", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "maxDeposit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "maxMint", data: BytesLike): Result; decodeFunctionResult(functionFragment: "maxRedeem", data: BytesLike): Result; decodeFunctionResult( functionFragment: "maxWithdraw", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; decodeFunctionResult( functionFragment: "previewDeposit", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "previewMint", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "previewRedeem", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "previewWithdraw", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result; decodeFunctionResult( functionFragment: "redeemAndUnwrap", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "redeemCredits", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "redeemUnderlying", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "totalAssets", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "totalSupply", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; decodeFunctionResult( functionFragment: "transferFrom", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "underlyingToCredits", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result; events: { "Approval(address,address,uint256)": EventFragment; "Deposit(address,address,uint256,uint256)": EventFragment; "Transfer(address,address,uint256)": EventFragment; "Withdraw(address,address,address,uint256,uint256)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment; getEvent(nameOrSignatureOrTopic: "Deposit"): EventFragment; getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment; getEvent(nameOrSignatureOrTopic: "Withdraw"): EventFragment; } export class ISavingsContractV4 extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise<this>; listeners<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter?: TypedEventFilter<EventArgsArray, EventArgsObject> ): Array<TypedListener<EventArgsArray, EventArgsObject>>; off<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>, listener: TypedListener<EventArgsArray, EventArgsObject> ): this; on<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>, listener: TypedListener<EventArgsArray, EventArgsObject> ): this; once<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>, listener: TypedListener<EventArgsArray, EventArgsObject> ): this; removeListener<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>, listener: TypedListener<EventArgsArray, EventArgsObject> ): this; removeAllListeners<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject> ): this; listeners(eventName?: string): Array<Listener>; off(eventName: string, listener: Listener): this; on(eventName: string, listener: Listener): this; once(eventName: string, listener: Listener): this; removeListener(eventName: string, listener: Listener): this; removeAllListeners(eventName?: string): this; queryFilter<EventArgsArray extends Array<any>, EventArgsObject>( event: TypedEventFilter<EventArgsArray, EventArgsObject>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined ): Promise<Array<TypedEvent<EventArgsArray & EventArgsObject>>>; interface: ISavingsContractV4Interface; functions: { allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<[BigNumber]>; approve( spender: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; asset( overrides?: CallOverrides ): Promise<[string] & { assetTokenAddress: string }>; balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; balanceOfUnderlying( _user: string, overrides?: CallOverrides ): Promise<[BigNumber] & { balance: BigNumber }>; convertToAssets( shares: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber] & { assets: BigNumber }>; convertToShares( assets: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber] & { shares: BigNumber }>; creditBalances( arg0: string, overrides?: CallOverrides ): Promise<[BigNumber]>; creditsToUnderlying( _underlying: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber] & { credits: BigNumber }>; "deposit(uint256,address,address)"( assets: BigNumberish, receiver: string, referrer: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; "deposit(uint256,address)"( assets: BigNumberish, receiver: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; depositInterest( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; "depositSavings(uint256,address,address)"( _underlying: BigNumberish, _beneficiary: string, _referrer: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; "depositSavings(uint256,address)"( _amount: BigNumberish, _beneficiary: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; "depositSavings(uint256)"( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; exchangeRate(overrides?: CallOverrides): Promise<[BigNumber]>; maxDeposit( caller: string, overrides?: CallOverrides ): Promise<[BigNumber] & { maxAssets: BigNumber }>; maxMint( caller: string, overrides?: CallOverrides ): Promise<[BigNumber] & { maxShares: BigNumber }>; maxRedeem( owner: string, overrides?: CallOverrides ): Promise<[BigNumber] & { maxShares: BigNumber }>; maxWithdraw( owner: string, overrides?: CallOverrides ): Promise<[BigNumber] & { maxAssets: BigNumber }>; "mint(uint256,address)"( shares: BigNumberish, receiver: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; "mint(uint256,address,address)"( shares: BigNumberish, receiver: string, referrer: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; previewDeposit( assets: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber] & { shares: BigNumber }>; previewMint( shares: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber] & { assets: BigNumber }>; previewRedeem( shares: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber] & { assets: BigNumber }>; previewWithdraw( assets: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber] & { shares: BigNumber }>; "redeem(uint256,address,address)"( shares: BigNumberish, receiver: string, owner: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; "redeem(uint256)"( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; redeemAndUnwrap( _amount: BigNumberish, _isCreditAmt: boolean, _minAmountOut: BigNumberish, _output: string, _beneficiary: string, _router: string, _isBassetOut: boolean, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; redeemCredits( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; redeemUnderlying( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; totalAssets( overrides?: CallOverrides ): Promise<[BigNumber] & { totalManagedAssets: BigNumber }>; totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; transfer( recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; underlyingToCredits( _credits: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber] & { underlying: BigNumber }>; withdraw( assets: BigNumberish, receiver: string, owner: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; }; allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<BigNumber>; approve( spender: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; asset(overrides?: CallOverrides): Promise<string>; balanceOf(account: string, overrides?: CallOverrides): Promise<BigNumber>; balanceOfUnderlying( _user: string, overrides?: CallOverrides ): Promise<BigNumber>; convertToAssets( shares: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; convertToShares( assets: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; creditBalances(arg0: string, overrides?: CallOverrides): Promise<BigNumber>; creditsToUnderlying( _underlying: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; "deposit(uint256,address,address)"( assets: BigNumberish, receiver: string, referrer: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; "deposit(uint256,address)"( assets: BigNumberish, receiver: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; depositInterest( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; "depositSavings(uint256,address,address)"( _underlying: BigNumberish, _beneficiary: string, _referrer: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; "depositSavings(uint256,address)"( _amount: BigNumberish, _beneficiary: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; "depositSavings(uint256)"( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; exchangeRate(overrides?: CallOverrides): Promise<BigNumber>; maxDeposit(caller: string, overrides?: CallOverrides): Promise<BigNumber>; maxMint(caller: string, overrides?: CallOverrides): Promise<BigNumber>; maxRedeem(owner: string, overrides?: CallOverrides): Promise<BigNumber>; maxWithdraw(owner: string, overrides?: CallOverrides): Promise<BigNumber>; "mint(uint256,address)"( shares: BigNumberish, receiver: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; "mint(uint256,address,address)"( shares: BigNumberish, receiver: string, referrer: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; previewDeposit( assets: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; previewMint( shares: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; previewRedeem( shares: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; previewWithdraw( assets: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; "redeem(uint256,address,address)"( shares: BigNumberish, receiver: string, owner: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; "redeem(uint256)"( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; redeemAndUnwrap( _amount: BigNumberish, _isCreditAmt: boolean, _minAmountOut: BigNumberish, _output: string, _beneficiary: string, _router: string, _isBassetOut: boolean, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; redeemCredits( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; redeemUnderlying( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; totalAssets(overrides?: CallOverrides): Promise<BigNumber>; totalSupply(overrides?: CallOverrides): Promise<BigNumber>; transfer( recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; underlyingToCredits( _credits: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; withdraw( assets: BigNumberish, receiver: string, owner: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; callStatic: { allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<BigNumber>; approve( spender: string, amount: BigNumberish, overrides?: CallOverrides ): Promise<boolean>; asset(overrides?: CallOverrides): Promise<string>; balanceOf(account: string, overrides?: CallOverrides): Promise<BigNumber>; balanceOfUnderlying( _user: string, overrides?: CallOverrides ): Promise<BigNumber>; convertToAssets( shares: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; convertToShares( assets: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; creditBalances(arg0: string, overrides?: CallOverrides): Promise<BigNumber>; creditsToUnderlying( _underlying: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; "deposit(uint256,address,address)"( assets: BigNumberish, receiver: string, referrer: string, overrides?: CallOverrides ): Promise<BigNumber>; "deposit(uint256,address)"( assets: BigNumberish, receiver: string, overrides?: CallOverrides ): Promise<BigNumber>; depositInterest( _amount: BigNumberish, overrides?: CallOverrides ): Promise<void>; "depositSavings(uint256,address,address)"( _underlying: BigNumberish, _beneficiary: string, _referrer: string, overrides?: CallOverrides ): Promise<BigNumber>; "depositSavings(uint256,address)"( _amount: BigNumberish, _beneficiary: string, overrides?: CallOverrides ): Promise<BigNumber>; "depositSavings(uint256)"( _amount: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; exchangeRate(overrides?: CallOverrides): Promise<BigNumber>; maxDeposit(caller: string, overrides?: CallOverrides): Promise<BigNumber>; maxMint(caller: string, overrides?: CallOverrides): Promise<BigNumber>; maxRedeem(owner: string, overrides?: CallOverrides): Promise<BigNumber>; maxWithdraw(owner: string, overrides?: CallOverrides): Promise<BigNumber>; "mint(uint256,address)"( shares: BigNumberish, receiver: string, overrides?: CallOverrides ): Promise<BigNumber>; "mint(uint256,address,address)"( shares: BigNumberish, receiver: string, referrer: string, overrides?: CallOverrides ): Promise<BigNumber>; previewDeposit( assets: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; previewMint( shares: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; previewRedeem( shares: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; previewWithdraw( assets: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; "redeem(uint256,address,address)"( shares: BigNumberish, receiver: string, owner: string, overrides?: CallOverrides ): Promise<BigNumber>; "redeem(uint256)"( _amount: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; redeemAndUnwrap( _amount: BigNumberish, _isCreditAmt: boolean, _minAmountOut: BigNumberish, _output: string, _beneficiary: string, _router: string, _isBassetOut: boolean, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber, BigNumber] & { creditsBurned: BigNumber; massetRedeemed: BigNumber; outputQuantity: BigNumber; } >; redeemCredits( _amount: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; redeemUnderlying( _amount: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; totalAssets(overrides?: CallOverrides): Promise<BigNumber>; totalSupply(overrides?: CallOverrides): Promise<BigNumber>; transfer( recipient: string, amount: BigNumberish, overrides?: CallOverrides ): Promise<boolean>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: CallOverrides ): Promise<boolean>; underlyingToCredits( _credits: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; withdraw( assets: BigNumberish, receiver: string, owner: string, overrides?: CallOverrides ): Promise<BigNumber>; }; filters: { Approval( owner?: string | null, spender?: string | null, value?: null ): TypedEventFilter< [string, string, BigNumber], { owner: string; spender: string; value: BigNumber } >; Deposit( caller?: string | null, owner?: string | null, assets?: null, shares?: null ): TypedEventFilter< [string, string, BigNumber, BigNumber], { caller: string; owner: string; assets: BigNumber; shares: BigNumber } >; Transfer( from?: string | null, to?: string | null, value?: null ): TypedEventFilter< [string, string, BigNumber], { from: string; to: string; value: BigNumber } >; Withdraw( caller?: string | null, receiver?: string | null, owner?: string | null, assets?: null, shares?: null ): TypedEventFilter< [string, string, string, BigNumber, BigNumber], { caller: string; receiver: string; owner: string; assets: BigNumber; shares: BigNumber; } >; }; estimateGas: { allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<BigNumber>; approve( spender: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; asset(overrides?: CallOverrides): Promise<BigNumber>; balanceOf(account: string, overrides?: CallOverrides): Promise<BigNumber>; balanceOfUnderlying( _user: string, overrides?: CallOverrides ): Promise<BigNumber>; convertToAssets( shares: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; convertToShares( assets: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; creditBalances(arg0: string, overrides?: CallOverrides): Promise<BigNumber>; creditsToUnderlying( _underlying: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; "deposit(uint256,address,address)"( assets: BigNumberish, receiver: string, referrer: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; "deposit(uint256,address)"( assets: BigNumberish, receiver: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; depositInterest( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; "depositSavings(uint256,address,address)"( _underlying: BigNumberish, _beneficiary: string, _referrer: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; "depositSavings(uint256,address)"( _amount: BigNumberish, _beneficiary: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; "depositSavings(uint256)"( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; exchangeRate(overrides?: CallOverrides): Promise<BigNumber>; maxDeposit(caller: string, overrides?: CallOverrides): Promise<BigNumber>; maxMint(caller: string, overrides?: CallOverrides): Promise<BigNumber>; maxRedeem(owner: string, overrides?: CallOverrides): Promise<BigNumber>; maxWithdraw(owner: string, overrides?: CallOverrides): Promise<BigNumber>; "mint(uint256,address)"( shares: BigNumberish, receiver: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; "mint(uint256,address,address)"( shares: BigNumberish, receiver: string, referrer: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; previewDeposit( assets: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; previewMint( shares: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; previewRedeem( shares: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; previewWithdraw( assets: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; "redeem(uint256,address,address)"( shares: BigNumberish, receiver: string, owner: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; "redeem(uint256)"( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; redeemAndUnwrap( _amount: BigNumberish, _isCreditAmt: boolean, _minAmountOut: BigNumberish, _output: string, _beneficiary: string, _router: string, _isBassetOut: boolean, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; redeemCredits( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; redeemUnderlying( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; totalAssets(overrides?: CallOverrides): Promise<BigNumber>; totalSupply(overrides?: CallOverrides): Promise<BigNumber>; transfer( recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; underlyingToCredits( _credits: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; withdraw( assets: BigNumberish, receiver: string, owner: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; }; populateTransaction: { allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; approve( spender: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; asset(overrides?: CallOverrides): Promise<PopulatedTransaction>; balanceOf( account: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; balanceOfUnderlying( _user: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; convertToAssets( shares: BigNumberish, overrides?: CallOverrides ): Promise<PopulatedTransaction>; convertToShares( assets: BigNumberish, overrides?: CallOverrides ): Promise<PopulatedTransaction>; creditBalances( arg0: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; creditsToUnderlying( _underlying: BigNumberish, overrides?: CallOverrides ): Promise<PopulatedTransaction>; "deposit(uint256,address,address)"( assets: BigNumberish, receiver: string, referrer: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; "deposit(uint256,address)"( assets: BigNumberish, receiver: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; depositInterest( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; "depositSavings(uint256,address,address)"( _underlying: BigNumberish, _beneficiary: string, _referrer: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; "depositSavings(uint256,address)"( _amount: BigNumberish, _beneficiary: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; "depositSavings(uint256)"( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; exchangeRate(overrides?: CallOverrides): Promise<PopulatedTransaction>; maxDeposit( caller: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; maxMint( caller: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; maxRedeem( owner: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; maxWithdraw( owner: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; "mint(uint256,address)"( shares: BigNumberish, receiver: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; "mint(uint256,address,address)"( shares: BigNumberish, receiver: string, referrer: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; previewDeposit( assets: BigNumberish, overrides?: CallOverrides ): Promise<PopulatedTransaction>; previewMint( shares: BigNumberish, overrides?: CallOverrides ): Promise<PopulatedTransaction>; previewRedeem( shares: BigNumberish, overrides?: CallOverrides ): Promise<PopulatedTransaction>; previewWithdraw( assets: BigNumberish, overrides?: CallOverrides ): Promise<PopulatedTransaction>; "redeem(uint256,address,address)"( shares: BigNumberish, receiver: string, owner: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; "redeem(uint256)"( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; redeemAndUnwrap( _amount: BigNumberish, _isCreditAmt: boolean, _minAmountOut: BigNumberish, _output: string, _beneficiary: string, _router: string, _isBassetOut: boolean, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; redeemCredits( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; redeemUnderlying( _amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; totalAssets(overrides?: CallOverrides): Promise<PopulatedTransaction>; totalSupply(overrides?: CallOverrides): Promise<PopulatedTransaction>; transfer( recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; underlyingToCredits( _credits: BigNumberish, overrides?: CallOverrides ): Promise<PopulatedTransaction>; withdraw( assets: BigNumberish, receiver: string, owner: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; }; }