///
import { EventEmitter } from 'events';
export declare type GrpcGatewayEvent = 'contact-list' | 'new-friend' | 'scan' | 'login' | 'message' | 'logout' | 'not-login' | 'room-member' | 'room-create' | 'already-login' | 'room-join' | 'room-qrcode' | 'reconnect';
export declare class GrpcGateway extends EventEmitter {
private token;
private endpoint;
private client;
constructor(token: string, endpoint: string);
request(apiName: string, data?: any): Promise;
private _request;
emit(event: 'not-login', data: string): boolean;
emit(event: 'contact-list', data: string): boolean;
emit(event: 'new-friend', data: string): boolean;
emit(event: 'room-member', data: string): boolean;
emit(event: 'room-create', data: string): boolean;
emit(event: 'room-join', data: string): boolean;
emit(event: 'room-qrcode', data: string): boolean;
emit(event: 'scan', data: string): boolean;
emit(event: 'login', data: string): boolean;
emit(event: 'already-login', data: string): boolean;
emit(event: 'message', data: string): boolean;
emit(event: 'logout', data: string): boolean;
emit(event: 'reconnect'): boolean;
emit(event: never, data: string): never;
on(event: 'not-login', listener: ((data: string) => any)): this;
on(event: 'contact-list', listener: ((data: string) => any)): this;
on(event: 'new-friend', listener: ((data: string) => any)): this;
on(event: 'room-member', listener: ((data: string) => any)): this;
on(event: 'room-create', listener: ((data: string) => any)): this;
on(event: 'room-join', listener: ((data: string) => any)): this;
on(event: 'room-qrcode', listener: ((data: string) => any)): this;
on(event: 'scan', listener: ((data: string) => any)): this;
on(event: 'login', listener: ((data: string) => any)): this;
on(event: 'already-login', listener: ((data: string) => any)): this;
on(event: 'message', listener: ((data: string) => any)): this;
on(event: 'logout', listener: ((data: string) => any)): this;
on(event: 'reconnect', listener: (() => any)): this;
on(event: never, listener: ((data: string) => any)): never;
notify(apiName: string, data: any): Promise;
}
//# sourceMappingURL=grpc-api.d.ts.map