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 declare type RewardsDataStruct = {
    rewardToken: PromiseOrValue<string>;
    outstandingRewards: PromiseOrValue<BigNumberish>;
};
export declare type RewardsDataStructOutput = [string, BigNumber] & {
    rewardToken: string;
    outstandingRewards: BigNumber;
};
export declare type PermissionsStruct = {
    keycode: PromiseOrValue<BytesLike>;
    funcSelector: PromiseOrValue<BytesLike>;
};
export declare type PermissionsStructOutput = [string, string] & {
    keycode: string;
    funcSelector: string;
};
export declare namespace IBLVaultManagerLido {
    type TokenDataStruct = {
        ohm: PromiseOrValue<string>;
        pairToken: PromiseOrValue<string>;
        aura: PromiseOrValue<string>;
        bal: PromiseOrValue<string>;
    };
    type TokenDataStructOutput = [string, string, string, string] & {
        ohm: string;
        pairToken: string;
        aura: string;
        bal: string;
    };
    type BalancerDataStruct = {
        vault: PromiseOrValue<string>;
        liquidityPool: PromiseOrValue<string>;
        balancerHelper: PromiseOrValue<string>;
    };
    type BalancerDataStructOutput = [string, string, string] & {
        vault: string;
        liquidityPool: string;
        balancerHelper: string;
    };
    type AuraDataStruct = {
        pid: PromiseOrValue<BigNumberish>;
        auraBooster: PromiseOrValue<string>;
        auraRewardPool: PromiseOrValue<string>;
    };
    type AuraDataStructOutput = [BigNumber, string, string] & {
        pid: BigNumber;
        auraBooster: string;
        auraRewardPool: string;
    };
    type OracleFeedStruct = {
        feed: PromiseOrValue<string>;
        updateThreshold: PromiseOrValue<BigNumberish>;
    };
    type OracleFeedStructOutput = [string, number] & {
        feed: string;
        updateThreshold: number;
    };
}
export interface OlympusBoostedLiquidityManagerInterface extends utils.Interface {
    functions: {
        'BLREG()': FunctionFragment;
        'MAX_FEE()': FunctionFragment;
        'MINTR()': FunctionFragment;
        'ROLES()': FunctionFragment;
        'TRSRY()': FunctionFragment;
        'activate()': FunctionFragment;
        'aura()': FunctionFragment;
        'auraData()': FunctionFragment;
        'auraMiningLib()': FunctionFragment;
        'bal()': FunctionFragment;
        'balancerData()': FunctionFragment;
        'burnOhmFromVault(uint256)': FunctionFragment;
        'canWithdraw(address)': FunctionFragment;
        'changeKernel(address)': FunctionFragment;
        'changeUpdateThresholds(uint48,uint48,uint48)': FunctionFragment;
        'circulatingOhmBurned()': FunctionFragment;
        'configureDependencies()': FunctionFragment;
        'currentFee()': FunctionFragment;
        'deactivate()': FunctionFragment;
        'decreaseTotalLp(uint256)': FunctionFragment;
        'deployVault()': FunctionFragment;
        'deployedOhm()': FunctionFragment;
        'emergencyBurnOhm(uint256)': FunctionFragment;
        'ethUsdPriceFeed()': FunctionFragment;
        'exchangeName()': FunctionFragment;
        'getExpectedLpAmount(uint256)': FunctionFragment;
        'getExpectedPairTokenOutUser(uint256)': FunctionFragment;
        'getExpectedTokensOutProtocol(uint256)': FunctionFragment;
        'getLpBalance(address)': FunctionFragment;
        'getMaxDeposit()': FunctionFragment;
        'getOhmSupplyChangeData()': FunctionFragment;
        'getOhmTknPoolPrice()': FunctionFragment;
        'getOhmTknPrice()': FunctionFragment;
        'getOutstandingRewards(address)': FunctionFragment;
        'getPoolOhmShare()': FunctionFragment;
        'getRewardRate(address)': FunctionFragment;
        'getRewardTokens()': FunctionFragment;
        'getTknOhmPrice()': FunctionFragment;
        'getUserPairShare(address)': FunctionFragment;
        'implementation()': FunctionFragment;
        'increaseTotalLp(uint256)': FunctionFragment;
        'isActive()': FunctionFragment;
        'isLidoBLVaultActive()': FunctionFragment;
        'kernel()': FunctionFragment;
        'minWithdrawalDelay()': FunctionFragment;
        'mintOhmToVault(uint256)': FunctionFragment;
        'ohm()': FunctionFragment;
        'ohmEthPriceFeed()': FunctionFragment;
        'ohmLimit()': FunctionFragment;
        'pairToken()': FunctionFragment;
        'requestPermissions()': FunctionFragment;
        'setFee(uint64)': FunctionFragment;
        'setLimit(uint256)': FunctionFragment;
        'setWithdrawalDelay(uint48)': FunctionFragment;
        'stethUsdPriceFeed()': FunctionFragment;
        'totalLp()': FunctionFragment;
        'userVaults(address)': FunctionFragment;
        'vaultOwners(address)': FunctionFragment;
    };
    getFunction(nameOrSignatureOrTopic: 'BLREG' | 'MAX_FEE' | 'MINTR' | 'ROLES' | 'TRSRY' | 'activate' | 'aura' | 'auraData' | 'auraMiningLib' | 'bal' | 'balancerData' | 'burnOhmFromVault' | 'canWithdraw' | 'changeKernel' | 'changeUpdateThresholds' | 'circulatingOhmBurned' | 'configureDependencies' | 'currentFee' | 'deactivate' | 'decreaseTotalLp' | 'deployVault' | 'deployedOhm' | 'emergencyBurnOhm' | 'ethUsdPriceFeed' | 'exchangeName' | 'getExpectedLpAmount' | 'getExpectedPairTokenOutUser' | 'getExpectedTokensOutProtocol' | 'getLpBalance' | 'getMaxDeposit' | 'getOhmSupplyChangeData' | 'getOhmTknPoolPrice' | 'getOhmTknPrice' | 'getOutstandingRewards' | 'getPoolOhmShare' | 'getRewardRate' | 'getRewardTokens' | 'getTknOhmPrice' | 'getUserPairShare' | 'implementation' | 'increaseTotalLp' | 'isActive' | 'isLidoBLVaultActive' | 'kernel' | 'minWithdrawalDelay' | 'mintOhmToVault' | 'ohm' | 'ohmEthPriceFeed' | 'ohmLimit' | 'pairToken' | 'requestPermissions' | 'setFee' | 'setLimit' | 'setWithdrawalDelay' | 'stethUsdPriceFeed' | 'totalLp' | 'userVaults' | 'vaultOwners'): FunctionFragment;
    encodeFunctionData(functionFragment: 'BLREG', values?: undefined): string;
    encodeFunctionData(functionFragment: 'MAX_FEE', values?: undefined): string;
    encodeFunctionData(functionFragment: 'MINTR', values?: undefined): string;
    encodeFunctionData(functionFragment: 'ROLES', values?: undefined): string;
    encodeFunctionData(functionFragment: 'TRSRY', values?: undefined): string;
    encodeFunctionData(functionFragment: 'activate', values?: undefined): string;
    encodeFunctionData(functionFragment: 'aura', values?: undefined): string;
    encodeFunctionData(functionFragment: 'auraData', values?: undefined): string;
    encodeFunctionData(functionFragment: 'auraMiningLib', values?: undefined): string;
    encodeFunctionData(functionFragment: 'bal', values?: undefined): string;
    encodeFunctionData(functionFragment: 'balancerData', values?: undefined): string;
    encodeFunctionData(functionFragment: 'burnOhmFromVault', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'canWithdraw', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'changeKernel', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'changeUpdateThresholds', values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'circulatingOhmBurned', values?: undefined): string;
    encodeFunctionData(functionFragment: 'configureDependencies', values?: undefined): string;
    encodeFunctionData(functionFragment: 'currentFee', values?: undefined): string;
    encodeFunctionData(functionFragment: 'deactivate', values?: undefined): string;
    encodeFunctionData(functionFragment: 'decreaseTotalLp', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'deployVault', values?: undefined): string;
    encodeFunctionData(functionFragment: 'deployedOhm', values?: undefined): string;
    encodeFunctionData(functionFragment: 'emergencyBurnOhm', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'ethUsdPriceFeed', values?: undefined): string;
    encodeFunctionData(functionFragment: 'exchangeName', values?: undefined): string;
    encodeFunctionData(functionFragment: 'getExpectedLpAmount', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'getExpectedPairTokenOutUser', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'getExpectedTokensOutProtocol', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'getLpBalance', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'getMaxDeposit', values?: undefined): string;
    encodeFunctionData(functionFragment: 'getOhmSupplyChangeData', values?: undefined): string;
    encodeFunctionData(functionFragment: 'getOhmTknPoolPrice', values?: undefined): string;
    encodeFunctionData(functionFragment: 'getOhmTknPrice', values?: undefined): string;
    encodeFunctionData(functionFragment: 'getOutstandingRewards', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'getPoolOhmShare', values?: undefined): string;
    encodeFunctionData(functionFragment: 'getRewardRate', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'getRewardTokens', values?: undefined): string;
    encodeFunctionData(functionFragment: 'getTknOhmPrice', values?: undefined): string;
    encodeFunctionData(functionFragment: 'getUserPairShare', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'implementation', values?: undefined): string;
    encodeFunctionData(functionFragment: 'increaseTotalLp', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'isActive', values?: undefined): string;
    encodeFunctionData(functionFragment: 'isLidoBLVaultActive', values?: undefined): string;
    encodeFunctionData(functionFragment: 'kernel', values?: undefined): string;
    encodeFunctionData(functionFragment: 'minWithdrawalDelay', values?: undefined): string;
    encodeFunctionData(functionFragment: 'mintOhmToVault', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'ohm', values?: undefined): string;
    encodeFunctionData(functionFragment: 'ohmEthPriceFeed', values?: undefined): string;
    encodeFunctionData(functionFragment: 'ohmLimit', values?: undefined): string;
    encodeFunctionData(functionFragment: 'pairToken', values?: undefined): string;
    encodeFunctionData(functionFragment: 'requestPermissions', values?: undefined): string;
    encodeFunctionData(functionFragment: 'setFee', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'setLimit', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'setWithdrawalDelay', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'stethUsdPriceFeed', values?: undefined): string;
    encodeFunctionData(functionFragment: 'totalLp', values?: undefined): string;
    encodeFunctionData(functionFragment: 'userVaults', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'vaultOwners', values: [PromiseOrValue<string>]): string;
    decodeFunctionResult(functionFragment: 'BLREG', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'MAX_FEE', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'MINTR', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'ROLES', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'TRSRY', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'activate', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'aura', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'auraData', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'auraMiningLib', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'bal', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'balancerData', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'burnOhmFromVault', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'canWithdraw', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'changeKernel', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'changeUpdateThresholds', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'circulatingOhmBurned', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'configureDependencies', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'currentFee', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'deactivate', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'decreaseTotalLp', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'deployVault', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'deployedOhm', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'emergencyBurnOhm', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'ethUsdPriceFeed', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'exchangeName', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getExpectedLpAmount', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getExpectedPairTokenOutUser', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getExpectedTokensOutProtocol', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getLpBalance', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getMaxDeposit', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getOhmSupplyChangeData', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getOhmTknPoolPrice', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getOhmTknPrice', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getOutstandingRewards', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getPoolOhmShare', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getRewardRate', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getRewardTokens', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getTknOhmPrice', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getUserPairShare', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'implementation', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'increaseTotalLp', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'isActive', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'isLidoBLVaultActive', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'kernel', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'minWithdrawalDelay', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'mintOhmToVault', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'ohm', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'ohmEthPriceFeed', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'ohmLimit', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'pairToken', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'requestPermissions', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setFee', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setLimit', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setWithdrawalDelay', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'stethUsdPriceFeed', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'totalLp', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'userVaults', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'vaultOwners', data: BytesLike): Result;
    events: {
        'VaultDeployed(address,address,uint64)': EventFragment;
    };
    getEvent(nameOrSignatureOrTopic: 'VaultDeployed'): EventFragment;
}
export interface VaultDeployedEventObject {
    vault: string;
    owner: string;
    fee: BigNumber;
}
export declare type VaultDeployedEvent = TypedEvent<[string, string, BigNumber], VaultDeployedEventObject>;
export declare type VaultDeployedEventFilter = TypedEventFilter<VaultDeployedEvent>;
export interface OlympusBoostedLiquidityManager extends BaseContract {
    connect(signerOrProvider: Signer | Provider | string): this;
    attach(addressOrName: string): this;
    deployed(): Promise<this>;
    interface: OlympusBoostedLiquidityManagerInterface;
    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: {
        BLREG(overrides?: CallOverrides): Promise<[string]>;
        MAX_FEE(overrides?: CallOverrides): Promise<[number]>;
        MINTR(overrides?: CallOverrides): Promise<[string]>;
        ROLES(overrides?: CallOverrides): Promise<[string]>;
        TRSRY(overrides?: CallOverrides): Promise<[string]>;
        activate(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        aura(overrides?: CallOverrides): Promise<[string]>;
        auraData(overrides?: CallOverrides): Promise<[
            BigNumber,
            string,
            string
        ] & {
            pid: BigNumber;
            auraBooster: string;
            auraRewardPool: string;
        }>;
        auraMiningLib(overrides?: CallOverrides): Promise<[string]>;
        bal(overrides?: CallOverrides): Promise<[string]>;
        balancerData(overrides?: CallOverrides): Promise<[
            string,
            string,
            string
        ] & {
            vault: string;
            liquidityPool: string;
            balancerHelper: string;
        }>;
        burnOhmFromVault(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        canWithdraw(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[boolean]>;
        changeKernel(newKernel_: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        changeUpdateThresholds(ohmEthUpdateThreshold_: PromiseOrValue<BigNumberish>, ethUsdUpdateThreshold_: PromiseOrValue<BigNumberish>, stethUsdUpdateThreshold_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        circulatingOhmBurned(overrides?: CallOverrides): Promise<[BigNumber]>;
        configureDependencies(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        currentFee(overrides?: CallOverrides): Promise<[BigNumber]>;
        deactivate(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        decreaseTotalLp(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        deployVault(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        deployedOhm(overrides?: CallOverrides): Promise<[BigNumber]>;
        emergencyBurnOhm(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        ethUsdPriceFeed(overrides?: CallOverrides): Promise<[string, number] & {
            feed: string;
            updateThreshold: number;
        }>;
        exchangeName(overrides?: CallOverrides): Promise<[string]>;
        getExpectedLpAmount(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        getExpectedPairTokenOutUser(lpAmount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        getExpectedTokensOutProtocol(lpAmount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        getLpBalance(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
        getMaxDeposit(overrides?: CallOverrides): Promise<[BigNumber]>;
        getOhmSupplyChangeData(overrides?: CallOverrides): Promise<[
            BigNumber,
            BigNumber,
            BigNumber
        ] & {
            poolOhmShare: BigNumber;
            mintedOhm: BigNumber;
            netBurnedOhm: BigNumber;
        }>;
        getOhmTknPoolPrice(overrides?: CallOverrides): Promise<[BigNumber]>;
        getOhmTknPrice(overrides?: CallOverrides): Promise<[BigNumber]>;
        getOutstandingRewards(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[RewardsDataStructOutput[]]>;
        getPoolOhmShare(overrides?: CallOverrides): Promise<[BigNumber]>;
        getRewardRate(rewardToken_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber] & {
            rewardRate: BigNumber;
        }>;
        getRewardTokens(overrides?: CallOverrides): Promise<[string[]]>;
        getTknOhmPrice(overrides?: CallOverrides): Promise<[BigNumber]>;
        getUserPairShare(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
        implementation(overrides?: CallOverrides): Promise<[string]>;
        increaseTotalLp(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        isActive(overrides?: CallOverrides): Promise<[boolean]>;
        isLidoBLVaultActive(overrides?: CallOverrides): Promise<[boolean]>;
        kernel(overrides?: CallOverrides): Promise<[string]>;
        minWithdrawalDelay(overrides?: CallOverrides): Promise<[number]>;
        mintOhmToVault(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        ohm(overrides?: CallOverrides): Promise<[string]>;
        ohmEthPriceFeed(overrides?: CallOverrides): Promise<[string, number] & {
            feed: string;
            updateThreshold: number;
        }>;
        ohmLimit(overrides?: CallOverrides): Promise<[BigNumber]>;
        pairToken(overrides?: CallOverrides): Promise<[string]>;
        requestPermissions(overrides?: CallOverrides): Promise<[PermissionsStructOutput[]] & {
            permissions: PermissionsStructOutput[];
        }>;
        setFee(newFee_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setLimit(newLimit_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setWithdrawalDelay(newDelay_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        stethUsdPriceFeed(overrides?: CallOverrides): Promise<[string, number] & {
            feed: string;
            updateThreshold: number;
        }>;
        totalLp(overrides?: CallOverrides): Promise<[BigNumber]>;
        userVaults(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[string]>;
        vaultOwners(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[string]>;
    };
    BLREG(overrides?: CallOverrides): Promise<string>;
    MAX_FEE(overrides?: CallOverrides): Promise<number>;
    MINTR(overrides?: CallOverrides): Promise<string>;
    ROLES(overrides?: CallOverrides): Promise<string>;
    TRSRY(overrides?: CallOverrides): Promise<string>;
    activate(overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    aura(overrides?: CallOverrides): Promise<string>;
    auraData(overrides?: CallOverrides): Promise<[
        BigNumber,
        string,
        string
    ] & {
        pid: BigNumber;
        auraBooster: string;
        auraRewardPool: string;
    }>;
    auraMiningLib(overrides?: CallOverrides): Promise<string>;
    bal(overrides?: CallOverrides): Promise<string>;
    balancerData(overrides?: CallOverrides): Promise<[
        string,
        string,
        string
    ] & {
        vault: string;
        liquidityPool: string;
        balancerHelper: string;
    }>;
    burnOhmFromVault(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    canWithdraw(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>;
    changeKernel(newKernel_: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    changeUpdateThresholds(ohmEthUpdateThreshold_: PromiseOrValue<BigNumberish>, ethUsdUpdateThreshold_: PromiseOrValue<BigNumberish>, stethUsdUpdateThreshold_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    circulatingOhmBurned(overrides?: CallOverrides): Promise<BigNumber>;
    configureDependencies(overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    currentFee(overrides?: CallOverrides): Promise<BigNumber>;
    deactivate(overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    decreaseTotalLp(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    deployVault(overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    deployedOhm(overrides?: CallOverrides): Promise<BigNumber>;
    emergencyBurnOhm(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    ethUsdPriceFeed(overrides?: CallOverrides): Promise<[string, number] & {
        feed: string;
        updateThreshold: number;
    }>;
    exchangeName(overrides?: CallOverrides): Promise<string>;
    getExpectedLpAmount(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    getExpectedPairTokenOutUser(lpAmount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    getExpectedTokensOutProtocol(lpAmount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    getLpBalance(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    getMaxDeposit(overrides?: CallOverrides): Promise<BigNumber>;
    getOhmSupplyChangeData(overrides?: CallOverrides): Promise<[
        BigNumber,
        BigNumber,
        BigNumber
    ] & {
        poolOhmShare: BigNumber;
        mintedOhm: BigNumber;
        netBurnedOhm: BigNumber;
    }>;
    getOhmTknPoolPrice(overrides?: CallOverrides): Promise<BigNumber>;
    getOhmTknPrice(overrides?: CallOverrides): Promise<BigNumber>;
    getOutstandingRewards(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<RewardsDataStructOutput[]>;
    getPoolOhmShare(overrides?: CallOverrides): Promise<BigNumber>;
    getRewardRate(rewardToken_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    getRewardTokens(overrides?: CallOverrides): Promise<string[]>;
    getTknOhmPrice(overrides?: CallOverrides): Promise<BigNumber>;
    getUserPairShare(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    implementation(overrides?: CallOverrides): Promise<string>;
    increaseTotalLp(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    isActive(overrides?: CallOverrides): Promise<boolean>;
    isLidoBLVaultActive(overrides?: CallOverrides): Promise<boolean>;
    kernel(overrides?: CallOverrides): Promise<string>;
    minWithdrawalDelay(overrides?: CallOverrides): Promise<number>;
    mintOhmToVault(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    ohm(overrides?: CallOverrides): Promise<string>;
    ohmEthPriceFeed(overrides?: CallOverrides): Promise<[string, number] & {
        feed: string;
        updateThreshold: number;
    }>;
    ohmLimit(overrides?: CallOverrides): Promise<BigNumber>;
    pairToken(overrides?: CallOverrides): Promise<string>;
    requestPermissions(overrides?: CallOverrides): Promise<PermissionsStructOutput[]>;
    setFee(newFee_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setLimit(newLimit_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setWithdrawalDelay(newDelay_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    stethUsdPriceFeed(overrides?: CallOverrides): Promise<[string, number] & {
        feed: string;
        updateThreshold: number;
    }>;
    totalLp(overrides?: CallOverrides): Promise<BigNumber>;
    userVaults(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<string>;
    vaultOwners(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<string>;
    callStatic: {
        BLREG(overrides?: CallOverrides): Promise<string>;
        MAX_FEE(overrides?: CallOverrides): Promise<number>;
        MINTR(overrides?: CallOverrides): Promise<string>;
        ROLES(overrides?: CallOverrides): Promise<string>;
        TRSRY(overrides?: CallOverrides): Promise<string>;
        activate(overrides?: CallOverrides): Promise<void>;
        aura(overrides?: CallOverrides): Promise<string>;
        auraData(overrides?: CallOverrides): Promise<[
            BigNumber,
            string,
            string
        ] & {
            pid: BigNumber;
            auraBooster: string;
            auraRewardPool: string;
        }>;
        auraMiningLib(overrides?: CallOverrides): Promise<string>;
        bal(overrides?: CallOverrides): Promise<string>;
        balancerData(overrides?: CallOverrides): Promise<[
            string,
            string,
            string
        ] & {
            vault: string;
            liquidityPool: string;
            balancerHelper: string;
        }>;
        burnOhmFromVault(amount_: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        canWithdraw(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>;
        changeKernel(newKernel_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        changeUpdateThresholds(ohmEthUpdateThreshold_: PromiseOrValue<BigNumberish>, ethUsdUpdateThreshold_: PromiseOrValue<BigNumberish>, stethUsdUpdateThreshold_: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        circulatingOhmBurned(overrides?: CallOverrides): Promise<BigNumber>;
        configureDependencies(overrides?: CallOverrides): Promise<string[]>;
        currentFee(overrides?: CallOverrides): Promise<BigNumber>;
        deactivate(overrides?: CallOverrides): Promise<void>;
        decreaseTotalLp(amount_: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        deployVault(overrides?: CallOverrides): Promise<string>;
        deployedOhm(overrides?: CallOverrides): Promise<BigNumber>;
        emergencyBurnOhm(amount_: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        ethUsdPriceFeed(overrides?: CallOverrides): Promise<[string, number] & {
            feed: string;
            updateThreshold: number;
        }>;
        exchangeName(overrides?: CallOverrides): Promise<string>;
        getExpectedLpAmount(amount_: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        getExpectedPairTokenOutUser(lpAmount_: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        getExpectedTokensOutProtocol(lpAmount_: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber[]>;
        getLpBalance(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        getMaxDeposit(overrides?: CallOverrides): Promise<BigNumber>;
        getOhmSupplyChangeData(overrides?: CallOverrides): Promise<[
            BigNumber,
            BigNumber,
            BigNumber
        ] & {
            poolOhmShare: BigNumber;
            mintedOhm: BigNumber;
            netBurnedOhm: BigNumber;
        }>;
        getOhmTknPoolPrice(overrides?: CallOverrides): Promise<BigNumber>;
        getOhmTknPrice(overrides?: CallOverrides): Promise<BigNumber>;
        getOutstandingRewards(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<RewardsDataStructOutput[]>;
        getPoolOhmShare(overrides?: CallOverrides): Promise<BigNumber>;
        getRewardRate(rewardToken_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        getRewardTokens(overrides?: CallOverrides): Promise<string[]>;
        getTknOhmPrice(overrides?: CallOverrides): Promise<BigNumber>;
        getUserPairShare(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        implementation(overrides?: CallOverrides): Promise<string>;
        increaseTotalLp(amount_: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        isActive(overrides?: CallOverrides): Promise<boolean>;
        isLidoBLVaultActive(overrides?: CallOverrides): Promise<boolean>;
        kernel(overrides?: CallOverrides): Promise<string>;
        minWithdrawalDelay(overrides?: CallOverrides): Promise<number>;
        mintOhmToVault(amount_: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        ohm(overrides?: CallOverrides): Promise<string>;
        ohmEthPriceFeed(overrides?: CallOverrides): Promise<[string, number] & {
            feed: string;
            updateThreshold: number;
        }>;
        ohmLimit(overrides?: CallOverrides): Promise<BigNumber>;
        pairToken(overrides?: CallOverrides): Promise<string>;
        requestPermissions(overrides?: CallOverrides): Promise<PermissionsStructOutput[]>;
        setFee(newFee_: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        setLimit(newLimit_: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        setWithdrawalDelay(newDelay_: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        stethUsdPriceFeed(overrides?: CallOverrides): Promise<[string, number] & {
            feed: string;
            updateThreshold: number;
        }>;
        totalLp(overrides?: CallOverrides): Promise<BigNumber>;
        userVaults(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<string>;
        vaultOwners(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<string>;
    };
    filters: {
        'VaultDeployed(address,address,uint64)'(vault?: null, owner?: null, fee?: null): VaultDeployedEventFilter;
        VaultDeployed(vault?: null, owner?: null, fee?: null): VaultDeployedEventFilter;
    };
    estimateGas: {
        BLREG(overrides?: CallOverrides): Promise<BigNumber>;
        MAX_FEE(overrides?: CallOverrides): Promise<BigNumber>;
        MINTR(overrides?: CallOverrides): Promise<BigNumber>;
        ROLES(overrides?: CallOverrides): Promise<BigNumber>;
        TRSRY(overrides?: CallOverrides): Promise<BigNumber>;
        activate(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        aura(overrides?: CallOverrides): Promise<BigNumber>;
        auraData(overrides?: CallOverrides): Promise<BigNumber>;
        auraMiningLib(overrides?: CallOverrides): Promise<BigNumber>;
        bal(overrides?: CallOverrides): Promise<BigNumber>;
        balancerData(overrides?: CallOverrides): Promise<BigNumber>;
        burnOhmFromVault(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        canWithdraw(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        changeKernel(newKernel_: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        changeUpdateThresholds(ohmEthUpdateThreshold_: PromiseOrValue<BigNumberish>, ethUsdUpdateThreshold_: PromiseOrValue<BigNumberish>, stethUsdUpdateThreshold_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        circulatingOhmBurned(overrides?: CallOverrides): Promise<BigNumber>;
        configureDependencies(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        currentFee(overrides?: CallOverrides): Promise<BigNumber>;
        deactivate(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        decreaseTotalLp(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        deployVault(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        deployedOhm(overrides?: CallOverrides): Promise<BigNumber>;
        emergencyBurnOhm(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        ethUsdPriceFeed(overrides?: CallOverrides): Promise<BigNumber>;
        exchangeName(overrides?: CallOverrides): Promise<BigNumber>;
        getExpectedLpAmount(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        getExpectedPairTokenOutUser(lpAmount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        getExpectedTokensOutProtocol(lpAmount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        getLpBalance(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        getMaxDeposit(overrides?: CallOverrides): Promise<BigNumber>;
        getOhmSupplyChangeData(overrides?: CallOverrides): Promise<BigNumber>;
        getOhmTknPoolPrice(overrides?: CallOverrides): Promise<BigNumber>;
        getOhmTknPrice(overrides?: CallOverrides): Promise<BigNumber>;
        getOutstandingRewards(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        getPoolOhmShare(overrides?: CallOverrides): Promise<BigNumber>;
        getRewardRate(rewardToken_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        getRewardTokens(overrides?: CallOverrides): Promise<BigNumber>;
        getTknOhmPrice(overrides?: CallOverrides): Promise<BigNumber>;
        getUserPairShare(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        implementation(overrides?: CallOverrides): Promise<BigNumber>;
        increaseTotalLp(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        isActive(overrides?: CallOverrides): Promise<BigNumber>;
        isLidoBLVaultActive(overrides?: CallOverrides): Promise<BigNumber>;
        kernel(overrides?: CallOverrides): Promise<BigNumber>;
        minWithdrawalDelay(overrides?: CallOverrides): Promise<BigNumber>;
        mintOhmToVault(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        ohm(overrides?: CallOverrides): Promise<BigNumber>;
        ohmEthPriceFeed(overrides?: CallOverrides): Promise<BigNumber>;
        ohmLimit(overrides?: CallOverrides): Promise<BigNumber>;
        pairToken(overrides?: CallOverrides): Promise<BigNumber>;
        requestPermissions(overrides?: CallOverrides): Promise<BigNumber>;
        setFee(newFee_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setLimit(newLimit_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setWithdrawalDelay(newDelay_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        stethUsdPriceFeed(overrides?: CallOverrides): Promise<BigNumber>;
        totalLp(overrides?: CallOverrides): Promise<BigNumber>;
        userVaults(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        vaultOwners(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    };
    populateTransaction: {
        BLREG(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        MAX_FEE(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        MINTR(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        ROLES(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        TRSRY(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        activate(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        aura(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        auraData(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        auraMiningLib(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        bal(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        balancerData(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        burnOhmFromVault(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        canWithdraw(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        changeKernel(newKernel_: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        changeUpdateThresholds(ohmEthUpdateThreshold_: PromiseOrValue<BigNumberish>, ethUsdUpdateThreshold_: PromiseOrValue<BigNumberish>, stethUsdUpdateThreshold_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        circulatingOhmBurned(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        configureDependencies(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        currentFee(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        deactivate(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        decreaseTotalLp(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        deployVault(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        deployedOhm(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        emergencyBurnOhm(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        ethUsdPriceFeed(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        exchangeName(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getExpectedLpAmount(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        getExpectedPairTokenOutUser(lpAmount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        getExpectedTokensOutProtocol(lpAmount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        getLpBalance(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getMaxDeposit(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getOhmSupplyChangeData(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getOhmTknPoolPrice(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getOhmTknPrice(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getOutstandingRewards(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getPoolOhmShare(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getRewardRate(rewardToken_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getRewardTokens(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getTknOhmPrice(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getUserPairShare(user_: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        implementation(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        increaseTotalLp(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        isActive(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        isLidoBLVaultActive(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        kernel(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        minWithdrawalDelay(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        mintOhmToVault(amount_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        ohm(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        ohmEthPriceFeed(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        ohmLimit(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        pairToken(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        requestPermissions(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        setFee(newFee_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setLimit(newLimit_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setWithdrawalDelay(newDelay_: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        stethUsdPriceFeed(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        totalLp(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        userVaults(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        vaultOwners(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
    };
}
