import { ASN1Element as _Element, OPTIONAL } from "asn1-ts";
import * as $ from "asn1-ts/dist/node/functional";
import { CMSVersion } from "../CryptographicMessageSyntax/CMSVersion.ta";
import { DigestAlgorithmIdentifier } from "../CryptographicMessageSyntax/DigestAlgorithmIdentifier.ta";
import { SignatureAlgorithmIdentifier } from "../CryptographicMessageSyntax/SignatureAlgorithmIdentifier.ta";
import { SignatureValue } from "../CryptographicMessageSyntax/SignatureValue.ta";
import { SignedAttributes } from "../CryptographicMessageSyntax/SignedAttributes.ta";
import { SignerIdentifier } from "../CryptographicMessageSyntax/SignerIdentifier.ta";
import { UnsignedAttributes } from "../CryptographicMessageSyntax/UnsignedAttributes.ta";
export { CMSVersion, CMSVersion_v0, CMSVersion_v1, CMSVersion_v2, CMSVersion_v3, CMSVersion_v4, v0, v1, v2, v3, v4, _decode_CMSVersion, _encode_CMSVersion, } from "../CryptographicMessageSyntax/CMSVersion.ta";
export { DigestAlgorithmIdentifier, _decode_DigestAlgorithmIdentifier, _encode_DigestAlgorithmIdentifier, } from "../CryptographicMessageSyntax/DigestAlgorithmIdentifier.ta";
export { SignatureAlgorithmIdentifier, _decode_SignatureAlgorithmIdentifier, _encode_SignatureAlgorithmIdentifier, } from "../CryptographicMessageSyntax/SignatureAlgorithmIdentifier.ta";
export { SignatureValue, _decode_SignatureValue, _encode_SignatureValue, } from "../CryptographicMessageSyntax/SignatureValue.ta";
export { SignedAttributes, _decode_SignedAttributes, _encode_SignedAttributes, } from "../CryptographicMessageSyntax/SignedAttributes.ta";
export { SignerIdentifier, _decode_SignerIdentifier, _encode_SignerIdentifier, } from "../CryptographicMessageSyntax/SignerIdentifier.ta";
export { UnsignedAttributes, _decode_UnsignedAttributes, _encode_UnsignedAttributes, } from "../CryptographicMessageSyntax/UnsignedAttributes.ta";
export declare class SignerInfo {
    readonly version: CMSVersion;
    readonly sid: SignerIdentifier;
    readonly digestAlgorithm: DigestAlgorithmIdentifier;
    readonly signedAttrs: OPTIONAL<SignedAttributes>;
    readonly signatureAlgorithm: SignatureAlgorithmIdentifier;
    readonly signature: SignatureValue;
    readonly unsignedAttrs: OPTIONAL<UnsignedAttributes>;
    constructor(version: CMSVersion, sid: SignerIdentifier, digestAlgorithm: DigestAlgorithmIdentifier, signedAttrs: OPTIONAL<SignedAttributes>, signatureAlgorithm: SignatureAlgorithmIdentifier, signature: SignatureValue, unsignedAttrs: OPTIONAL<UnsignedAttributes>);
    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