import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from 'ethers'; import type { FunctionFragment, Result } from '@ethersproject/abi'; import type { Listener, Provider } from '@ethersproject/providers'; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common.js'; export interface IYearnVaultInterface extends utils.Interface { functions: { 'allowance(address,address)': FunctionFragment; 'approve(address,uint256)': FunctionFragment; 'availableDepositLimit()': FunctionFragment; 'decimals()': FunctionFragment; 'deposit(uint256)': FunctionFragment; 'pricePerShare()': FunctionFragment; 'token()': FunctionFragment; 'totalAssets()': FunctionFragment; 'withdraw(uint256)': FunctionFragment; }; getFunction(nameOrSignatureOrTopic: 'allowance' | 'approve' | 'availableDepositLimit' | 'decimals' | 'deposit' | 'pricePerShare' | 'token' | 'totalAssets' | 'withdraw'): FunctionFragment; encodeFunctionData(functionFragment: 'allowance', values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: 'approve', values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: 'availableDepositLimit', values?: undefined): string; encodeFunctionData(functionFragment: 'decimals', values?: undefined): string; encodeFunctionData(functionFragment: 'deposit', values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: 'pricePerShare', values?: undefined): string; encodeFunctionData(functionFragment: 'token', values?: undefined): string; encodeFunctionData(functionFragment: 'totalAssets', values?: undefined): string; encodeFunctionData(functionFragment: 'withdraw', values: [PromiseOrValue]): string; decodeFunctionResult(functionFragment: 'allowance', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'approve', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'availableDepositLimit', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'decimals', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'deposit', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'pricePerShare', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'totalAssets', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'withdraw', data: BytesLike): Result; events: {}; } export interface IYearnVault extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: IYearnVaultInterface; queryFilter(event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>; listeners(eventFilter?: TypedEventFilter): Array>; listeners(eventName?: string): Array; removeAllListeners(eventFilter: TypedEventFilter): this; removeAllListeners(eventName?: string): this; off: OnEvent; on: OnEvent; once: OnEvent; removeListener: OnEvent; functions: { allowance(owner: PromiseOrValue, spender: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]>; approve(spender: PromiseOrValue, amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; availableDepositLimit(overrides?: CallOverrides): Promise<[BigNumber]>; decimals(overrides?: CallOverrides): Promise<[BigNumber]>; deposit(amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; pricePerShare(overrides?: CallOverrides): Promise<[BigNumber]>; token(overrides?: CallOverrides): Promise<[string]>; totalAssets(overrides?: CallOverrides): Promise<[BigNumber]>; withdraw(maxShares: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; allowance(owner: PromiseOrValue, spender: PromiseOrValue, overrides?: CallOverrides): Promise; approve(spender: PromiseOrValue, amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; availableDepositLimit(overrides?: CallOverrides): Promise; decimals(overrides?: CallOverrides): Promise; deposit(amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; pricePerShare(overrides?: CallOverrides): Promise; token(overrides?: CallOverrides): Promise; totalAssets(overrides?: CallOverrides): Promise; withdraw(maxShares: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; callStatic: { allowance(owner: PromiseOrValue, spender: PromiseOrValue, overrides?: CallOverrides): Promise; approve(spender: PromiseOrValue, amount: PromiseOrValue, overrides?: CallOverrides): Promise; availableDepositLimit(overrides?: CallOverrides): Promise; decimals(overrides?: CallOverrides): Promise; deposit(amount: PromiseOrValue, overrides?: CallOverrides): Promise; pricePerShare(overrides?: CallOverrides): Promise; token(overrides?: CallOverrides): Promise; totalAssets(overrides?: CallOverrides): Promise; withdraw(maxShares: PromiseOrValue, overrides?: CallOverrides): Promise; }; filters: {}; estimateGas: { allowance(owner: PromiseOrValue, spender: PromiseOrValue, overrides?: CallOverrides): Promise; approve(spender: PromiseOrValue, amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; availableDepositLimit(overrides?: CallOverrides): Promise; decimals(overrides?: CallOverrides): Promise; deposit(amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; pricePerShare(overrides?: CallOverrides): Promise; token(overrides?: CallOverrides): Promise; totalAssets(overrides?: CallOverrides): Promise; withdraw(maxShares: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; populateTransaction: { allowance(owner: PromiseOrValue, spender: PromiseOrValue, overrides?: CallOverrides): Promise; approve(spender: PromiseOrValue, amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; availableDepositLimit(overrides?: CallOverrides): Promise; decimals(overrides?: CallOverrides): Promise; deposit(amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; pricePerShare(overrides?: CallOverrides): Promise; token(overrides?: CallOverrides): Promise; totalAssets(overrides?: CallOverrides): Promise; withdraw(maxShares: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; }