import { ConsoleService, EModuleAction, IModule, IRegisterMsg, IServerInfo } from 'sdg-admin';
import { Application } from '../index';
import * as Constants from '../util/constants';
export declare class MasterWatcher implements IModule {
    app: Application;
    service: ConsoleService;
    type: EModuleAction;
    servers: IServerInfo[];
    static moduleId: Constants.KEYWORDS;
    constructor(opts: {
        app: Application;
    }, consoleService: ConsoleService);
    /**
     * monitorWatcher拉取在线服务器列表
     */
    masterHandler(): Promise<import("..").IServer>;
    /**
     * 新服务器上线
     * @param serverInfo
     */
    onServerAdd(serverInfo: IRegisterMsg): Promise<void>;
    /**
     * 服务器下线
     * @param serverInfo
     */
    onServerLeave(serverInfo: IRegisterMsg): Promise<void>;
}
