/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import { ethers, EventFilter, Signer, BigNumber, BigNumberish, PopulatedTransaction, BaseContract, ContractTransaction, Overrides, PayableOverrides, 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 BentoBoxV1Interface extends ethers.utils.Interface { functions: { "DOMAIN_SEPARATOR()": FunctionFragment; "balanceOf(address,address)": FunctionFragment; "batch(bytes[],bool)": FunctionFragment; "batchFlashLoan(address,address[],address[],uint256[],bytes)": FunctionFragment; "claimOwnership()": FunctionFragment; "deploy(address,bytes,bool)": FunctionFragment; "deposit(address,address,address,uint256,uint256)": FunctionFragment; "flashLoan(address,address,address,uint256,bytes)": FunctionFragment; "harvest(address,bool,uint256)": FunctionFragment; "masterContractApproved(address,address)": FunctionFragment; "masterContractOf(address)": FunctionFragment; "nonces(address)": FunctionFragment; "owner()": FunctionFragment; "pendingOwner()": FunctionFragment; "pendingStrategy(address)": FunctionFragment; "permitToken(address,address,address,uint256,uint256,uint8,bytes32,bytes32)": FunctionFragment; "registerProtocol()": FunctionFragment; "setMasterContractApproval(address,address,bool,uint8,bytes32,bytes32)": FunctionFragment; "setStrategy(address,address)": FunctionFragment; "setStrategyTargetPercentage(address,uint64)": FunctionFragment; "strategy(address)": FunctionFragment; "strategyData(address)": FunctionFragment; "toAmount(address,uint256,bool)": FunctionFragment; "toShare(address,uint256,bool)": FunctionFragment; "totals(address)": FunctionFragment; "transfer(address,address,address,uint256)": FunctionFragment; "transferMultiple(address,address,address[],uint256[])": FunctionFragment; "transferOwnership(address,bool,bool)": FunctionFragment; "whitelistMasterContract(address,bool)": FunctionFragment; "whitelistedMasterContracts(address)": FunctionFragment; "withdraw(address,address,address,uint256,uint256)": FunctionFragment; }; encodeFunctionData( functionFragment: "DOMAIN_SEPARATOR", values?: undefined ): string; encodeFunctionData( functionFragment: "balanceOf", values: [string, string] ): string; encodeFunctionData( functionFragment: "batch", values: [BytesLike[], boolean] ): string; encodeFunctionData( functionFragment: "batchFlashLoan", values: [string, string[], string[], BigNumberish[], BytesLike] ): string; encodeFunctionData( functionFragment: "claimOwnership", values?: undefined ): string; encodeFunctionData( functionFragment: "deploy", values: [string, BytesLike, boolean] ): string; encodeFunctionData( functionFragment: "deposit", values: [string, string, string, BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "flashLoan", values: [string, string, string, BigNumberish, BytesLike] ): string; encodeFunctionData( functionFragment: "harvest", values: [string, boolean, BigNumberish] ): string; encodeFunctionData( functionFragment: "masterContractApproved", values: [string, string] ): string; encodeFunctionData( functionFragment: "masterContractOf", values: [string] ): string; encodeFunctionData(functionFragment: "nonces", values: [string]): string; encodeFunctionData(functionFragment: "owner", values?: undefined): string; encodeFunctionData( functionFragment: "pendingOwner", values?: undefined ): string; encodeFunctionData( functionFragment: "pendingStrategy", values: [string] ): string; encodeFunctionData( functionFragment: "permitToken", values: [ string, string, string, BigNumberish, BigNumberish, BigNumberish, BytesLike, BytesLike ] ): string; encodeFunctionData( functionFragment: "registerProtocol", values?: undefined ): string; encodeFunctionData( functionFragment: "setMasterContractApproval", values: [string, string, boolean, BigNumberish, BytesLike, BytesLike] ): string; encodeFunctionData( functionFragment: "setStrategy", values: [string, string] ): string; encodeFunctionData( functionFragment: "setStrategyTargetPercentage", values: [string, BigNumberish] ): string; encodeFunctionData(functionFragment: "strategy", values: [string]): string; encodeFunctionData( functionFragment: "strategyData", values: [string] ): string; encodeFunctionData( functionFragment: "toAmount", values: [string, BigNumberish, boolean] ): string; encodeFunctionData( functionFragment: "toShare", values: [string, BigNumberish, boolean] ): string; encodeFunctionData(functionFragment: "totals", values: [string]): string; encodeFunctionData( functionFragment: "transfer", values: [string, string, string, BigNumberish] ): string; encodeFunctionData( functionFragment: "transferMultiple", values: [string, string, string[], BigNumberish[]] ): string; encodeFunctionData( functionFragment: "transferOwnership", values: [string, boolean, boolean] ): string; encodeFunctionData( functionFragment: "whitelistMasterContract", values: [string, boolean] ): string; encodeFunctionData( functionFragment: "whitelistedMasterContracts", values: [string] ): string; encodeFunctionData( functionFragment: "withdraw", values: [string, string, string, BigNumberish, BigNumberish] ): string; decodeFunctionResult( functionFragment: "DOMAIN_SEPARATOR", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; decodeFunctionResult(functionFragment: "batch", data: BytesLike): Result; decodeFunctionResult( functionFragment: "batchFlashLoan", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "claimOwnership", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "deploy", data: BytesLike): Result; decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "flashLoan", data: BytesLike): Result; decodeFunctionResult(functionFragment: "harvest", data: BytesLike): Result; decodeFunctionResult( functionFragment: "masterContractApproved", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "masterContractOf", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "nonces", data: BytesLike): Result; decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; decodeFunctionResult( functionFragment: "pendingOwner", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "pendingStrategy", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "permitToken", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "registerProtocol", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setMasterContractApproval", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setStrategy", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setStrategyTargetPercentage", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "strategy", data: BytesLike): Result; decodeFunctionResult( functionFragment: "strategyData", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "toAmount", data: BytesLike): Result; decodeFunctionResult(functionFragment: "toShare", data: BytesLike): Result; decodeFunctionResult(functionFragment: "totals", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; decodeFunctionResult( functionFragment: "transferMultiple", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "transferOwnership", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "whitelistMasterContract", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "whitelistedMasterContracts", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result; events: { "LogDeploy(address,bytes,address)": EventFragment; "LogDeposit(address,address,address,uint256,uint256)": EventFragment; "LogFlashLoan(address,address,uint256,uint256,address)": EventFragment; "LogRegisterProtocol(address)": EventFragment; "LogSetMasterContractApproval(address,address,bool)": EventFragment; "LogStrategyDivest(address,uint256)": EventFragment; "LogStrategyInvest(address,uint256)": EventFragment; "LogStrategyLoss(address,uint256)": EventFragment; "LogStrategyProfit(address,uint256)": EventFragment; "LogStrategyQueued(address,address)": EventFragment; "LogStrategySet(address,address)": EventFragment; "LogStrategyTargetPercentage(address,uint256)": EventFragment; "LogTransfer(address,address,address,uint256)": EventFragment; "LogWhiteListMasterContract(address,bool)": EventFragment; "LogWithdraw(address,address,address,uint256,uint256)": EventFragment; "OwnershipTransferred(address,address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "LogDeploy"): EventFragment; getEvent(nameOrSignatureOrTopic: "LogDeposit"): EventFragment; getEvent(nameOrSignatureOrTopic: "LogFlashLoan"): EventFragment; getEvent(nameOrSignatureOrTopic: "LogRegisterProtocol"): EventFragment; getEvent( nameOrSignatureOrTopic: "LogSetMasterContractApproval" ): EventFragment; getEvent(nameOrSignatureOrTopic: "LogStrategyDivest"): EventFragment; getEvent(nameOrSignatureOrTopic: "LogStrategyInvest"): EventFragment; getEvent(nameOrSignatureOrTopic: "LogStrategyLoss"): EventFragment; getEvent(nameOrSignatureOrTopic: "LogStrategyProfit"): EventFragment; getEvent(nameOrSignatureOrTopic: "LogStrategyQueued"): EventFragment; getEvent(nameOrSignatureOrTopic: "LogStrategySet"): EventFragment; getEvent( nameOrSignatureOrTopic: "LogStrategyTargetPercentage" ): EventFragment; getEvent(nameOrSignatureOrTopic: "LogTransfer"): EventFragment; getEvent(nameOrSignatureOrTopic: "LogWhiteListMasterContract"): EventFragment; getEvent(nameOrSignatureOrTopic: "LogWithdraw"): EventFragment; getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; } export class BentoBoxV1 extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; listeners, EventArgsObject>( eventFilter?: TypedEventFilter ): Array>; off, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; on, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; once, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; removeListener, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; removeAllListeners, EventArgsObject>( eventFilter: TypedEventFilter ): this; listeners(eventName?: string): Array; 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, EventArgsObject>( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined ): Promise>>; interface: BentoBoxV1Interface; functions: { DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise<[string]>; balanceOf( arg0: string, arg1: string, overrides?: CallOverrides ): Promise<[BigNumber]>; batch( calls: BytesLike[], revertOnFail: boolean, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; batchFlashLoan( borrower: string, receivers: string[], tokens: string[], amounts: BigNumberish[], data: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; claimOwnership( overrides?: Overrides & { from?: string | Promise } ): Promise; deploy( masterContract: string, data: BytesLike, useCreate2: boolean, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; deposit( token_: string, from: string, to: string, amount: BigNumberish, share: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; flashLoan( borrower: string, receiver: string, token: string, amount: BigNumberish, data: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; harvest( token: string, balance: boolean, maxChangeAmount: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; masterContractApproved( arg0: string, arg1: string, overrides?: CallOverrides ): Promise<[boolean]>; masterContractOf( arg0: string, overrides?: CallOverrides ): Promise<[string]>; nonces(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; owner(overrides?: CallOverrides): Promise<[string]>; pendingOwner(overrides?: CallOverrides): Promise<[string]>; pendingStrategy(arg0: string, overrides?: CallOverrides): Promise<[string]>; permitToken( token: string, from: string, to: string, amount: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; registerProtocol( overrides?: Overrides & { from?: string | Promise } ): Promise; setMasterContractApproval( user: string, masterContract: string, approved: boolean, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; setStrategy( token: string, newStrategy: string, overrides?: Overrides & { from?: string | Promise } ): Promise; setStrategyTargetPercentage( token: string, targetPercentage_: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; strategy(arg0: string, overrides?: CallOverrides): Promise<[string]>; strategyData( arg0: string, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber, BigNumber] & { strategyStartDate: BigNumber; targetPercentage: BigNumber; balance: BigNumber; } >; toAmount( token: string, share: BigNumberish, roundUp: boolean, overrides?: CallOverrides ): Promise<[BigNumber] & { amount: BigNumber }>; toShare( token: string, amount: BigNumberish, roundUp: boolean, overrides?: CallOverrides ): Promise<[BigNumber] & { share: BigNumber }>; totals( arg0: string, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber] & { elastic: BigNumber; base: BigNumber } >; transfer( token: string, from: string, to: string, share: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; transferMultiple( token: string, from: string, tos: string[], shares: BigNumberish[], overrides?: Overrides & { from?: string | Promise } ): Promise; transferOwnership( newOwner: string, direct: boolean, renounce: boolean, overrides?: Overrides & { from?: string | Promise } ): Promise; whitelistMasterContract( masterContract: string, approved: boolean, overrides?: Overrides & { from?: string | Promise } ): Promise; whitelistedMasterContracts( arg0: string, overrides?: CallOverrides ): Promise<[boolean]>; withdraw( token_: string, from: string, to: string, amount: BigNumberish, share: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; }; DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise; balanceOf( arg0: string, arg1: string, overrides?: CallOverrides ): Promise; batch( calls: BytesLike[], revertOnFail: boolean, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; batchFlashLoan( borrower: string, receivers: string[], tokens: string[], amounts: BigNumberish[], data: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; claimOwnership( overrides?: Overrides & { from?: string | Promise } ): Promise; deploy( masterContract: string, data: BytesLike, useCreate2: boolean, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; deposit( token_: string, from: string, to: string, amount: BigNumberish, share: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; flashLoan( borrower: string, receiver: string, token: string, amount: BigNumberish, data: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; harvest( token: string, balance: boolean, maxChangeAmount: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; masterContractApproved( arg0: string, arg1: string, overrides?: CallOverrides ): Promise; masterContractOf(arg0: string, overrides?: CallOverrides): Promise; nonces(arg0: string, overrides?: CallOverrides): Promise; owner(overrides?: CallOverrides): Promise; pendingOwner(overrides?: CallOverrides): Promise; pendingStrategy(arg0: string, overrides?: CallOverrides): Promise; permitToken( token: string, from: string, to: string, amount: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; registerProtocol( overrides?: Overrides & { from?: string | Promise } ): Promise; setMasterContractApproval( user: string, masterContract: string, approved: boolean, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; setStrategy( token: string, newStrategy: string, overrides?: Overrides & { from?: string | Promise } ): Promise; setStrategyTargetPercentage( token: string, targetPercentage_: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; strategy(arg0: string, overrides?: CallOverrides): Promise; strategyData( arg0: string, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber, BigNumber] & { strategyStartDate: BigNumber; targetPercentage: BigNumber; balance: BigNumber; } >; toAmount( token: string, share: BigNumberish, roundUp: boolean, overrides?: CallOverrides ): Promise; toShare( token: string, amount: BigNumberish, roundUp: boolean, overrides?: CallOverrides ): Promise; totals( arg0: string, overrides?: CallOverrides ): Promise<[BigNumber, BigNumber] & { elastic: BigNumber; base: BigNumber }>; transfer( token: string, from: string, to: string, share: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; transferMultiple( token: string, from: string, tos: string[], shares: BigNumberish[], overrides?: Overrides & { from?: string | Promise } ): Promise; transferOwnership( newOwner: string, direct: boolean, renounce: boolean, overrides?: Overrides & { from?: string | Promise } ): Promise; whitelistMasterContract( masterContract: string, approved: boolean, overrides?: Overrides & { from?: string | Promise } ): Promise; whitelistedMasterContracts( arg0: string, overrides?: CallOverrides ): Promise; withdraw( token_: string, from: string, to: string, amount: BigNumberish, share: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; callStatic: { DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise; balanceOf( arg0: string, arg1: string, overrides?: CallOverrides ): Promise; batch( calls: BytesLike[], revertOnFail: boolean, overrides?: CallOverrides ): Promise< [boolean[], string[]] & { successes: boolean[]; results: string[] } >; batchFlashLoan( borrower: string, receivers: string[], tokens: string[], amounts: BigNumberish[], data: BytesLike, overrides?: CallOverrides ): Promise; claimOwnership(overrides?: CallOverrides): Promise; deploy( masterContract: string, data: BytesLike, useCreate2: boolean, overrides?: CallOverrides ): Promise; deposit( token_: string, from: string, to: string, amount: BigNumberish, share: BigNumberish, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber] & { amountOut: BigNumber; shareOut: BigNumber } >; flashLoan( borrower: string, receiver: string, token: string, amount: BigNumberish, data: BytesLike, overrides?: CallOverrides ): Promise; harvest( token: string, balance: boolean, maxChangeAmount: BigNumberish, overrides?: CallOverrides ): Promise; masterContractApproved( arg0: string, arg1: string, overrides?: CallOverrides ): Promise; masterContractOf(arg0: string, overrides?: CallOverrides): Promise; nonces(arg0: string, overrides?: CallOverrides): Promise; owner(overrides?: CallOverrides): Promise; pendingOwner(overrides?: CallOverrides): Promise; pendingStrategy(arg0: string, overrides?: CallOverrides): Promise; permitToken( token: string, from: string, to: string, amount: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: CallOverrides ): Promise; registerProtocol(overrides?: CallOverrides): Promise; setMasterContractApproval( user: string, masterContract: string, approved: boolean, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: CallOverrides ): Promise; setStrategy( token: string, newStrategy: string, overrides?: CallOverrides ): Promise; setStrategyTargetPercentage( token: string, targetPercentage_: BigNumberish, overrides?: CallOverrides ): Promise; strategy(arg0: string, overrides?: CallOverrides): Promise; strategyData( arg0: string, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber, BigNumber] & { strategyStartDate: BigNumber; targetPercentage: BigNumber; balance: BigNumber; } >; toAmount( token: string, share: BigNumberish, roundUp: boolean, overrides?: CallOverrides ): Promise; toShare( token: string, amount: BigNumberish, roundUp: boolean, overrides?: CallOverrides ): Promise; totals( arg0: string, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber] & { elastic: BigNumber; base: BigNumber } >; transfer( token: string, from: string, to: string, share: BigNumberish, overrides?: CallOverrides ): Promise; transferMultiple( token: string, from: string, tos: string[], shares: BigNumberish[], overrides?: CallOverrides ): Promise; transferOwnership( newOwner: string, direct: boolean, renounce: boolean, overrides?: CallOverrides ): Promise; whitelistMasterContract( masterContract: string, approved: boolean, overrides?: CallOverrides ): Promise; whitelistedMasterContracts( arg0: string, overrides?: CallOverrides ): Promise; withdraw( token_: string, from: string, to: string, amount: BigNumberish, share: BigNumberish, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber] & { amountOut: BigNumber; shareOut: BigNumber } >; }; filters: { LogDeploy( masterContract?: string | null, data?: null, cloneAddress?: string | null ): TypedEventFilter< [string, string, string], { masterContract: string; data: string; cloneAddress: string } >; LogDeposit( token?: string | null, from?: string | null, to?: string | null, amount?: null, share?: null ): TypedEventFilter< [string, string, string, BigNumber, BigNumber], { token: string; from: string; to: string; amount: BigNumber; share: BigNumber; } >; LogFlashLoan( borrower?: string | null, token?: string | null, amount?: null, feeAmount?: null, receiver?: string | null ): TypedEventFilter< [string, string, BigNumber, BigNumber, string], { borrower: string; token: string; amount: BigNumber; feeAmount: BigNumber; receiver: string; } >; LogRegisterProtocol( protocol?: string | null ): TypedEventFilter<[string], { protocol: string }>; LogSetMasterContractApproval( masterContract?: string | null, user?: string | null, approved?: null ): TypedEventFilter< [string, string, boolean], { masterContract: string; user: string; approved: boolean } >; LogStrategyDivest( token?: string | null, amount?: null ): TypedEventFilter< [string, BigNumber], { token: string; amount: BigNumber } >; LogStrategyInvest( token?: string | null, amount?: null ): TypedEventFilter< [string, BigNumber], { token: string; amount: BigNumber } >; LogStrategyLoss( token?: string | null, amount?: null ): TypedEventFilter< [string, BigNumber], { token: string; amount: BigNumber } >; LogStrategyProfit( token?: string | null, amount?: null ): TypedEventFilter< [string, BigNumber], { token: string; amount: BigNumber } >; LogStrategyQueued( token?: string | null, strategy?: string | null ): TypedEventFilter<[string, string], { token: string; strategy: string }>; LogStrategySet( token?: string | null, strategy?: string | null ): TypedEventFilter<[string, string], { token: string; strategy: string }>; LogStrategyTargetPercentage( token?: string | null, targetPercentage?: null ): TypedEventFilter< [string, BigNumber], { token: string; targetPercentage: BigNumber } >; LogTransfer( token?: string | null, from?: string | null, to?: string | null, share?: null ): TypedEventFilter< [string, string, string, BigNumber], { token: string; from: string; to: string; share: BigNumber } >; LogWhiteListMasterContract( masterContract?: string | null, approved?: null ): TypedEventFilter< [string, boolean], { masterContract: string; approved: boolean } >; LogWithdraw( token?: string | null, from?: string | null, to?: string | null, amount?: null, share?: null ): TypedEventFilter< [string, string, string, BigNumber, BigNumber], { token: string; from: string; to: string; amount: BigNumber; share: BigNumber; } >; OwnershipTransferred( previousOwner?: string | null, newOwner?: string | null ): TypedEventFilter< [string, string], { previousOwner: string; newOwner: string } >; }; estimateGas: { DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise; balanceOf( arg0: string, arg1: string, overrides?: CallOverrides ): Promise; batch( calls: BytesLike[], revertOnFail: boolean, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; batchFlashLoan( borrower: string, receivers: string[], tokens: string[], amounts: BigNumberish[], data: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; claimOwnership( overrides?: Overrides & { from?: string | Promise } ): Promise; deploy( masterContract: string, data: BytesLike, useCreate2: boolean, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; deposit( token_: string, from: string, to: string, amount: BigNumberish, share: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; flashLoan( borrower: string, receiver: string, token: string, amount: BigNumberish, data: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; harvest( token: string, balance: boolean, maxChangeAmount: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; masterContractApproved( arg0: string, arg1: string, overrides?: CallOverrides ): Promise; masterContractOf( arg0: string, overrides?: CallOverrides ): Promise; nonces(arg0: string, overrides?: CallOverrides): Promise; owner(overrides?: CallOverrides): Promise; pendingOwner(overrides?: CallOverrides): Promise; pendingStrategy( arg0: string, overrides?: CallOverrides ): Promise; permitToken( token: string, from: string, to: string, amount: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; registerProtocol( overrides?: Overrides & { from?: string | Promise } ): Promise; setMasterContractApproval( user: string, masterContract: string, approved: boolean, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; setStrategy( token: string, newStrategy: string, overrides?: Overrides & { from?: string | Promise } ): Promise; setStrategyTargetPercentage( token: string, targetPercentage_: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; strategy(arg0: string, overrides?: CallOverrides): Promise; strategyData(arg0: string, overrides?: CallOverrides): Promise; toAmount( token: string, share: BigNumberish, roundUp: boolean, overrides?: CallOverrides ): Promise; toShare( token: string, amount: BigNumberish, roundUp: boolean, overrides?: CallOverrides ): Promise; totals(arg0: string, overrides?: CallOverrides): Promise; transfer( token: string, from: string, to: string, share: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; transferMultiple( token: string, from: string, tos: string[], shares: BigNumberish[], overrides?: Overrides & { from?: string | Promise } ): Promise; transferOwnership( newOwner: string, direct: boolean, renounce: boolean, overrides?: Overrides & { from?: string | Promise } ): Promise; whitelistMasterContract( masterContract: string, approved: boolean, overrides?: Overrides & { from?: string | Promise } ): Promise; whitelistedMasterContracts( arg0: string, overrides?: CallOverrides ): Promise; withdraw( token_: string, from: string, to: string, amount: BigNumberish, share: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; }; populateTransaction: { DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise; balanceOf( arg0: string, arg1: string, overrides?: CallOverrides ): Promise; batch( calls: BytesLike[], revertOnFail: boolean, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; batchFlashLoan( borrower: string, receivers: string[], tokens: string[], amounts: BigNumberish[], data: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; claimOwnership( overrides?: Overrides & { from?: string | Promise } ): Promise; deploy( masterContract: string, data: BytesLike, useCreate2: boolean, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; deposit( token_: string, from: string, to: string, amount: BigNumberish, share: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; flashLoan( borrower: string, receiver: string, token: string, amount: BigNumberish, data: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; harvest( token: string, balance: boolean, maxChangeAmount: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; masterContractApproved( arg0: string, arg1: string, overrides?: CallOverrides ): Promise; masterContractOf( arg0: string, overrides?: CallOverrides ): Promise; nonces( arg0: string, overrides?: CallOverrides ): Promise; owner(overrides?: CallOverrides): Promise; pendingOwner(overrides?: CallOverrides): Promise; pendingStrategy( arg0: string, overrides?: CallOverrides ): Promise; permitToken( token: string, from: string, to: string, amount: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; registerProtocol( overrides?: Overrides & { from?: string | Promise } ): Promise; setMasterContractApproval( user: string, masterContract: string, approved: boolean, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; setStrategy( token: string, newStrategy: string, overrides?: Overrides & { from?: string | Promise } ): Promise; setStrategyTargetPercentage( token: string, targetPercentage_: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; strategy( arg0: string, overrides?: CallOverrides ): Promise; strategyData( arg0: string, overrides?: CallOverrides ): Promise; toAmount( token: string, share: BigNumberish, roundUp: boolean, overrides?: CallOverrides ): Promise; toShare( token: string, amount: BigNumberish, roundUp: boolean, overrides?: CallOverrides ): Promise; totals( arg0: string, overrides?: CallOverrides ): Promise; transfer( token: string, from: string, to: string, share: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; transferMultiple( token: string, from: string, tos: string[], shares: BigNumberish[], overrides?: Overrides & { from?: string | Promise } ): Promise; transferOwnership( newOwner: string, direct: boolean, renounce: boolean, overrides?: Overrides & { from?: string | Promise } ): Promise; whitelistMasterContract( masterContract: string, approved: boolean, overrides?: Overrides & { from?: string | Promise } ): Promise; whitelistedMasterContracts( arg0: string, overrides?: CallOverrides ): Promise; withdraw( token_: string, from: string, to: string, amount: BigNumberish, share: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; }; }