/** @format */
import { Eureka, EurekaClient } from 'eureka-js-client';
interface IEureka {
    port: number;
    appName: string;
    services: string[];
    registerWithEureka?: boolean;
}
export default class Eurekaclient {
    private eureka;
    private opts;
    private pool;
    constructor(options: IEureka);
    /**
     * 启动eureka
     * @returns Promise<Eureka>
     */
    start(): Promise<Eureka>;
    /**
     * stop
     */
    stop(): void;
    /**
     * 获取指定应用的ip
     * @param {(string | number)} name 应用名
     * @param {(string)} localIp 客户端IP
     * @param {string} [filterGroup] 要过滤的group service
     */
    getHost(name: string | number, localIp: string, filterGroup?: string): string;
    /** 获取代理信息(客户端IP, serviceGroupKey) */
    getProxyInfoFromReq(req: any): {
        ip: any;
        serviceGroupKey: string;
    };
    /**
     * 获取所有eureka
     */
    getAllEurekas(): EurekaClient.EurekaInstanceConfig[];
    /**
     * 获取所有实例下的host
     */
    getAllHostName(): import("./pool").IEurekaObjs;
}
export {};
//# sourceMappingURL=index.d.ts.map