/// import { EventEmitter } from "events"; import { RoleType } from "./proto"; export declare class MasterSlaver extends EventEmitter { get isMaster(): boolean; get masterId(): string; get roleId(): string; ready: boolean; private _group; constructor(host: string, port: number); private _initInfo; init(roleId: string, groupId: string, score: number, info: any): Promise; private joinGroup; close(): void; controlMsg(cmd: number, info: { [key: string]: any; }, requestId?: string): boolean; answerMsg(roleId: string, cmd: number, info: { code: number; info?: any; errMsg?: string; }, requestId?: string): boolean; requestMsg(roleId: string, cmd: number, info: { [key: string]: any; }, requestId?: string): boolean; /** * 通知所有人内容 主要是平级间的,不分主次的命令才可以 * @param cmd * @param info */ normalBroadcast(cmd: number, info: { [key: string]: any; }, toSelf?: boolean): boolean; private onData; private onConnection; private onClose; private onReady; private roletype; on(event: 'request', listener: (cmd: number, info: { [key: string]: any; }, role: string, requestId: string) => void): this; on(event: 'answer' | symbol, listener: (cmd: number, info: { [key: string]: any; }, role: string, requestId: string) => void): this; on(event: 'control', listener: (cmd: number, info: { [key: string]: any; }, role: string) => void, requestId?: string): this; on(event: 'roletype', listener: (isMaster: boolean, type: RoleType) => void): this; once(event: 'request', listener: (cmd: number, info: { [key: string]: any; }, role: string, requestId: string) => void): this; once(event: 'answer' | symbol, listener: (cmd: number, info: { [key: string]: any; }, role: string, requestId: string) => void): this; once(event: 'control', listener: (cmd: number, info: { [key: string]: any; }, role: string) => void, requestId?: string): this; once(event: 'roletype', listener: (isMaster: boolean, type: RoleType) => void): this; off(event: string | symbol, listener: (...args: any[]) => void): this; }