/// import Cipher from "../core/cipher"; import { AcceptSocket } from "./types"; import IOSocket from "./io.socket"; /** * net.socket 数据加密传输封装类, 简单封装,方便数据的传输与读取,加解密 */ export default class SecretSocket extends IOSocket { readonly socket: AcceptSocket; readonly cipher: Cipher | undefined; private readonly face; constructor(socket: AcceptSocket, params?: { cipher?: Cipher; face?: number; sessionId?: string; }); private init; protected onDataHandle(data: Buffer): Buffer; encode(chunk: Buffer | string): Buffer; decode(chunk: Buffer | string): Buffer; read(ttl?: number): Promise; /** * 往网络里写数据 * @param socket 网络连接socket * @param chunk 数据 * @param callback 写完之后回调,并告知写子多少内容, (chunkSize: number)=>{} */ write(chunk: Buffer | string): boolean; end(chunk?: Buffer | string): void; /** * 克隆, 克隆后将清除原来对象的数据 * @param params * @returns */ clone(params?: { cipher: Cipher; face: number; }): SecretSocket; }