import LoadBalanceService from "./LoadBalanceService";
import { TierNacosClient } from '../baseNacos/TierNacosClient';
import { NacosInstance, LoadBalanceServiceOptions, AllowUndefined, NacosGrpcOptions } from '../interface';
export default class TierService extends LoadBalanceService {
    tierClientInstance: TierNacosClient;
    constructor(options: LoadBalanceServiceOptions);
    ready(): Promise<void>;
    buildConnectioPool(serviceName: string, packageName: NacosGrpcOptions['packageName'], protoPath: NacosGrpcOptions['protoPath']): Promise<void>;
    selectHealthyInstances(serviceName: string, group: AllowUndefined<string>): Promise<NacosInstance[]>;
    subscribe(serviceName: string, packageName: NacosGrpcOptions['packageName'], protoPath: NacosGrpcOptions['protoPath']): void;
    getTierInstances(serviceName: string, healthyInstances: NacosInstance[]): NacosInstance[];
    isTierService(serviceName: string): false | import("../interface").TierConfig;
}
