@syncfusion/ej2-pdf
Version:
Feature-rich JavaScript PDF library with built-in support for loading and manipulating PDF document.
117 lines (116 loc) • 3.96 kB
TypeScript
import { _PdfCipherParameter } from '../x509/x509-cipher-handler';
/**
* Defines the internal block-cipher contract for RSA-like engines with block sizing and processing.
*
* @private
*/
export interface _ICipherBlock {
/**
* Gets the internal algorithm name for this cipher implementation.
*
* @private
* @returns {string} The algorithm name.
*/
_getAlgorithmName(): string;
/**
* Gets the maximum input block size in bytes supported by the cipher in the current mode.
*
* @private
* @returns {number} The input block size in bytes.
*/
_getInputBlock(): number;
/**
* Gets the maximum output block size in bytes produced by the cipher in the current mode.
*
* @private
* @returns {number} The output block size in bytes.
*/
_getOutputBlock(): number;
/**
* Initializes the cipher for encryption or decryption with the provided parameters.
*
* @private
* @param {boolean} isEncryption Specifies whether to initialize for encryption (true) or decryption (false).
* @param {_PdfCipherParameter} parameter The cipher parameters or key material.
* @returns {void} This method does not return a value.
*/
_initialize(isEncryption: boolean, parameter: _PdfCipherParameter): void;
/**
* Processes a block of data using the configured cipher operation.
*
* @private
* @param {Uint8Array} bytes The input buffer containing data.
* @param {number} offset The starting index of the block within the buffer.
* @param {number} length The number of bytes to process.
* @returns {Uint8Array} The processed output block.
*/
_processBlock(bytes: Uint8Array, offset: number, length: number): Uint8Array;
}
/**
* Defines the internal parameter contract for cipher configurations and key material.
*
* @private
*/
export interface _ICipherParam {
/**
* Determines whether this parameter is equal to another.
*
* @private
* @param {any} other The other parameter instance to compare. // eslint-disable-line
* @returns {boolean} True if the parameters are equal; otherwise, false.
*/
_equals(other: any): boolean;
/**
* Gets a hash code representing the parameter instance.
*
* @private
* @returns {number} The computed hash code.
*/
_getHashCode(): number;
}
/**
* Defines the internal signer contract for generating signatures over streamed data.
*
* @private
*/
export interface _ISigner {
/**
* Gets the canonical algorithm name for the signer (e.g., "SHA-256").
*
* @private
*/
readonly _algorithmName: string;
/**
* Initializes the signer for signature generation or verification.
*
* @private
* @param {boolean} forSigning Specifies whether to prepare for signing (true) or verification (false).
* @param {_ICipherParam} parameters The key parameters used by the signer.
* @returns {void} This method does not return a value.
*/
_initialize(forSigning: boolean, parameters: _ICipherParam): void;
/**
* Feeds a segment of bytes into the ongoing signature digest computation.
*
* @private
* @param {Uint8Array} bytes The input buffer to read from.
* @param {number} offset The starting index within the buffer.
* @param {number} length The number of bytes to process.
* @returns {void} This method does not return a value.
*/
_blockUpdate(bytes: Uint8Array, offset: number, length: number): void;
/**
* Finalizes the computation and returns the generated signature bytes.
*
* @private
* @returns {Uint8Array} The computed signature.
*/
_generateSignature(): Uint8Array | null;
/**
* Resets the signer state and internal buffers.
*
* @private
* @returns {void} This method does not return a value.
*/
_reset(): void;
}