import { ASN1Element as _Element, OPTIONAL } from "asn1-ts";
import * as $ from "asn1-ts/dist/node/functional";
import { Attributes } from "../PKCS7/Attributes.ta";
import { DigestAlgorithmIdentifier } from "../PKCS7/DigestAlgorithmIdentifier.ta";
import { DigestEncryptionAlgorithmIdentifier } from "../PKCS7/DigestEncryptionAlgorithmIdentifier.ta";
import { EncryptedDigest } from "../PKCS7/EncryptedDigest.ta";
import { SignerIdentifier } from "../PKCS7/SignerIdentifier.ta";
import { Version } from "../PKCS7/Version.ta";
export { Attributes, _decode_Attributes, _encode_Attributes, } from "../PKCS7/Attributes.ta";
export { DigestAlgorithmIdentifier, _decode_DigestAlgorithmIdentifier, _encode_DigestAlgorithmIdentifier, } from "../PKCS7/DigestAlgorithmIdentifier.ta";
export { DigestEncryptionAlgorithmIdentifier, _decode_DigestEncryptionAlgorithmIdentifier, _encode_DigestEncryptionAlgorithmIdentifier, } from "../PKCS7/DigestEncryptionAlgorithmIdentifier.ta";
export { EncryptedDigest, _decode_EncryptedDigest, _encode_EncryptedDigest, } from "../PKCS7/EncryptedDigest.ta";
export { SignerIdentifier, _decode_SignerIdentifier, _encode_SignerIdentifier, } from "../PKCS7/SignerIdentifier.ta";
export { Version, _decode_Version, _encode_Version } from "../PKCS7/Version.ta";
export declare class SignerInfo {
    readonly version: Version;
    readonly signerIdentifier: SignerIdentifier;
    readonly digestAlgorithm: DigestAlgorithmIdentifier;
    readonly authenticatedAttributes: OPTIONAL<Attributes>;
    readonly digestEncryptionAlgorithm: DigestEncryptionAlgorithmIdentifier;
    readonly encryptedDigest: EncryptedDigest;
    readonly unauthenticatedAttributes: OPTIONAL<Attributes>;
    constructor(version: Version, signerIdentifier: SignerIdentifier, digestAlgorithm: DigestAlgorithmIdentifier, authenticatedAttributes: OPTIONAL<Attributes>, digestEncryptionAlgorithm: DigestEncryptionAlgorithmIdentifier, encryptedDigest: EncryptedDigest, unauthenticatedAttributes: OPTIONAL<Attributes>);
    static _from_object(_o: {
        [_K in keyof SignerInfo]: SignerInfo[_K];
    }): SignerInfo;
}
export declare const _root_component_type_list_1_spec_for_SignerInfo: $.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_SignerInfo: $.ComponentSpec[];
export declare const _extension_additions_list_spec_for_SignerInfo: $.ComponentSpec[];
export declare function _decode_SignerInfo(el: _Element): SignerInfo;
export declare function _encode_SignerInfo(value: SignerInfo, elGetter: $.ASN1Encoder<SignerInfo>): _Element;
//# sourceMappingURL=SignerInfo.ta.d.ts.map