import { CurveStableFactory } from '../contracts';
import { CurvePoolGaugeContractPositionFetcher, ResolveGaugeAddressParams, ResolvePoolCountParams, ResolveSwapAddressParams, ResolveTokenAddressParams } from './curve.pool-gauge.contract-position-fetcher';
export declare abstract class CurveFactoryStablePoolGaugeContractPositionFetcher extends CurvePoolGaugeContractPositionFetcher<CurveStableFactory> {
    resolveRegistry(address: string): CurveStableFactory;
    resolvePoolCount({ contract }: ResolvePoolCountParams<CurveStableFactory>): Promise<import("ethers").BigNumber>;
    resolveSwapAddress({ contract, poolIndex }: ResolveSwapAddressParams<CurveStableFactory>): Promise<string>;
    resolveTokenAddress({ swapAddress }: ResolveTokenAddressParams<CurveStableFactory>): Promise<string>;
    resolveGaugeAddresses({ contract, swapAddress }: ResolveGaugeAddressParams<CurveStableFactory>): Promise<string[]>;
}
