/// <reference types="lodash" />
import { PositionBalanceFetcherRegistry } from '../position/position-balance-fetcher.registry';
import { PositionFetcherRegistry } from '../position/position-fetcher.registry';
import { PositionFetcherTemplateRegistry } from '../position/position-fetcher.template-registry';
import { BalanceFetcherRegistry } from './balance-fetcher.registry';
import { BalancePresentationService } from './balance-presentation.service';
import { DefaultContractPositionBalanceFetcherFactory } from './default.contract-position-balance-fetcher.factory';
import { DefaultTokenBalanceFetcherFactory } from './default.token-balance-fetcher.factory';
import { GetBalancesParams } from './dto/get-balances-params.dto';
import { GetBalancesQuery } from './dto/get-balances-query.dto';
export declare class BalanceService {
    private readonly balanceFetcherRegistry;
    private readonly positionFetcherRegistry;
    private readonly positionFetcherBalanceFetcherRegistry;
    private readonly defaultTokenBalanceFetcherFactory;
    private readonly positionFetcherTemplateRegistry;
    private readonly defaultContractPositionBalanceFetcherFactory;
    private readonly balancePresentationService;
    private logger;
    constructor(balanceFetcherRegistry: BalanceFetcherRegistry, positionFetcherRegistry: PositionFetcherRegistry, positionFetcherBalanceFetcherRegistry: PositionBalanceFetcherRegistry, defaultTokenBalanceFetcherFactory: DefaultTokenBalanceFetcherFactory, positionFetcherTemplateRegistry: PositionFetcherTemplateRegistry, defaultContractPositionBalanceFetcherFactory: DefaultContractPositionBalanceFetcherFactory, balancePresentationService: BalancePresentationService);
    private getBalancesLegacyStrategy;
    private getBalancesTemplateStrategy;
    private getBalancesGeneralizedStrategy;
    getBalances({ appId, addresses, network }: GetBalancesQuery & GetBalancesParams): Promise<import("lodash").Dictionary<any>>;
}
