import { _PdfX509Certificate } from './x509-certificate';
import { _PdfX509CertificateStructure } from './x509-certificate-structure';
/**
 * Parser utilities for reading X.509 certificates from ASN.1 encoded streams.
 *
 * @private
 */
export declare class _PdfX509CertificateParser {
    /**
     * Internal cached sequence data extracted during parsing.
     */
    private _sData;
    /**
     * Cursor index into `_sData` when iterating parsed objects.
     *
     */
    private _sDataObjectCount;
    /**
     * Currently processed input stream buffer.
     *
     */
    private _currentStream;
    /**
     * Read and distinguish between embedded PKCS#7 SignedData and direct certificates.
     *
     * @private
     * @param {Uint8Array} bytes - Input ASN.1 byte stream.
     * @param {boolean} isCertificateParsing - When true, parse as a leaf certificate.
     * @returns {_PdfX509Certificate} Parsed X.509 certificate instance.
     */
    _readDistinguishEncoderCertificate(bytes: Uint8Array, isCertificateParsing: boolean): _PdfX509Certificate;
    /**
     * Retrieve the next certificate from cached sequence data or construct from sequence.
     *
     * @private
     * @param {boolean} [isCertificateParsing] - Whether parsing mode affects extraction.
     * @returns {_PdfX509Certificate} Parsed X.509 certificate or null.
     */
    _getCertificate(isCertificateParsing?: boolean): _PdfX509Certificate;
    /**
     * Create an `_PdfX509Certificate` wrapper from a parsed certificate structure.
     *
     * @private
     * @param {_PdfX509CertificateStructure} structure - Parsed certificate structure.
     * @returns {_PdfX509Certificate} The constructed certificate object.
     */
    _createX509Certificate(structure: _PdfX509CertificateStructure): _PdfX509Certificate;
    /**
     * Read a certificate from the provided input bytes. Delegates to stream reader.
     *
     * @private
     * @param {Uint8Array} input - ASN.1 encoded input bytes.
     * @param {boolean} [isCertificateParsing=false] - When true, parse as certificate stream.
     * @returns {_PdfX509Certificate} The parsed certificate.
     */
    _readCertificate(input: Uint8Array, isCertificateParsing?: boolean): _PdfX509Certificate;
    /**
     * Read a certificate from a stream buffer, preserving internal parser state.
     *
     * @private
     * @param {Uint8Array} stream - The stream buffer containing ASN.1 data.
     * @param {boolean} isCertificateParsing - Whether parsing mode should extract certificate only.
     * @returns {_PdfX509Certificate} The parsed X.509 certificate instance.
     */
    _readCertificateFromStream(stream: Uint8Array, isCertificateParsing: boolean): _PdfX509Certificate;
}
