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 IlluviumContractFactory extends ContractFactory {
    protected readonly appToolkit: IAppToolkit;
    constructor(appToolkit: IAppToolkit);
    illuviumCorePool({ address, network }: ContractOpts): import("./ethers").IlluviumCorePool;
    illuviumIlvPoolV2({ address, network }: ContractOpts): import("./ethers").IlluviumIlvPoolV2;
    illuviumSIlv2({ address, network }: ContractOpts): import("./ethers").IlluviumSIlv2;
    illuviumSushiLpPoolV2({ address, network }: ContractOpts): import("./ethers").IlluviumSushiLpPoolV2;
}
export type { IlluviumCorePool } from './ethers';
export type { IlluviumIlvPoolV2 } from './ethers';
export type { IlluviumSIlv2 } from './ethers';
export type { IlluviumSushiLpPoolV2 } from './ethers';
