xud
Version:
Exchange Union Daemon
39 lines (38 loc) • 1.13 kB
TypeScript
/// <reference types="node" />
import { EventEmitter } from 'events';
import Framer from './Framer';
import Packet from './packets/Packet';
interface Parser {
on(event: 'packet', packet: (order: Packet) => void): this;
on(event: 'error', err: (order: {
message: string;
code: string;
}) => void): this;
emit(event: 'packet', packet: Packet): boolean;
emit(event: 'error', err: {
message: string;
code: string;
}): boolean;
}
/** Wire protocol msg parser */
declare class Parser extends EventEmitter {
private framer;
private msgHeaderLength;
private maxBufferSize;
private pending;
private waiting;
private waitingHeader;
private encryptionKey?;
private static readonly MAX_BUFFER_SIZE;
constructor(framer: Framer, msgHeaderLength?: number, maxBufferSize?: number);
setEncryptionKey: (key: Buffer) => void;
feed: (chunk: Buffer) => void;
private read;
private getTotalSize;
private resetBuffer;
private parseLength;
private parseMessage;
private parsePacket;
private error;
}
export default Parser;