import { IAppToolkit } from '../../../app-toolkit/app-toolkit.interface';
import { ContractFactory } from '../../../contract/contracts';
import { Network } from '../../../types/network.interface';
declare type ContractOpts = {
    address: string;
    network: Network;
};
export declare class AaveV2ContractFactory extends ContractFactory {
    protected readonly appToolkit: IAppToolkit;
    constructor(appToolkit: IAppToolkit);
    aaveProtocolDataProvider({ address, network }: ContractOpts): import("./ethers").AaveProtocolDataProvider;
    aaveStakedTokenIncentivesController({ address, network }: ContractOpts): import("./ethers").AaveStakedTokenIncentivesController;
    aaveV2AToken({ address, network }: ContractOpts): import("./ethers").AaveV2AToken;
    aaveV2LendingPoolProvider({ address, network }: ContractOpts): import("./ethers").AaveV2LendingPoolProvider;
}
export type { AaveProtocolDataProvider } from './ethers';
export type { AaveStakedTokenIncentivesController } from './ethers';
export type { AaveV2AToken } from './ethers';
export type { AaveV2LendingPoolProvider } from './ethers';
