/// import EventEmitter from "eventemitter3"; import ISocket from "./isocket"; import { SocketType, StreamEvent } from "./types"; import { WebSocket } from "../adapter"; /** * 封装最终对外使用的简易类 */ export default class WSocket extends EventEmitter implements ISocket { readonly socket: WebSocket; readonly headers: { [key: string]: any; }; private readonly _id; type: SocketType; private _sessionId; private urlInfo; private _destroyed; private pidConnectTimeout; get id(): string; get sessionId(): string; get writable(): boolean; get readable(): boolean; get remoteAddress(): string; get remotePort(): number; get localAddress(): string; get localPort(): number; get destroyed(): boolean; get isOpen(): boolean; get readyState(): "open" | "opening" | "closed"; isPaused(): boolean; get readableLength(): number; get writableLength(): number; constructor(socket: WebSocket, headers: { [key: string]: any; }); private readonly events; private initEvent; read(ttl?: number): Promise; write(chunk: string | Buffer): boolean; end(chunk?: string | Buffer): void; pipe(socket: ISocket): ISocket; pause(): void; resume(): void; destroy(err?: Error | undefined): void; close(err?: Error): void; private clear; setKeepAlive(enable: boolean, initialDelay: number): void; }