This repository has been archived on 2020-11-02. You can view files and clone it, but cannot push or open issues or pull requests.
2020-11-01 22:46:04 +00:00

44 lines
1.3 KiB
TypeScript

/// <reference types="node" />
import * as stream from 'stream';
export { EndOfStreamError } from './EndOfFileStream';
export declare class StreamReader {
private s;
/**
* Deferred read request
*/
private request;
private endOfStream;
/**
* Store peeked data
* @type {Array}
*/
private peekQueue;
constructor(s: stream.Readable);
/**
* Read ahead (peek) from stream. Subsequent read or peeks will return the same data
* @param buffer - Buffer to store data read from stream in
* @param offset - Offset buffer
* @param length - Number of bytes to read
* @returns Number of bytes peeked
*/
peek(buffer: Buffer | Uint8Array, offset: number, length: number): Promise<number>;
/**
* Read chunk from stream
* @param buffer - Target buffer to store data read from stream in
* @param offset - Offset of target buffer
* @param length - Number of bytes to read
* @returns Number of bytes read
*/
read(buffer: Buffer | Uint8Array, offset: number, length: number): Promise<number>;
/**
* Read chunk from stream
* @param buffer Buffer to store data read from stream in
* @param offset Offset buffer
* @param length Number of bytes to read
* @returns {any}
*/
private _read;
private tryRead;
private reject;
}