@syncfusion/ej2-pdf
Version:
Feature-rich JavaScript PDF library with built-in support for loading and manipulating PDF document.
72 lines (71 loc) • 2.25 kB
TypeScript
import { _InBuffer } from './in-buffer';
/**
* Provides a circular output buffer for decompressed data with efficient write and copy helpers.
*
* @private
*/
export declare class _DecompressedOutput {
constructor();
/**
* Size of the circular output buffer.
*
* @private
*/
static _dOutSize: number;
/**
* Bit mask used to wrap output buffer indices.
*
* @private
*/
static _dOutMask: number;
_dOutput: number[];
_end: number;
_usedBytes: number;
/**
* Returns the remaining free capacity in the output ring buffer.
*
* @private
* @returns {number} unusedBytes.
*/
readonly _unusedBytes: number;
/**
* Writes a single byte into the ring buffer and advances the write position.
*
* @private
* @param {number} b Byte to write.
* @returns {void} nothing.
*/
_write(b: number): void;
/**
* Copies a back reference of the given length and distance from previously written output.
*
* @private
* @param {number} length Number of bytes to copy.
* @param {number} distance Distance back from current position.
* @returns {void} nothing.
*/
_writeLD(length: number, distance: number): void;
/**
* Copies up to the requested byte count from the input buffer into the ring buffer with wrap handling.
*
* @private
* @param {_InBuffer} input Input bit buffer.
* @param {number} length Maximum number of bytes to copy.
* @returns {number} copied Number of bytes copied.
*/
_copyFrom(input: _InBuffer, length: number): number;
/**
* Copies up to the requested number of bytes from the ring buffer into the provided output array
* and decreases the used byte count.
*
* @private
* @param {number[]} output Target output array.
* @param {number} offset Offset in the target array where copying begins.
* @param {number} length Requested number of bytes to copy.
* @returns {{count: number, data: number[]}} result Object containing copied count and output array.
*/
_copyTo(output: number[], offset: number, length: number): {
count: number;
data: number[];
};
}