import { BigNumberish } from 'ethers';
import { IAppToolkit } from '../../../app-toolkit/app-toolkit.interface';
import { UniswapPair, UniswapV2ContractFactory } from '../contracts';
import { UniswapV2PoolSubgraphTemplateTokenFetcher } from './uniswap-v2.pool.subgraph.template.token-fetcher';
export declare abstract class UniswapV2DefaultPoolSubgraphTemplateTokenFetcher extends UniswapV2PoolSubgraphTemplateTokenFetcher<UniswapPair> {
    protected readonly appToolkit: IAppToolkit;
    protected readonly contractFactory: UniswapV2ContractFactory;
    constructor(appToolkit: IAppToolkit, contractFactory: UniswapV2ContractFactory);
    getPoolTokenContract(address: string): UniswapPair;
    getPoolToken0(contract: UniswapPair): Promise<string>;
    getPoolToken1(contract: UniswapPair): Promise<string>;
    getPoolReserves(contract: UniswapPair): Promise<BigNumberish[]>;
}
