import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from 'ethers';
import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi';
import type { Listener, Provider } from '@ethersproject/providers';
import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common';
export interface IdlePerpYieldTranchesInterface extends utils.Interface {
    functions: {
        'AAStaking()': FunctionFragment;
        'AATranche()': FunctionFragment;
        'BBStaking()': FunctionFragment;
        'BBTranche()': FunctionFragment;
        'FULL_ALLOC()': FunctionFragment;
        'MAX_FEE()': FunctionFragment;
        'ONE_TRANCHE_TOKEN()': FunctionFragment;
        '_setLimit(uint256)': FunctionFragment;
        'allowAAWithdraw()': FunctionFragment;
        'allowBBWithdraw()': FunctionFragment;
        'depositAA(uint256)': FunctionFragment;
        'depositAARef(uint256,address)': FunctionFragment;
        'depositBB(uint256)': FunctionFragment;
        'depositBBRef(uint256,address)': FunctionFragment;
        'emergencyShutdown()': FunctionFragment;
        'fee()': FunctionFragment;
        'feeReceiver()': FunctionFragment;
        'feeSplit()': FunctionFragment;
        'getApr(address)': FunctionFragment;
        'getContractValue()': FunctionFragment;
        'getCurrentAARatio()': FunctionFragment;
        'getIdealApr(address)': FunctionFragment;
        'getIncentiveTokens()': FunctionFragment;
        'governanceRecoveryFund()': FunctionFragment;
        'guardian()': FunctionFragment;
        'harvest(bool[],bool[],uint256[],uint256[],bytes)': FunctionFragment;
        'idealRange()': FunctionFragment;
        'incentiveTokens(uint256)': FunctionFragment;
        'initialize(uint256,address,address,address,address,address,uint256,uint256,address[])': FunctionFragment;
        'isAYSActive()': FunctionFragment;
        'lastNAVAA()': FunctionFragment;
        'lastNAVBB()': FunctionFragment;
        'lastStrategyPrice()': FunctionFragment;
        'limit()': FunctionFragment;
        'liquidate(uint256,bool)': FunctionFragment;
        'oneToken()': FunctionFragment;
        'owner()': FunctionFragment;
        'pause()': FunctionFragment;
        'paused()': FunctionFragment;
        'priceAA()': FunctionFragment;
        'priceBB()': FunctionFragment;
        'rebalancer()': FunctionFragment;
        'referral()': FunctionFragment;
        'releaseBlocksPeriod()': FunctionFragment;
        'renounceOwnership()': FunctionFragment;
        'revertIfTooLow()': FunctionFragment;
        'setAllowAAWithdraw(bool)': FunctionFragment;
        'setAllowBBWithdraw(bool)': FunctionFragment;
        'setFee(uint256)': FunctionFragment;
        'setFeeReceiver(address)': FunctionFragment;
        'setFeeSplit(uint256)': FunctionFragment;
        'setGuardian(address)': FunctionFragment;
        'setIdealRange(uint256)': FunctionFragment;
        'setIncentiveTokens(address[])': FunctionFragment;
        'setIsAYSActive(bool)': FunctionFragment;
        'setIsStkAAVEActive(bool)': FunctionFragment;
        'setRebalancer(address)': FunctionFragment;
        'setReferral(address)': FunctionFragment;
        'setReleaseBlocksPeriod(uint256)': FunctionFragment;
        'setRevertIfTooLow(bool)': FunctionFragment;
        'setSkipDefaultCheck(bool)': FunctionFragment;
        'setStakingRewards(address,address)': FunctionFragment;
        'setStrategy(address,address[])': FunctionFragment;
        'setTrancheAPRSplitRatio(uint256)': FunctionFragment;
        'setTrancheIdealWeightRatio(uint256)': FunctionFragment;
        'setUnlentPerc(uint256)': FunctionFragment;
        'skipDefaultCheck()': FunctionFragment;
        'strategy()': FunctionFragment;
        'strategyToken()': FunctionFragment;
        'token()': FunctionFragment;
        'trancheAPRSplitRatio()': FunctionFragment;
        'trancheIdealWeightRatio()': FunctionFragment;
        'tranchePrice(address)': FunctionFragment;
        'transferOwnership(address)': FunctionFragment;
        'transferToken(address,uint256)': FunctionFragment;
        'unclaimedFees()': FunctionFragment;
        'unlentPerc()': FunctionFragment;
        'unpause()': FunctionFragment;
        'virtualPrice(address)': FunctionFragment;
        'weth()': FunctionFragment;
        'withdrawAA(uint256)': FunctionFragment;
        'withdrawBB(uint256)': FunctionFragment;
    };
    getFunction(nameOrSignatureOrTopic: 'AAStaking' | 'AATranche' | 'BBStaking' | 'BBTranche' | 'FULL_ALLOC' | 'MAX_FEE' | 'ONE_TRANCHE_TOKEN' | '_setLimit' | 'allowAAWithdraw' | 'allowBBWithdraw' | 'depositAA' | 'depositAARef' | 'depositBB' | 'depositBBRef' | 'emergencyShutdown' | 'fee' | 'feeReceiver' | 'feeSplit' | 'getApr' | 'getContractValue' | 'getCurrentAARatio' | 'getIdealApr' | 'getIncentiveTokens' | 'governanceRecoveryFund' | 'guardian' | 'harvest' | 'idealRange' | 'incentiveTokens' | 'initialize' | 'isAYSActive' | 'lastNAVAA' | 'lastNAVBB' | 'lastStrategyPrice' | 'limit' | 'liquidate' | 'oneToken' | 'owner' | 'pause' | 'paused' | 'priceAA' | 'priceBB' | 'rebalancer' | 'referral' | 'releaseBlocksPeriod' | 'renounceOwnership' | 'revertIfTooLow' | 'setAllowAAWithdraw' | 'setAllowBBWithdraw' | 'setFee' | 'setFeeReceiver' | 'setFeeSplit' | 'setGuardian' | 'setIdealRange' | 'setIncentiveTokens' | 'setIsAYSActive' | 'setIsStkAAVEActive' | 'setRebalancer' | 'setReferral' | 'setReleaseBlocksPeriod' | 'setRevertIfTooLow' | 'setSkipDefaultCheck' | 'setStakingRewards' | 'setStrategy' | 'setTrancheAPRSplitRatio' | 'setTrancheIdealWeightRatio' | 'setUnlentPerc' | 'skipDefaultCheck' | 'strategy' | 'strategyToken' | 'token' | 'trancheAPRSplitRatio' | 'trancheIdealWeightRatio' | 'tranchePrice' | 'transferOwnership' | 'transferToken' | 'unclaimedFees' | 'unlentPerc' | 'unpause' | 'virtualPrice' | 'weth' | 'withdrawAA' | 'withdrawBB'): FunctionFragment;
    encodeFunctionData(functionFragment: 'AAStaking', values?: undefined): string;
    encodeFunctionData(functionFragment: 'AATranche', values?: undefined): string;
    encodeFunctionData(functionFragment: 'BBStaking', values?: undefined): string;
    encodeFunctionData(functionFragment: 'BBTranche', values?: undefined): string;
    encodeFunctionData(functionFragment: 'FULL_ALLOC', values?: undefined): string;
    encodeFunctionData(functionFragment: 'MAX_FEE', values?: undefined): string;
    encodeFunctionData(functionFragment: 'ONE_TRANCHE_TOKEN', values?: undefined): string;
    encodeFunctionData(functionFragment: '_setLimit', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'allowAAWithdraw', values?: undefined): string;
    encodeFunctionData(functionFragment: 'allowBBWithdraw', values?: undefined): string;
    encodeFunctionData(functionFragment: 'depositAA', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'depositAARef', values: [PromiseOrValue<BigNumberish>, PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'depositBB', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'depositBBRef', values: [PromiseOrValue<BigNumberish>, PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'emergencyShutdown', values?: undefined): string;
    encodeFunctionData(functionFragment: 'fee', values?: undefined): string;
    encodeFunctionData(functionFragment: 'feeReceiver', values?: undefined): string;
    encodeFunctionData(functionFragment: 'feeSplit', values?: undefined): string;
    encodeFunctionData(functionFragment: 'getApr', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'getContractValue', values?: undefined): string;
    encodeFunctionData(functionFragment: 'getCurrentAARatio', values?: undefined): string;
    encodeFunctionData(functionFragment: 'getIdealApr', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'getIncentiveTokens', values?: undefined): string;
    encodeFunctionData(functionFragment: 'governanceRecoveryFund', values?: undefined): string;
    encodeFunctionData(functionFragment: 'guardian', values?: undefined): string;
    encodeFunctionData(functionFragment: 'harvest', values: [
        PromiseOrValue<boolean>[],
        PromiseOrValue<boolean>[],
        PromiseOrValue<BigNumberish>[],
        PromiseOrValue<BigNumberish>[],
        PromiseOrValue<BytesLike>
    ]): string;
    encodeFunctionData(functionFragment: 'idealRange', values?: undefined): string;
    encodeFunctionData(functionFragment: 'incentiveTokens', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'initialize', values: [
        PromiseOrValue<BigNumberish>,
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<BigNumberish>,
        PromiseOrValue<BigNumberish>,
        PromiseOrValue<string>[]
    ]): string;
    encodeFunctionData(functionFragment: 'isAYSActive', values?: undefined): string;
    encodeFunctionData(functionFragment: 'lastNAVAA', values?: undefined): string;
    encodeFunctionData(functionFragment: 'lastNAVBB', values?: undefined): string;
    encodeFunctionData(functionFragment: 'lastStrategyPrice', values?: undefined): string;
    encodeFunctionData(functionFragment: 'limit', values?: undefined): string;
    encodeFunctionData(functionFragment: 'liquidate', values: [PromiseOrValue<BigNumberish>, PromiseOrValue<boolean>]): string;
    encodeFunctionData(functionFragment: 'oneToken', values?: undefined): string;
    encodeFunctionData(functionFragment: 'owner', values?: undefined): string;
    encodeFunctionData(functionFragment: 'pause', values?: undefined): string;
    encodeFunctionData(functionFragment: 'paused', values?: undefined): string;
    encodeFunctionData(functionFragment: 'priceAA', values?: undefined): string;
    encodeFunctionData(functionFragment: 'priceBB', values?: undefined): string;
    encodeFunctionData(functionFragment: 'rebalancer', values?: undefined): string;
    encodeFunctionData(functionFragment: 'referral', values?: undefined): string;
    encodeFunctionData(functionFragment: 'releaseBlocksPeriod', values?: undefined): string;
    encodeFunctionData(functionFragment: 'renounceOwnership', values?: undefined): string;
    encodeFunctionData(functionFragment: 'revertIfTooLow', values?: undefined): string;
    encodeFunctionData(functionFragment: 'setAllowAAWithdraw', values: [PromiseOrValue<boolean>]): string;
    encodeFunctionData(functionFragment: 'setAllowBBWithdraw', values: [PromiseOrValue<boolean>]): string;
    encodeFunctionData(functionFragment: 'setFee', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'setFeeReceiver', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'setFeeSplit', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'setGuardian', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'setIdealRange', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'setIncentiveTokens', values: [PromiseOrValue<string>[]]): string;
    encodeFunctionData(functionFragment: 'setIsAYSActive', values: [PromiseOrValue<boolean>]): string;
    encodeFunctionData(functionFragment: 'setIsStkAAVEActive', values: [PromiseOrValue<boolean>]): string;
    encodeFunctionData(functionFragment: 'setRebalancer', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'setReferral', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'setReleaseBlocksPeriod', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'setRevertIfTooLow', values: [PromiseOrValue<boolean>]): string;
    encodeFunctionData(functionFragment: 'setSkipDefaultCheck', values: [PromiseOrValue<boolean>]): string;
    encodeFunctionData(functionFragment: 'setStakingRewards', values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'setStrategy', values: [PromiseOrValue<string>, PromiseOrValue<string>[]]): string;
    encodeFunctionData(functionFragment: 'setTrancheAPRSplitRatio', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'setTrancheIdealWeightRatio', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'setUnlentPerc', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'skipDefaultCheck', values?: undefined): string;
    encodeFunctionData(functionFragment: 'strategy', values?: undefined): string;
    encodeFunctionData(functionFragment: 'strategyToken', values?: undefined): string;
    encodeFunctionData(functionFragment: 'token', values?: undefined): string;
    encodeFunctionData(functionFragment: 'trancheAPRSplitRatio', values?: undefined): string;
    encodeFunctionData(functionFragment: 'trancheIdealWeightRatio', values?: undefined): string;
    encodeFunctionData(functionFragment: 'tranchePrice', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'transferOwnership', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'transferToken', values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'unclaimedFees', values?: undefined): string;
    encodeFunctionData(functionFragment: 'unlentPerc', values?: undefined): string;
    encodeFunctionData(functionFragment: 'unpause', values?: undefined): string;
    encodeFunctionData(functionFragment: 'virtualPrice', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'weth', values?: undefined): string;
    encodeFunctionData(functionFragment: 'withdrawAA', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'withdrawBB', values: [PromiseOrValue<BigNumberish>]): string;
    decodeFunctionResult(functionFragment: 'AAStaking', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'AATranche', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'BBStaking', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'BBTranche', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'FULL_ALLOC', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'MAX_FEE', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'ONE_TRANCHE_TOKEN', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: '_setLimit', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'allowAAWithdraw', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'allowBBWithdraw', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'depositAA', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'depositAARef', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'depositBB', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'depositBBRef', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'emergencyShutdown', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'fee', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'feeReceiver', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'feeSplit', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getApr', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getContractValue', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getCurrentAARatio', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getIdealApr', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getIncentiveTokens', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'governanceRecoveryFund', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'guardian', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'harvest', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'idealRange', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'incentiveTokens', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'initialize', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'isAYSActive', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'lastNAVAA', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'lastNAVBB', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'lastStrategyPrice', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'limit', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'liquidate', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'oneToken', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'pause', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'paused', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'priceAA', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'priceBB', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'rebalancer', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'referral', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'releaseBlocksPeriod', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'renounceOwnership', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'revertIfTooLow', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setAllowAAWithdraw', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setAllowBBWithdraw', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setFee', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setFeeReceiver', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setFeeSplit', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setGuardian', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setIdealRange', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setIncentiveTokens', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setIsAYSActive', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setIsStkAAVEActive', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setRebalancer', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setReferral', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setReleaseBlocksPeriod', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setRevertIfTooLow', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setSkipDefaultCheck', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setStakingRewards', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setStrategy', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setTrancheAPRSplitRatio', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setTrancheIdealWeightRatio', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setUnlentPerc', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'skipDefaultCheck', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'strategy', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'strategyToken', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'trancheAPRSplitRatio', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'trancheIdealWeightRatio', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'tranchePrice', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'transferOwnership', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'transferToken', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'unclaimedFees', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'unlentPerc', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'unpause', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'virtualPrice', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'weth', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'withdrawAA', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'withdrawBB', data: BytesLike): Result;
    events: {
        'OwnershipTransferred(address,address)': EventFragment;
        'Paused(address)': EventFragment;
        'Referral(uint256,address)': EventFragment;
        'Unpaused(address)': EventFragment;
    };
    getEvent(nameOrSignatureOrTopic: 'OwnershipTransferred'): EventFragment;
    getEvent(nameOrSignatureOrTopic: 'Paused'): EventFragment;
    getEvent(nameOrSignatureOrTopic: 'Referral'): EventFragment;
    getEvent(nameOrSignatureOrTopic: 'Unpaused'): EventFragment;
}
export interface OwnershipTransferredEventObject {
    previousOwner: string;
    newOwner: string;
}
export declare type OwnershipTransferredEvent = TypedEvent<[string, string], OwnershipTransferredEventObject>;
export declare type OwnershipTransferredEventFilter = TypedEventFilter<OwnershipTransferredEvent>;
export interface PausedEventObject {
    account: string;
}
export declare type PausedEvent = TypedEvent<[string], PausedEventObject>;
export declare type PausedEventFilter = TypedEventFilter<PausedEvent>;
export interface ReferralEventObject {
    _amount: BigNumber;
    _ref: string;
}
export declare type ReferralEvent = TypedEvent<[BigNumber, string], ReferralEventObject>;
export declare type ReferralEventFilter = TypedEventFilter<ReferralEvent>;
export interface UnpausedEventObject {
    account: string;
}
export declare type UnpausedEvent = TypedEvent<[string], UnpausedEventObject>;
export declare type UnpausedEventFilter = TypedEventFilter<UnpausedEvent>;
export interface IdlePerpYieldTranches extends BaseContract {
    connect(signerOrProvider: Signer | Provider | string): this;
    attach(addressOrName: string): this;
    deployed(): Promise<this>;
    interface: IdlePerpYieldTranchesInterface;
    queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>;
    listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>;
    listeners(eventName?: string): Array<Listener>;
    removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this;
    removeAllListeners(eventName?: string): this;
    off: OnEvent<this>;
    on: OnEvent<this>;
    once: OnEvent<this>;
    removeListener: OnEvent<this>;
    functions: {
        AAStaking(overrides?: CallOverrides): Promise<[string]>;
        AATranche(overrides?: CallOverrides): Promise<[string]>;
        BBStaking(overrides?: CallOverrides): Promise<[string]>;
        BBTranche(overrides?: CallOverrides): Promise<[string]>;
        FULL_ALLOC(overrides?: CallOverrides): Promise<[BigNumber]>;
        MAX_FEE(overrides?: CallOverrides): Promise<[BigNumber]>;
        ONE_TRANCHE_TOKEN(overrides?: CallOverrides): Promise<[BigNumber]>;
        _setLimit(_limit: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        allowAAWithdraw(overrides?: CallOverrides): Promise<[boolean]>;
        allowBBWithdraw(overrides?: CallOverrides): Promise<[boolean]>;
        depositAA(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        depositAARef(_amount: PromiseOrValue<BigNumberish>, _referral: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        depositBB(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        depositBBRef(_amount: PromiseOrValue<BigNumberish>, _referral: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        emergencyShutdown(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        fee(overrides?: CallOverrides): Promise<[BigNumber]>;
        feeReceiver(overrides?: CallOverrides): Promise<[string]>;
        feeSplit(overrides?: CallOverrides): Promise<[BigNumber]>;
        getApr(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
        getContractValue(overrides?: CallOverrides): Promise<[BigNumber]>;
        getCurrentAARatio(overrides?: CallOverrides): Promise<[BigNumber]>;
        getIdealApr(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
        getIncentiveTokens(overrides?: CallOverrides): Promise<[string[]]>;
        governanceRecoveryFund(overrides?: CallOverrides): Promise<[string]>;
        guardian(overrides?: CallOverrides): Promise<[string]>;
        harvest(_skipFlags: PromiseOrValue<boolean>[], _skipReward: PromiseOrValue<boolean>[], _minAmount: PromiseOrValue<BigNumberish>[], _sellAmounts: PromiseOrValue<BigNumberish>[], _extraData: PromiseOrValue<BytesLike>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        idealRange(overrides?: CallOverrides): Promise<[BigNumber]>;
        incentiveTokens(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[string]>;
        initialize(_limit: PromiseOrValue<BigNumberish>, _guardedToken: PromiseOrValue<string>, _governanceFund: PromiseOrValue<string>, _owner: PromiseOrValue<string>, _rebalancer: PromiseOrValue<string>, _strategy: PromiseOrValue<string>, _trancheAPRSplitRatio: PromiseOrValue<BigNumberish>, _trancheIdealWeightRatio: PromiseOrValue<BigNumberish>, _incentiveTokens: PromiseOrValue<string>[], overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        isAYSActive(overrides?: CallOverrides): Promise<[boolean]>;
        lastNAVAA(overrides?: CallOverrides): Promise<[BigNumber]>;
        lastNAVBB(overrides?: CallOverrides): Promise<[BigNumber]>;
        lastStrategyPrice(overrides?: CallOverrides): Promise<[BigNumber]>;
        limit(overrides?: CallOverrides): Promise<[BigNumber]>;
        liquidate(_amount: PromiseOrValue<BigNumberish>, _revertIfNeeded: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        oneToken(overrides?: CallOverrides): Promise<[BigNumber]>;
        owner(overrides?: CallOverrides): Promise<[string]>;
        pause(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        paused(overrides?: CallOverrides): Promise<[boolean]>;
        priceAA(overrides?: CallOverrides): Promise<[BigNumber]>;
        priceBB(overrides?: CallOverrides): Promise<[BigNumber]>;
        rebalancer(overrides?: CallOverrides): Promise<[string]>;
        referral(overrides?: CallOverrides): Promise<[string]>;
        releaseBlocksPeriod(overrides?: CallOverrides): Promise<[BigNumber]>;
        renounceOwnership(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        revertIfTooLow(overrides?: CallOverrides): Promise<[boolean]>;
        setAllowAAWithdraw(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setAllowBBWithdraw(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setFee(_fee: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setFeeReceiver(_feeReceiver: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setFeeSplit(_feeSplit: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setGuardian(_guardian: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setIdealRange(_idealRange: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setIncentiveTokens(_incentiveTokens: PromiseOrValue<string>[], overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setIsAYSActive(_active: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setIsStkAAVEActive(_isStkAAVEActive: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setRebalancer(_rebalancer: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setReferral(_referral: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setReleaseBlocksPeriod(_releaseBlocksPeriod: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setRevertIfTooLow(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setSkipDefaultCheck(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setStakingRewards(_AAStaking: PromiseOrValue<string>, _BBStaking: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setStrategy(_strategy: PromiseOrValue<string>, _incentiveTokens: PromiseOrValue<string>[], overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setTrancheAPRSplitRatio(_trancheAPRSplitRatio: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setTrancheIdealWeightRatio(_trancheIdealWeightRatio: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setUnlentPerc(_unlentPerc: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        skipDefaultCheck(overrides?: CallOverrides): Promise<[boolean]>;
        strategy(overrides?: CallOverrides): Promise<[string]>;
        strategyToken(overrides?: CallOverrides): Promise<[string]>;
        token(overrides?: CallOverrides): Promise<[string]>;
        trancheAPRSplitRatio(overrides?: CallOverrides): Promise<[BigNumber]>;
        trancheIdealWeightRatio(overrides?: CallOverrides): Promise<[BigNumber]>;
        tranchePrice(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
        transferOwnership(newOwner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        transferToken(_token: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        unclaimedFees(overrides?: CallOverrides): Promise<[BigNumber]>;
        unlentPerc(overrides?: CallOverrides): Promise<[BigNumber]>;
        unpause(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        virtualPrice(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber] & {
            _virtualPrice: BigNumber;
        }>;
        weth(overrides?: CallOverrides): Promise<[string]>;
        withdrawAA(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        withdrawBB(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
    };
    AAStaking(overrides?: CallOverrides): Promise<string>;
    AATranche(overrides?: CallOverrides): Promise<string>;
    BBStaking(overrides?: CallOverrides): Promise<string>;
    BBTranche(overrides?: CallOverrides): Promise<string>;
    FULL_ALLOC(overrides?: CallOverrides): Promise<BigNumber>;
    MAX_FEE(overrides?: CallOverrides): Promise<BigNumber>;
    ONE_TRANCHE_TOKEN(overrides?: CallOverrides): Promise<BigNumber>;
    _setLimit(_limit: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    allowAAWithdraw(overrides?: CallOverrides): Promise<boolean>;
    allowBBWithdraw(overrides?: CallOverrides): Promise<boolean>;
    depositAA(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    depositAARef(_amount: PromiseOrValue<BigNumberish>, _referral: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    depositBB(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    depositBBRef(_amount: PromiseOrValue<BigNumberish>, _referral: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    emergencyShutdown(overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    fee(overrides?: CallOverrides): Promise<BigNumber>;
    feeReceiver(overrides?: CallOverrides): Promise<string>;
    feeSplit(overrides?: CallOverrides): Promise<BigNumber>;
    getApr(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    getContractValue(overrides?: CallOverrides): Promise<BigNumber>;
    getCurrentAARatio(overrides?: CallOverrides): Promise<BigNumber>;
    getIdealApr(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    getIncentiveTokens(overrides?: CallOverrides): Promise<string[]>;
    governanceRecoveryFund(overrides?: CallOverrides): Promise<string>;
    guardian(overrides?: CallOverrides): Promise<string>;
    harvest(_skipFlags: PromiseOrValue<boolean>[], _skipReward: PromiseOrValue<boolean>[], _minAmount: PromiseOrValue<BigNumberish>[], _sellAmounts: PromiseOrValue<BigNumberish>[], _extraData: PromiseOrValue<BytesLike>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    idealRange(overrides?: CallOverrides): Promise<BigNumber>;
    incentiveTokens(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
    initialize(_limit: PromiseOrValue<BigNumberish>, _guardedToken: PromiseOrValue<string>, _governanceFund: PromiseOrValue<string>, _owner: PromiseOrValue<string>, _rebalancer: PromiseOrValue<string>, _strategy: PromiseOrValue<string>, _trancheAPRSplitRatio: PromiseOrValue<BigNumberish>, _trancheIdealWeightRatio: PromiseOrValue<BigNumberish>, _incentiveTokens: PromiseOrValue<string>[], overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    isAYSActive(overrides?: CallOverrides): Promise<boolean>;
    lastNAVAA(overrides?: CallOverrides): Promise<BigNumber>;
    lastNAVBB(overrides?: CallOverrides): Promise<BigNumber>;
    lastStrategyPrice(overrides?: CallOverrides): Promise<BigNumber>;
    limit(overrides?: CallOverrides): Promise<BigNumber>;
    liquidate(_amount: PromiseOrValue<BigNumberish>, _revertIfNeeded: PromiseOrValue<boolean>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    oneToken(overrides?: CallOverrides): Promise<BigNumber>;
    owner(overrides?: CallOverrides): Promise<string>;
    pause(overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    paused(overrides?: CallOverrides): Promise<boolean>;
    priceAA(overrides?: CallOverrides): Promise<BigNumber>;
    priceBB(overrides?: CallOverrides): Promise<BigNumber>;
    rebalancer(overrides?: CallOverrides): Promise<string>;
    referral(overrides?: CallOverrides): Promise<string>;
    releaseBlocksPeriod(overrides?: CallOverrides): Promise<BigNumber>;
    renounceOwnership(overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    revertIfTooLow(overrides?: CallOverrides): Promise<boolean>;
    setAllowAAWithdraw(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setAllowBBWithdraw(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setFee(_fee: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setFeeReceiver(_feeReceiver: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setFeeSplit(_feeSplit: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setGuardian(_guardian: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setIdealRange(_idealRange: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setIncentiveTokens(_incentiveTokens: PromiseOrValue<string>[], overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setIsAYSActive(_active: PromiseOrValue<boolean>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setIsStkAAVEActive(_isStkAAVEActive: PromiseOrValue<boolean>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setRebalancer(_rebalancer: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setReferral(_referral: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setReleaseBlocksPeriod(_releaseBlocksPeriod: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setRevertIfTooLow(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setSkipDefaultCheck(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setStakingRewards(_AAStaking: PromiseOrValue<string>, _BBStaking: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setStrategy(_strategy: PromiseOrValue<string>, _incentiveTokens: PromiseOrValue<string>[], overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setTrancheAPRSplitRatio(_trancheAPRSplitRatio: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setTrancheIdealWeightRatio(_trancheIdealWeightRatio: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setUnlentPerc(_unlentPerc: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    skipDefaultCheck(overrides?: CallOverrides): Promise<boolean>;
    strategy(overrides?: CallOverrides): Promise<string>;
    strategyToken(overrides?: CallOverrides): Promise<string>;
    token(overrides?: CallOverrides): Promise<string>;
    trancheAPRSplitRatio(overrides?: CallOverrides): Promise<BigNumber>;
    trancheIdealWeightRatio(overrides?: CallOverrides): Promise<BigNumber>;
    tranchePrice(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    transferOwnership(newOwner: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    transferToken(_token: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    unclaimedFees(overrides?: CallOverrides): Promise<BigNumber>;
    unlentPerc(overrides?: CallOverrides): Promise<BigNumber>;
    unpause(overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    virtualPrice(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    weth(overrides?: CallOverrides): Promise<string>;
    withdrawAA(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    withdrawBB(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    callStatic: {
        AAStaking(overrides?: CallOverrides): Promise<string>;
        AATranche(overrides?: CallOverrides): Promise<string>;
        BBStaking(overrides?: CallOverrides): Promise<string>;
        BBTranche(overrides?: CallOverrides): Promise<string>;
        FULL_ALLOC(overrides?: CallOverrides): Promise<BigNumber>;
        MAX_FEE(overrides?: CallOverrides): Promise<BigNumber>;
        ONE_TRANCHE_TOKEN(overrides?: CallOverrides): Promise<BigNumber>;
        _setLimit(_limit: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        allowAAWithdraw(overrides?: CallOverrides): Promise<boolean>;
        allowBBWithdraw(overrides?: CallOverrides): Promise<boolean>;
        depositAA(_amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        depositAARef(_amount: PromiseOrValue<BigNumberish>, _referral: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        depositBB(_amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        depositBBRef(_amount: PromiseOrValue<BigNumberish>, _referral: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        emergencyShutdown(overrides?: CallOverrides): Promise<void>;
        fee(overrides?: CallOverrides): Promise<BigNumber>;
        feeReceiver(overrides?: CallOverrides): Promise<string>;
        feeSplit(overrides?: CallOverrides): Promise<BigNumber>;
        getApr(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        getContractValue(overrides?: CallOverrides): Promise<BigNumber>;
        getCurrentAARatio(overrides?: CallOverrides): Promise<BigNumber>;
        getIdealApr(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        getIncentiveTokens(overrides?: CallOverrides): Promise<string[]>;
        governanceRecoveryFund(overrides?: CallOverrides): Promise<string>;
        guardian(overrides?: CallOverrides): Promise<string>;
        harvest(_skipFlags: PromiseOrValue<boolean>[], _skipReward: PromiseOrValue<boolean>[], _minAmount: PromiseOrValue<BigNumberish>[], _sellAmounts: PromiseOrValue<BigNumberish>[], _extraData: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber[][]>;
        idealRange(overrides?: CallOverrides): Promise<BigNumber>;
        incentiveTokens(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
        initialize(_limit: PromiseOrValue<BigNumberish>, _guardedToken: PromiseOrValue<string>, _governanceFund: PromiseOrValue<string>, _owner: PromiseOrValue<string>, _rebalancer: PromiseOrValue<string>, _strategy: PromiseOrValue<string>, _trancheAPRSplitRatio: PromiseOrValue<BigNumberish>, _trancheIdealWeightRatio: PromiseOrValue<BigNumberish>, _incentiveTokens: PromiseOrValue<string>[], overrides?: CallOverrides): Promise<void>;
        isAYSActive(overrides?: CallOverrides): Promise<boolean>;
        lastNAVAA(overrides?: CallOverrides): Promise<BigNumber>;
        lastNAVBB(overrides?: CallOverrides): Promise<BigNumber>;
        lastStrategyPrice(overrides?: CallOverrides): Promise<BigNumber>;
        limit(overrides?: CallOverrides): Promise<BigNumber>;
        liquidate(_amount: PromiseOrValue<BigNumberish>, _revertIfNeeded: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
        oneToken(overrides?: CallOverrides): Promise<BigNumber>;
        owner(overrides?: CallOverrides): Promise<string>;
        pause(overrides?: CallOverrides): Promise<void>;
        paused(overrides?: CallOverrides): Promise<boolean>;
        priceAA(overrides?: CallOverrides): Promise<BigNumber>;
        priceBB(overrides?: CallOverrides): Promise<BigNumber>;
        rebalancer(overrides?: CallOverrides): Promise<string>;
        referral(overrides?: CallOverrides): Promise<string>;
        releaseBlocksPeriod(overrides?: CallOverrides): Promise<BigNumber>;
        renounceOwnership(overrides?: CallOverrides): Promise<void>;
        revertIfTooLow(overrides?: CallOverrides): Promise<boolean>;
        setAllowAAWithdraw(_allowed: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
        setAllowBBWithdraw(_allowed: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
        setFee(_fee: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        setFeeReceiver(_feeReceiver: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        setFeeSplit(_feeSplit: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        setGuardian(_guardian: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        setIdealRange(_idealRange: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        setIncentiveTokens(_incentiveTokens: PromiseOrValue<string>[], overrides?: CallOverrides): Promise<void>;
        setIsAYSActive(_active: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
        setIsStkAAVEActive(_isStkAAVEActive: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
        setRebalancer(_rebalancer: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        setReferral(_referral: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        setReleaseBlocksPeriod(_releaseBlocksPeriod: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        setRevertIfTooLow(_allowed: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
        setSkipDefaultCheck(_allowed: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
        setStakingRewards(_AAStaking: PromiseOrValue<string>, _BBStaking: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        setStrategy(_strategy: PromiseOrValue<string>, _incentiveTokens: PromiseOrValue<string>[], overrides?: CallOverrides): Promise<void>;
        setTrancheAPRSplitRatio(_trancheAPRSplitRatio: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        setTrancheIdealWeightRatio(_trancheIdealWeightRatio: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        setUnlentPerc(_unlentPerc: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        skipDefaultCheck(overrides?: CallOverrides): Promise<boolean>;
        strategy(overrides?: CallOverrides): Promise<string>;
        strategyToken(overrides?: CallOverrides): Promise<string>;
        token(overrides?: CallOverrides): Promise<string>;
        trancheAPRSplitRatio(overrides?: CallOverrides): Promise<BigNumber>;
        trancheIdealWeightRatio(overrides?: CallOverrides): Promise<BigNumber>;
        tranchePrice(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        transferOwnership(newOwner: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        transferToken(_token: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        unclaimedFees(overrides?: CallOverrides): Promise<BigNumber>;
        unlentPerc(overrides?: CallOverrides): Promise<BigNumber>;
        unpause(overrides?: CallOverrides): Promise<void>;
        virtualPrice(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        weth(overrides?: CallOverrides): Promise<string>;
        withdrawAA(_amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        withdrawBB(_amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
    };
    filters: {
        'OwnershipTransferred(address,address)'(previousOwner?: PromiseOrValue<string> | null, newOwner?: PromiseOrValue<string> | null): OwnershipTransferredEventFilter;
        OwnershipTransferred(previousOwner?: PromiseOrValue<string> | null, newOwner?: PromiseOrValue<string> | null): OwnershipTransferredEventFilter;
        'Paused(address)'(account?: null): PausedEventFilter;
        Paused(account?: null): PausedEventFilter;
        'Referral(uint256,address)'(_amount?: null, _ref?: null): ReferralEventFilter;
        Referral(_amount?: null, _ref?: null): ReferralEventFilter;
        'Unpaused(address)'(account?: null): UnpausedEventFilter;
        Unpaused(account?: null): UnpausedEventFilter;
    };
    estimateGas: {
        AAStaking(overrides?: CallOverrides): Promise<BigNumber>;
        AATranche(overrides?: CallOverrides): Promise<BigNumber>;
        BBStaking(overrides?: CallOverrides): Promise<BigNumber>;
        BBTranche(overrides?: CallOverrides): Promise<BigNumber>;
        FULL_ALLOC(overrides?: CallOverrides): Promise<BigNumber>;
        MAX_FEE(overrides?: CallOverrides): Promise<BigNumber>;
        ONE_TRANCHE_TOKEN(overrides?: CallOverrides): Promise<BigNumber>;
        _setLimit(_limit: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        allowAAWithdraw(overrides?: CallOverrides): Promise<BigNumber>;
        allowBBWithdraw(overrides?: CallOverrides): Promise<BigNumber>;
        depositAA(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        depositAARef(_amount: PromiseOrValue<BigNumberish>, _referral: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        depositBB(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        depositBBRef(_amount: PromiseOrValue<BigNumberish>, _referral: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        emergencyShutdown(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        fee(overrides?: CallOverrides): Promise<BigNumber>;
        feeReceiver(overrides?: CallOverrides): Promise<BigNumber>;
        feeSplit(overrides?: CallOverrides): Promise<BigNumber>;
        getApr(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        getContractValue(overrides?: CallOverrides): Promise<BigNumber>;
        getCurrentAARatio(overrides?: CallOverrides): Promise<BigNumber>;
        getIdealApr(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        getIncentiveTokens(overrides?: CallOverrides): Promise<BigNumber>;
        governanceRecoveryFund(overrides?: CallOverrides): Promise<BigNumber>;
        guardian(overrides?: CallOverrides): Promise<BigNumber>;
        harvest(_skipFlags: PromiseOrValue<boolean>[], _skipReward: PromiseOrValue<boolean>[], _minAmount: PromiseOrValue<BigNumberish>[], _sellAmounts: PromiseOrValue<BigNumberish>[], _extraData: PromiseOrValue<BytesLike>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        idealRange(overrides?: CallOverrides): Promise<BigNumber>;
        incentiveTokens(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        initialize(_limit: PromiseOrValue<BigNumberish>, _guardedToken: PromiseOrValue<string>, _governanceFund: PromiseOrValue<string>, _owner: PromiseOrValue<string>, _rebalancer: PromiseOrValue<string>, _strategy: PromiseOrValue<string>, _trancheAPRSplitRatio: PromiseOrValue<BigNumberish>, _trancheIdealWeightRatio: PromiseOrValue<BigNumberish>, _incentiveTokens: PromiseOrValue<string>[], overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        isAYSActive(overrides?: CallOverrides): Promise<BigNumber>;
        lastNAVAA(overrides?: CallOverrides): Promise<BigNumber>;
        lastNAVBB(overrides?: CallOverrides): Promise<BigNumber>;
        lastStrategyPrice(overrides?: CallOverrides): Promise<BigNumber>;
        limit(overrides?: CallOverrides): Promise<BigNumber>;
        liquidate(_amount: PromiseOrValue<BigNumberish>, _revertIfNeeded: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        oneToken(overrides?: CallOverrides): Promise<BigNumber>;
        owner(overrides?: CallOverrides): Promise<BigNumber>;
        pause(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        paused(overrides?: CallOverrides): Promise<BigNumber>;
        priceAA(overrides?: CallOverrides): Promise<BigNumber>;
        priceBB(overrides?: CallOverrides): Promise<BigNumber>;
        rebalancer(overrides?: CallOverrides): Promise<BigNumber>;
        referral(overrides?: CallOverrides): Promise<BigNumber>;
        releaseBlocksPeriod(overrides?: CallOverrides): Promise<BigNumber>;
        renounceOwnership(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        revertIfTooLow(overrides?: CallOverrides): Promise<BigNumber>;
        setAllowAAWithdraw(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setAllowBBWithdraw(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setFee(_fee: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setFeeReceiver(_feeReceiver: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setFeeSplit(_feeSplit: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setGuardian(_guardian: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setIdealRange(_idealRange: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setIncentiveTokens(_incentiveTokens: PromiseOrValue<string>[], overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setIsAYSActive(_active: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setIsStkAAVEActive(_isStkAAVEActive: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setRebalancer(_rebalancer: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setReferral(_referral: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setReleaseBlocksPeriod(_releaseBlocksPeriod: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setRevertIfTooLow(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setSkipDefaultCheck(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setStakingRewards(_AAStaking: PromiseOrValue<string>, _BBStaking: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setStrategy(_strategy: PromiseOrValue<string>, _incentiveTokens: PromiseOrValue<string>[], overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setTrancheAPRSplitRatio(_trancheAPRSplitRatio: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setTrancheIdealWeightRatio(_trancheIdealWeightRatio: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setUnlentPerc(_unlentPerc: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        skipDefaultCheck(overrides?: CallOverrides): Promise<BigNumber>;
        strategy(overrides?: CallOverrides): Promise<BigNumber>;
        strategyToken(overrides?: CallOverrides): Promise<BigNumber>;
        token(overrides?: CallOverrides): Promise<BigNumber>;
        trancheAPRSplitRatio(overrides?: CallOverrides): Promise<BigNumber>;
        trancheIdealWeightRatio(overrides?: CallOverrides): Promise<BigNumber>;
        tranchePrice(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        transferOwnership(newOwner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        transferToken(_token: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        unclaimedFees(overrides?: CallOverrides): Promise<BigNumber>;
        unlentPerc(overrides?: CallOverrides): Promise<BigNumber>;
        unpause(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        virtualPrice(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        weth(overrides?: CallOverrides): Promise<BigNumber>;
        withdrawAA(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        withdrawBB(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
    };
    populateTransaction: {
        AAStaking(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        AATranche(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        BBStaking(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        BBTranche(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        FULL_ALLOC(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        MAX_FEE(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        ONE_TRANCHE_TOKEN(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        _setLimit(_limit: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        allowAAWithdraw(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        allowBBWithdraw(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        depositAA(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        depositAARef(_amount: PromiseOrValue<BigNumberish>, _referral: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        depositBB(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        depositBBRef(_amount: PromiseOrValue<BigNumberish>, _referral: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        emergencyShutdown(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        fee(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        feeReceiver(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        feeSplit(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getApr(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getContractValue(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getCurrentAARatio(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getIdealApr(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getIncentiveTokens(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        governanceRecoveryFund(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        guardian(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        harvest(_skipFlags: PromiseOrValue<boolean>[], _skipReward: PromiseOrValue<boolean>[], _minAmount: PromiseOrValue<BigNumberish>[], _sellAmounts: PromiseOrValue<BigNumberish>[], _extraData: PromiseOrValue<BytesLike>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        idealRange(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        incentiveTokens(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        initialize(_limit: PromiseOrValue<BigNumberish>, _guardedToken: PromiseOrValue<string>, _governanceFund: PromiseOrValue<string>, _owner: PromiseOrValue<string>, _rebalancer: PromiseOrValue<string>, _strategy: PromiseOrValue<string>, _trancheAPRSplitRatio: PromiseOrValue<BigNumberish>, _trancheIdealWeightRatio: PromiseOrValue<BigNumberish>, _incentiveTokens: PromiseOrValue<string>[], overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        isAYSActive(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        lastNAVAA(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        lastNAVBB(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        lastStrategyPrice(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        limit(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        liquidate(_amount: PromiseOrValue<BigNumberish>, _revertIfNeeded: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        oneToken(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        owner(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        pause(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        paused(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        priceAA(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        priceBB(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        rebalancer(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        referral(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        releaseBlocksPeriod(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        renounceOwnership(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        revertIfTooLow(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        setAllowAAWithdraw(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setAllowBBWithdraw(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setFee(_fee: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setFeeReceiver(_feeReceiver: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setFeeSplit(_feeSplit: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setGuardian(_guardian: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setIdealRange(_idealRange: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setIncentiveTokens(_incentiveTokens: PromiseOrValue<string>[], overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setIsAYSActive(_active: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setIsStkAAVEActive(_isStkAAVEActive: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setRebalancer(_rebalancer: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setReferral(_referral: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setReleaseBlocksPeriod(_releaseBlocksPeriod: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setRevertIfTooLow(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setSkipDefaultCheck(_allowed: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setStakingRewards(_AAStaking: PromiseOrValue<string>, _BBStaking: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setStrategy(_strategy: PromiseOrValue<string>, _incentiveTokens: PromiseOrValue<string>[], overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setTrancheAPRSplitRatio(_trancheAPRSplitRatio: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setTrancheIdealWeightRatio(_trancheIdealWeightRatio: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setUnlentPerc(_unlentPerc: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        skipDefaultCheck(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        strategy(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        strategyToken(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        token(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        trancheAPRSplitRatio(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        trancheIdealWeightRatio(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        tranchePrice(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        transferOwnership(newOwner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        transferToken(_token: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        unclaimedFees(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        unlentPerc(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        unpause(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        virtualPrice(_tranche: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        weth(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        withdrawAA(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        withdrawBB(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
    };
}
