import * as asn1 from "asn1-ts";
import { ContentInfo } from "cms-ts/dist/node/CryptographicMessageSyntax-2010";
import { OCSPResponse } from "ocsp-ts/dist/node/OCSP-2013-08";
import { AttributeCertificate } from "x500-ts/dist/node/AttributeCertificateDefinitions";
import { AlgorithmIdentifier, Certificate, CertificateList, CertificateSerialNumber, Extensions } from "x500-ts/dist/node/AuthenticationFramework";
import { GeneralName, GeneralNames, KeyPurposeId, KeyUsage } from "x500-ts/dist/node/CertificateExtensions";
import * as __utils from "./__utils";
export declare const id_ct: asn1.OBJECT_IDENTIFIER;
export declare const id_ct_scvp_certValRequest: asn1.OBJECT_IDENTIFIER;
export declare class NameValidationAlgParams {
    readonly nameCompAlgId: asn1.OBJECT_IDENTIFIER;
    readonly validationNames: GeneralNames;
    constructor(nameCompAlgId: asn1.OBJECT_IDENTIFIER, validationNames: GeneralNames);
}
export declare const _root_component_type_list_1_spec_for_NameValidationAlgParams: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_NameValidationAlgParams: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_NameValidationAlgParams: __utils.ComponentSpec[];
export declare function _decode_NameValidationAlgParams(el: asn1.ASN1Element): NameValidationAlgParams;
export declare function _encode_NameValidationAlgParams(value: NameValidationAlgParams, elGetter: __utils.ASN1Encoder<NameValidationAlgParams>): asn1.ASN1Element;
export declare const id_ct_scvp_certValResponse: asn1.OBJECT_IDENTIFIER;
export declare type CVStatusCode = asn1.ENUMERATED;
export declare const CVStatusCode_okay: CVStatusCode;
export declare const CVStatusCode_skipUnrecognizedItems: CVStatusCode;
export declare const CVStatusCode_tooBusy: CVStatusCode;
export declare const CVStatusCode_invalidRequest: CVStatusCode;
export declare const CVStatusCode_internalError: CVStatusCode;
export declare const CVStatusCode_badStructure: CVStatusCode;
export declare const CVStatusCode_unsupportedVersion: CVStatusCode;
export declare const CVStatusCode_abortUnrecognizedItems: CVStatusCode;
export declare const CVStatusCode_unrecognizedSigKey: CVStatusCode;
export declare const CVStatusCode_badSignatureOrMAC: CVStatusCode;
export declare const CVStatusCode_unableToDecode: CVStatusCode;
export declare const CVStatusCode_notAuthorized: CVStatusCode;
export declare const CVStatusCode_unsupportedChecks: CVStatusCode;
export declare const CVStatusCode_unsupportedWantBacks: CVStatusCode;
export declare const CVStatusCode_unsupportedSignatureOrMAC: CVStatusCode;
export declare const CVStatusCode_invalidSignatureOrMAC: CVStatusCode;
export declare const CVStatusCode_protectedResponseUnsupported: CVStatusCode;
export declare const CVStatusCode_unrecognizedResponderName: CVStatusCode;
export declare const CVStatusCode_relayingLoop: CVStatusCode;
export declare const CVStatusCode_unrecognizedValPol: CVStatusCode;
export declare const CVStatusCode_unrecognizedValAlg: CVStatusCode;
export declare const CVStatusCode_fullRequestInResponseUnsupported: CVStatusCode;
export declare const CVStatusCode_fullPolResponseUnsupported: CVStatusCode;
export declare const CVStatusCode_inhibitPolicyMappingUnsupported: CVStatusCode;
export declare const CVStatusCode_requireExplicitPolicyUnsupported: CVStatusCode;
export declare const CVStatusCode_inhibitAnyPolicyUnsupported: CVStatusCode;
export declare const CVStatusCode_validationTimeUnsupported: CVStatusCode;
export declare const CVStatusCode_unrecognizedCritQueryExt: CVStatusCode;
export declare const CVStatusCode_unrecognizedCritRequestExt: CVStatusCode;
export declare function _decode_CVStatusCode(el: asn1.ASN1Element): number;
export declare function _encode_CVStatusCode(value: CVStatusCode, elGetter: __utils.ASN1Encoder<CVStatusCode>): asn1.ASN1Element;
export declare class ResponseStatus {
    readonly statusCode: asn1.OPTIONAL<CVStatusCode>;
    readonly errorMessage: asn1.OPTIONAL<asn1.UTF8String>;
    constructor(statusCode: asn1.OPTIONAL<CVStatusCode>, errorMessage: asn1.OPTIONAL<asn1.UTF8String>);
    static get _default_value_for_statusCode(): number;
}
export declare const _root_component_type_list_1_spec_for_ResponseStatus: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_ResponseStatus: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_ResponseStatus: __utils.ComponentSpec[];
export declare function _decode_ResponseStatus(el: asn1.ASN1Element): ResponseStatus;
export declare function _encode_ResponseStatus(value: ResponseStatus, elGetter: __utils.ASN1Encoder<ResponseStatus>): asn1.ASN1Element;
export declare class ValidationPolRef {
    readonly valPolId: asn1.OBJECT_IDENTIFIER;
    readonly valPolParams: asn1.OPTIONAL<asn1.ASN1Element>;
    constructor(valPolId: asn1.OBJECT_IDENTIFIER, valPolParams: asn1.OPTIONAL<asn1.ASN1Element>);
}
export declare const _root_component_type_list_1_spec_for_ValidationPolRef: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_ValidationPolRef: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_ValidationPolRef: __utils.ComponentSpec[];
export declare function _decode_ValidationPolRef(el: asn1.ASN1Element): ValidationPolRef;
export declare function _encode_ValidationPolRef(value: ValidationPolRef, elGetter: __utils.ASN1Encoder<ValidationPolRef>): asn1.ASN1Element;
export declare class ValidationAlg {
    readonly valAlgId: asn1.OBJECT_IDENTIFIER;
    readonly parameters: asn1.OPTIONAL<asn1.ASN1Element>;
    constructor(valAlgId: asn1.OBJECT_IDENTIFIER, parameters: asn1.OPTIONAL<asn1.ASN1Element>);
}
export declare const _root_component_type_list_1_spec_for_ValidationAlg: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_ValidationAlg: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_ValidationAlg: __utils.ComponentSpec[];
export declare function _decode_ValidationAlg(el: asn1.ASN1Element): ValidationAlg;
export declare function _encode_ValidationAlg(value: ValidationAlg, elGetter: __utils.ASN1Encoder<ValidationAlg>): asn1.ASN1Element;
export declare class SCVPIssuerSerial {
    readonly issuer: GeneralNames;
    readonly serialNumber: CertificateSerialNumber;
    constructor(issuer: GeneralNames, serialNumber: CertificateSerialNumber);
}
export declare const _root_component_type_list_1_spec_for_SCVPIssuerSerial: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_SCVPIssuerSerial: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_SCVPIssuerSerial: __utils.ComponentSpec[];
export declare function _decode_SCVPIssuerSerial(el: asn1.ASN1Element): SCVPIssuerSerial;
export declare function _encode_SCVPIssuerSerial(value: SCVPIssuerSerial, elGetter: __utils.ASN1Encoder<SCVPIssuerSerial>): asn1.ASN1Element;
export declare type HashAlgorithm = AlgorithmIdentifier;
export declare function _decode_HashAlgorithm(el: asn1.ASN1Element): AlgorithmIdentifier;
export declare function _encode_HashAlgorithm(value: HashAlgorithm, elGetter: __utils.ASN1Encoder<HashAlgorithm>): asn1.ASN1Element;
export declare class SCVPCertID {
    readonly certHash: asn1.OCTET_STRING;
    readonly issuerSerial: SCVPIssuerSerial;
    readonly hashAlgorithm: asn1.OPTIONAL<HashAlgorithm>;
    constructor(certHash: asn1.OCTET_STRING, issuerSerial: SCVPIssuerSerial, hashAlgorithm: asn1.OPTIONAL<HashAlgorithm>);
    static get _default_value_for_hashAlgorithm(): AlgorithmIdentifier;
}
export declare const _root_component_type_list_1_spec_for_SCVPCertID: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_SCVPCertID: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_SCVPCertID: __utils.ComponentSpec[];
export declare function _decode_SCVPCertID(el: asn1.ASN1Element): SCVPCertID;
export declare function _encode_SCVPCertID(value: SCVPCertID, elGetter: __utils.ASN1Encoder<SCVPCertID>): asn1.ASN1Element;
export declare type PKCReference = {
    cert: Certificate;
} | {
    pkcRef: SCVPCertID;
};
export declare function _decode_PKCReference(el: asn1.ASN1Element): PKCReference;
export declare function _encode_PKCReference(value: PKCReference, elGetter: __utils.ASN1Encoder<PKCReference>): asn1.ASN1Element;
export declare type TrustAnchors = PKCReference[];
export declare function _decode_TrustAnchors(el: asn1.ASN1Element): TrustAnchors;
export declare function _encode_TrustAnchors(value: TrustAnchors, elGetter: __utils.ASN1Encoder<TrustAnchors>): asn1.ASN1Element;
export declare class ValidationPolicy {
    readonly validationPolRef: ValidationPolRef;
    readonly validationAlg: asn1.OPTIONAL<ValidationAlg>;
    readonly userPolicySet: asn1.OPTIONAL<asn1.OBJECT_IDENTIFIER[]>;
    readonly inhibitPolicyMapping: asn1.OPTIONAL<asn1.BOOLEAN>;
    readonly requireExplicitPolicy: asn1.OPTIONAL<asn1.BOOLEAN>;
    readonly inhibitAnyPolicy: asn1.OPTIONAL<asn1.BOOLEAN>;
    readonly trustAnchors: asn1.OPTIONAL<TrustAnchors>;
    readonly keyUsages: asn1.OPTIONAL<KeyUsage[]>;
    readonly extendedKeyUsages: asn1.OPTIONAL<KeyPurposeId[]>;
    readonly specifiedKeyUsages: asn1.OPTIONAL<KeyPurposeId[]>;
    constructor(validationPolRef: ValidationPolRef, validationAlg: asn1.OPTIONAL<ValidationAlg>, userPolicySet: asn1.OPTIONAL<asn1.OBJECT_IDENTIFIER[]>, inhibitPolicyMapping: asn1.OPTIONAL<asn1.BOOLEAN>, requireExplicitPolicy: asn1.OPTIONAL<asn1.BOOLEAN>, inhibitAnyPolicy: asn1.OPTIONAL<asn1.BOOLEAN>, trustAnchors: asn1.OPTIONAL<TrustAnchors>, keyUsages: asn1.OPTIONAL<KeyUsage[]>, extendedKeyUsages: asn1.OPTIONAL<KeyPurposeId[]>, specifiedKeyUsages: asn1.OPTIONAL<KeyPurposeId[]>);
}
export declare const _root_component_type_list_1_spec_for_ValidationPolicy: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_ValidationPolicy: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_ValidationPolicy: __utils.ComponentSpec[];
export declare function _decode_ValidationPolicy(el: asn1.ASN1Element): ValidationPolicy;
export declare function _encode_ValidationPolicy(value: ValidationPolicy, elGetter: __utils.ASN1Encoder<ValidationPolicy>): asn1.ASN1Element;
export declare type RespValidationPolicy = ValidationPolicy;
export declare function _decode_RespValidationPolicy(el: asn1.ASN1Element): ValidationPolicy;
export declare function _encode_RespValidationPolicy(value: RespValidationPolicy, elGetter: __utils.ASN1Encoder<RespValidationPolicy>): asn1.ASN1Element;
export declare class HashValue {
    readonly algorithm: asn1.OPTIONAL<HashAlgorithm>;
    readonly value: asn1.OCTET_STRING;
    constructor(algorithm: asn1.OPTIONAL<HashAlgorithm>, value: asn1.OCTET_STRING);
    static get _default_value_for_algorithm(): AlgorithmIdentifier;
}
export declare const _root_component_type_list_1_spec_for_HashValue: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_HashValue: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_HashValue: __utils.ComponentSpec[];
export declare function _decode_HashValue(el: asn1.ASN1Element): HashValue;
export declare function _encode_HashValue(value: HashValue, elGetter: __utils.ASN1Encoder<HashValue>): asn1.ASN1Element;
export declare type ACReference = {
    attrCert: AttributeCertificate;
} | {
    acRef: SCVPCertID;
};
export declare function _decode_ACReference(el: asn1.ASN1Element): ACReference;
export declare function _encode_ACReference(value: ACReference, elGetter: __utils.ASN1Encoder<ACReference>): asn1.ASN1Element;
export declare type CertReferences = {
    pkcRefs: PKCReference[];
} | {
    acRefs: ACReference[];
};
export declare function _decode_CertReferences(el: asn1.ASN1Element): CertReferences;
export declare function _encode_CertReferences(value: CertReferences, elGetter: __utils.ASN1Encoder<CertReferences>): asn1.ASN1Element;
export declare type CertChecks = asn1.OBJECT_IDENTIFIER[];
export declare function _decode_CertChecks(el: asn1.ASN1Element): CertChecks;
export declare function _encode_CertChecks(value: CertChecks, elGetter: __utils.ASN1Encoder<CertChecks>): asn1.ASN1Element;
export declare type WantBack = asn1.OBJECT_IDENTIFIER[];
export declare function _decode_WantBack(el: asn1.ASN1Element): WantBack;
export declare function _encode_WantBack(value: WantBack, elGetter: __utils.ASN1Encoder<WantBack>): asn1.ASN1Element;
export declare class ResponseFlags {
    readonly fullRequestInResponse: asn1.OPTIONAL<asn1.BOOLEAN>;
    readonly responseValidationPolByRef: asn1.OPTIONAL<asn1.BOOLEAN>;
    readonly protectResponse: asn1.OPTIONAL<asn1.BOOLEAN>;
    readonly cachedResponse: asn1.OPTIONAL<asn1.BOOLEAN>;
    constructor(fullRequestInResponse: asn1.OPTIONAL<asn1.BOOLEAN>, responseValidationPolByRef: asn1.OPTIONAL<asn1.BOOLEAN>, protectResponse: asn1.OPTIONAL<asn1.BOOLEAN>, cachedResponse: asn1.OPTIONAL<asn1.BOOLEAN>);
    static get _default_value_for_fullRequestInResponse(): boolean;
    static get _default_value_for_responseValidationPolByRef(): boolean;
    static get _default_value_for_protectResponse(): boolean;
    static get _default_value_for_cachedResponse(): boolean;
}
export declare const _root_component_type_list_1_spec_for_ResponseFlags: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_ResponseFlags: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_ResponseFlags: __utils.ComponentSpec[];
export declare function _decode_ResponseFlags(el: asn1.ASN1Element): ResponseFlags;
export declare function _encode_ResponseFlags(value: ResponseFlags, elGetter: __utils.ASN1Encoder<ResponseFlags>): asn1.ASN1Element;
export declare type CertBundle = Certificate[];
export declare function _decode_CertBundle(el: asn1.ASN1Element): CertBundle;
export declare function _encode_CertBundle(value: CertBundle, elGetter: __utils.ASN1Encoder<CertBundle>): asn1.ASN1Element;
export declare class OtherRevInfo {
    readonly riType: asn1.OBJECT_IDENTIFIER;
    readonly riValue: asn1.ASN1Element;
    constructor(riType: asn1.OBJECT_IDENTIFIER, riValue: asn1.ASN1Element);
}
export declare const _root_component_type_list_1_spec_for_OtherRevInfo: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_OtherRevInfo: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_OtherRevInfo: __utils.ComponentSpec[];
export declare function _decode_OtherRevInfo(el: asn1.ASN1Element): OtherRevInfo;
export declare function _encode_OtherRevInfo(value: OtherRevInfo, elGetter: __utils.ASN1Encoder<OtherRevInfo>): asn1.ASN1Element;
export declare type RevocationInfo = {
    crl: CertificateList;
} | {
    delta_crl: CertificateList;
} | {
    ocsp: OCSPResponse;
} | {
    other: OtherRevInfo;
};
export declare function _decode_RevocationInfo(el: asn1.ASN1Element): RevocationInfo;
export declare function _encode_RevocationInfo(value: RevocationInfo, elGetter: __utils.ASN1Encoder<RevocationInfo>): asn1.ASN1Element;
export declare type RevocationInfos = RevocationInfo[];
export declare function _decode_RevocationInfos(el: asn1.ASN1Element): RevocationInfos;
export declare function _encode_RevocationInfos(value: RevocationInfos, elGetter: __utils.ASN1Encoder<RevocationInfos>): asn1.ASN1Element;
export declare class Query {
    readonly queriedCerts: CertReferences;
    readonly checks: CertChecks;
    readonly wantBack: asn1.OPTIONAL<WantBack>;
    readonly validationPolicy: ValidationPolicy;
    readonly responseFlags: asn1.OPTIONAL<ResponseFlags>;
    readonly serverContextInfo: asn1.OPTIONAL<asn1.OCTET_STRING>;
    readonly validationTime: asn1.OPTIONAL<asn1.GeneralizedTime>;
    readonly intermediateCerts: asn1.OPTIONAL<CertBundle>;
    readonly revInfos: asn1.OPTIONAL<RevocationInfos>;
    readonly producedAt: asn1.OPTIONAL<asn1.GeneralizedTime>;
    readonly queryExtensions: asn1.OPTIONAL<Extensions>;
    constructor(queriedCerts: CertReferences, checks: CertChecks, wantBack: asn1.OPTIONAL<WantBack>, validationPolicy: ValidationPolicy, responseFlags: asn1.OPTIONAL<ResponseFlags>, serverContextInfo: asn1.OPTIONAL<asn1.OCTET_STRING>, validationTime: asn1.OPTIONAL<asn1.GeneralizedTime>, intermediateCerts: asn1.OPTIONAL<CertBundle>, revInfos: asn1.OPTIONAL<RevocationInfos>, producedAt: asn1.OPTIONAL<asn1.GeneralizedTime>, queryExtensions: asn1.OPTIONAL<Extensions>);
}
export declare const _root_component_type_list_1_spec_for_Query: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_Query: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_Query: __utils.ComponentSpec[];
export declare function _decode_Query(el: asn1.ASN1Element): Query;
export declare function _encode_Query(value: Query, elGetter: __utils.ASN1Encoder<Query>): asn1.ASN1Element;
export declare class CVRequest {
    readonly cvRequestVersion: asn1.OPTIONAL<asn1.INTEGER>;
    readonly query: Query;
    readonly requestorRef: asn1.OPTIONAL<GeneralNames>;
    readonly requestNonce: asn1.OPTIONAL<asn1.OCTET_STRING>;
    readonly requestorName: asn1.OPTIONAL<GeneralName>;
    readonly responderName: asn1.OPTIONAL<GeneralName>;
    readonly requestExtensions: asn1.OPTIONAL<Extensions>;
    readonly signatureAlg: asn1.OPTIONAL<AlgorithmIdentifier>;
    readonly hashAlg: asn1.OPTIONAL<asn1.OBJECT_IDENTIFIER>;
    readonly requestorText: asn1.OPTIONAL<asn1.UTF8String>;
    constructor(cvRequestVersion: asn1.OPTIONAL<asn1.INTEGER>, query: Query, requestorRef: asn1.OPTIONAL<GeneralNames>, requestNonce: asn1.OPTIONAL<asn1.OCTET_STRING>, requestorName: asn1.OPTIONAL<GeneralName>, responderName: asn1.OPTIONAL<GeneralName>, requestExtensions: asn1.OPTIONAL<Extensions>, signatureAlg: asn1.OPTIONAL<AlgorithmIdentifier>, hashAlg: asn1.OPTIONAL<asn1.OBJECT_IDENTIFIER>, requestorText: asn1.OPTIONAL<asn1.UTF8String>);
    static get _default_value_for_cvRequestVersion(): number;
}
export declare const _root_component_type_list_1_spec_for_CVRequest: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_CVRequest: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_CVRequest: __utils.ComponentSpec[];
export declare function _decode_CVRequest(el: asn1.ASN1Element): CVRequest;
export declare function _encode_CVRequest(value: CVRequest, elGetter: __utils.ASN1Encoder<CVRequest>): asn1.ASN1Element;
export declare type RequestReference = {
    requestHash: HashValue;
} | {
    fullRequest: CVRequest;
};
export declare function _decode_RequestReference(el: asn1.ASN1Element): RequestReference;
export declare function _encode_RequestReference(value: RequestReference, elGetter: __utils.ASN1Encoder<RequestReference>): asn1.ASN1Element;
export declare type CertReference = {
    pkc: PKCReference;
} | {
    ac: ACReference;
};
export declare function _decode_CertReference(el: asn1.ASN1Element): CertReference;
export declare function _encode_CertReference(value: CertReference, elGetter: __utils.ASN1Encoder<CertReference>): asn1.ASN1Element;
export declare enum ReplyStatus {
    success = 0,
    malformedPKC = 1,
    malformedAC = 2,
    unavailableValidationTime = 3,
    referenceCertHashFail = 4,
    certPathConstructFail = 5,
    certPathNotValid = 6,
    certPathNotValidNow = 7,
    wantBackUnsatisfied = 8
}
export declare const ReplyStatus_success: ReplyStatus;
export declare const ReplyStatus_malformedPKC: ReplyStatus;
export declare const ReplyStatus_malformedAC: ReplyStatus;
export declare const ReplyStatus_unavailableValidationTime: ReplyStatus;
export declare const ReplyStatus_referenceCertHashFail: ReplyStatus;
export declare const ReplyStatus_certPathConstructFail: ReplyStatus;
export declare const ReplyStatus_certPathNotValid: ReplyStatus;
export declare const ReplyStatus_certPathNotValidNow: ReplyStatus;
export declare const ReplyStatus_wantBackUnsatisfied: ReplyStatus;
export declare function _decode_ReplyStatus(el: asn1.ASN1Element): ReplyStatus;
export declare function _encode_ReplyStatus(value: ReplyStatus, elGetter: __utils.ASN1Encoder<ReplyStatus>): asn1.ASN1Element;
export declare class ReplyCheck {
    readonly check: asn1.OBJECT_IDENTIFIER;
    readonly status: asn1.OPTIONAL<asn1.INTEGER>;
    constructor(check: asn1.OBJECT_IDENTIFIER, status: asn1.OPTIONAL<asn1.INTEGER>);
    static get _default_value_for_status(): number;
}
export declare const _root_component_type_list_1_spec_for_ReplyCheck: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_ReplyCheck: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_ReplyCheck: __utils.ComponentSpec[];
export declare function _decode_ReplyCheck(el: asn1.ASN1Element): ReplyCheck;
export declare function _encode_ReplyCheck(value: ReplyCheck, elGetter: __utils.ASN1Encoder<ReplyCheck>): asn1.ASN1Element;
export declare type ReplyChecks = ReplyCheck[];
export declare function _decode_ReplyChecks(el: asn1.ASN1Element): ReplyChecks;
export declare function _encode_ReplyChecks(value: ReplyChecks, elGetter: __utils.ASN1Encoder<ReplyChecks>): asn1.ASN1Element;
export declare class ReplyWantBack {
    readonly wb: asn1.OBJECT_IDENTIFIER;
    readonly value: asn1.OCTET_STRING;
    constructor(wb: asn1.OBJECT_IDENTIFIER, value: asn1.OCTET_STRING);
}
export declare const _root_component_type_list_1_spec_for_ReplyWantBack: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_ReplyWantBack: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_ReplyWantBack: __utils.ComponentSpec[];
export declare function _decode_ReplyWantBack(el: asn1.ASN1Element): ReplyWantBack;
export declare function _encode_ReplyWantBack(value: ReplyWantBack, elGetter: __utils.ASN1Encoder<ReplyWantBack>): asn1.ASN1Element;
export declare type ReplyWantBacks = ReplyWantBack[];
export declare function _decode_ReplyWantBacks(el: asn1.ASN1Element): ReplyWantBacks;
export declare function _encode_ReplyWantBacks(value: ReplyWantBacks, elGetter: __utils.ASN1Encoder<ReplyWantBacks>): asn1.ASN1Element;
export declare class CertReply {
    readonly cert: CertReference;
    readonly replyStatus: asn1.OPTIONAL<ReplyStatus>;
    readonly replyValTime: asn1.GeneralizedTime;
    readonly replyChecks: ReplyChecks;
    readonly replyWantBacks: ReplyWantBacks;
    readonly validationErrors: asn1.OPTIONAL<asn1.OBJECT_IDENTIFIER[]>;
    readonly nextUpdate: asn1.OPTIONAL<asn1.GeneralizedTime>;
    readonly certReplyExtensions: asn1.OPTIONAL<Extensions>;
    constructor(cert: CertReference, replyStatus: asn1.OPTIONAL<ReplyStatus>, replyValTime: asn1.GeneralizedTime, replyChecks: ReplyChecks, replyWantBacks: ReplyWantBacks, validationErrors: asn1.OPTIONAL<asn1.OBJECT_IDENTIFIER[]>, nextUpdate: asn1.OPTIONAL<asn1.GeneralizedTime>, certReplyExtensions: asn1.OPTIONAL<Extensions>);
    static get _default_value_for_replyStatus(): ReplyStatus;
}
export declare const _root_component_type_list_1_spec_for_CertReply: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_CertReply: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_CertReply: __utils.ComponentSpec[];
export declare function _decode_CertReply(el: asn1.ASN1Element): CertReply;
export declare function _encode_CertReply(value: CertReply, elGetter: __utils.ASN1Encoder<CertReply>): asn1.ASN1Element;
export declare type ReplyObjects = CertReply[];
export declare function _decode_ReplyObjects(el: asn1.ASN1Element): ReplyObjects;
export declare function _encode_ReplyObjects(value: ReplyObjects, elGetter: __utils.ASN1Encoder<ReplyObjects>): asn1.ASN1Element;
export declare class CVResponse {
    readonly cvResponseVersion: asn1.INTEGER;
    readonly serverConfigurationID: asn1.INTEGER;
    readonly producedAt: asn1.GeneralizedTime;
    readonly responseStatus: ResponseStatus;
    readonly respValidationPolicy: asn1.OPTIONAL<RespValidationPolicy>;
    readonly requestRef: asn1.OPTIONAL<RequestReference>;
    readonly requestorRef: asn1.OPTIONAL<GeneralNames>;
    readonly requestorName: asn1.OPTIONAL<GeneralNames>;
    readonly replyObjects: asn1.OPTIONAL<ReplyObjects>;
    readonly respNonce: asn1.OPTIONAL<asn1.OCTET_STRING>;
    readonly serverContextInfo: asn1.OPTIONAL<asn1.OCTET_STRING>;
    readonly cvResponseExtensions: asn1.OPTIONAL<Extensions>;
    readonly requestorText: asn1.OPTIONAL<asn1.UTF8String>;
    constructor(cvResponseVersion: asn1.INTEGER, serverConfigurationID: asn1.INTEGER, producedAt: asn1.GeneralizedTime, responseStatus: ResponseStatus, respValidationPolicy: asn1.OPTIONAL<RespValidationPolicy>, requestRef: asn1.OPTIONAL<RequestReference>, requestorRef: asn1.OPTIONAL<GeneralNames>, requestorName: asn1.OPTIONAL<GeneralNames>, replyObjects: asn1.OPTIONAL<ReplyObjects>, respNonce: asn1.OPTIONAL<asn1.OCTET_STRING>, serverContextInfo: asn1.OPTIONAL<asn1.OCTET_STRING>, cvResponseExtensions: asn1.OPTIONAL<Extensions>, requestorText: asn1.OPTIONAL<asn1.UTF8String>);
}
export declare const _root_component_type_list_1_spec_for_CVResponse: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_CVResponse: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_CVResponse: __utils.ComponentSpec[];
export declare function _decode_CVResponse(el: asn1.ASN1Element): CVResponse;
export declare function _encode_CVResponse(value: CVResponse, elGetter: __utils.ASN1Encoder<CVResponse>): asn1.ASN1Element;
export declare type CertBundles = CertBundle[];
export declare function _decode_CertBundles(el: asn1.ASN1Element): CertBundles;
export declare function _encode_CertBundles(value: CertBundles, elGetter: __utils.ASN1Encoder<CertBundles>): asn1.ASN1Element;
export declare class RevInfoWantBack {
    readonly revocationInfo: RevocationInfos;
    readonly extraCerts: asn1.OPTIONAL<CertBundle>;
    constructor(revocationInfo: RevocationInfos, extraCerts: asn1.OPTIONAL<CertBundle>);
}
export declare const _root_component_type_list_1_spec_for_RevInfoWantBack: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_RevInfoWantBack: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_RevInfoWantBack: __utils.ComponentSpec[];
export declare function _decode_RevInfoWantBack(el: asn1.ASN1Element): RevInfoWantBack;
export declare function _encode_RevInfoWantBack(value: RevInfoWantBack, elGetter: __utils.ASN1Encoder<RevInfoWantBack>): asn1.ASN1Element;
export declare type SCVPResponses = ContentInfo[];
export declare function _decode_SCVPResponses(el: asn1.ASN1Element): SCVPResponses;
export declare function _encode_SCVPResponses(value: SCVPResponses, elGetter: __utils.ASN1Encoder<SCVPResponses>): asn1.ASN1Element;
export declare const id_ct_scvp_valPolRequest: asn1.OBJECT_IDENTIFIER;
export declare class ValPolRequest {
    readonly vpRequestVersion: asn1.OPTIONAL<asn1.INTEGER>;
    readonly requestNonce: asn1.OCTET_STRING;
    constructor(vpRequestVersion: asn1.OPTIONAL<asn1.INTEGER>, requestNonce: asn1.OCTET_STRING);
    static get _default_value_for_vpRequestVersion(): number;
}
export declare const _root_component_type_list_1_spec_for_ValPolRequest: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_ValPolRequest: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_ValPolRequest: __utils.ComponentSpec[];
export declare function _decode_ValPolRequest(el: asn1.ASN1Element): ValPolRequest;
export declare function _encode_ValPolRequest(value: ValPolRequest, elGetter: __utils.ASN1Encoder<ValPolRequest>): asn1.ASN1Element;
export declare const id_ct_scvp_valPolResponse: asn1.OBJECT_IDENTIFIER;
export declare type AuthPolicy = asn1.OBJECT_IDENTIFIER;
export declare function _decode_AuthPolicy(el: asn1.ASN1Element): asn1.ObjectIdentifier;
export declare function _encode_AuthPolicy(value: AuthPolicy, elGetter: __utils.ASN1Encoder<AuthPolicy>): asn1.ASN1Element;
export declare enum ResponseTypes {
    cached_only = 0,
    non_cached_only = 1,
    cached_and_non_cached = 2
}
export declare const ResponseTypes_cached_only: ResponseTypes;
export declare const ResponseTypes_non_cached_only: ResponseTypes;
export declare const ResponseTypes_cached_and_non_cached: ResponseTypes;
export declare function _decode_ResponseTypes(el: asn1.ASN1Element): ResponseTypes;
export declare function _encode_ResponseTypes(value: ResponseTypes, elGetter: __utils.ASN1Encoder<ResponseTypes>): asn1.ASN1Element;
export declare type RevocationInfoTypes = asn1.BIT_STRING;
export declare const RevocationInfoTypes_fullCRLs: number;
export declare const RevocationInfoTypes_deltaCRLs: number;
export declare const RevocationInfoTypes_indirectCRLs: number;
export declare const RevocationInfoTypes_oCSPResponses: number;
export declare function _decode_RevocationInfoTypes(el: asn1.ASN1Element): Uint8ClampedArray;
export declare function _encode_RevocationInfoTypes(value: RevocationInfoTypes, elGetter: __utils.ASN1Encoder<RevocationInfoTypes>): asn1.ASN1Element;
export declare class KeyAgreePublicKey {
    readonly algorithm: AlgorithmIdentifier;
    readonly publicKey: asn1.BIT_STRING;
    readonly macAlgorithm: AlgorithmIdentifier;
    readonly kDF: asn1.OPTIONAL<AlgorithmIdentifier>;
    constructor(algorithm: AlgorithmIdentifier, publicKey: asn1.BIT_STRING, macAlgorithm: AlgorithmIdentifier, kDF: asn1.OPTIONAL<AlgorithmIdentifier>);
}
export declare const _root_component_type_list_1_spec_for_KeyAgreePublicKey: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_KeyAgreePublicKey: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_KeyAgreePublicKey: __utils.ComponentSpec[];
export declare function _decode_KeyAgreePublicKey(el: asn1.ASN1Element): KeyAgreePublicKey;
export declare function _encode_KeyAgreePublicKey(value: KeyAgreePublicKey, elGetter: __utils.ASN1Encoder<KeyAgreePublicKey>): asn1.ASN1Element;
export declare class ValPolResponse {
    readonly vpResponseVersion: asn1.INTEGER;
    readonly maxCVRequestVersion: asn1.INTEGER;
    readonly maxVPRequestVersion: asn1.INTEGER;
    readonly serverConfigurationID: asn1.INTEGER;
    readonly thisUpdate: asn1.GeneralizedTime;
    readonly nextUpdate: asn1.OPTIONAL<asn1.GeneralizedTime>;
    readonly supportedChecks: CertChecks;
    readonly supportedWantBacks: WantBack;
    readonly validationPolicies: asn1.OBJECT_IDENTIFIER[];
    readonly validationAlgs: asn1.OBJECT_IDENTIFIER[];
    readonly authPolicies: AuthPolicy[];
    readonly responseTypes: ResponseTypes;
    readonly defaultPolicyValues: RespValidationPolicy;
    readonly revocationInfoTypes: RevocationInfoTypes;
    readonly signatureGeneration: AlgorithmIdentifier[];
    readonly signatureVerification: AlgorithmIdentifier[];
    readonly hashAlgorithms: asn1.OBJECT_IDENTIFIER[];
    readonly serverPublicKeys: asn1.OPTIONAL<KeyAgreePublicKey[]>;
    readonly clockSkew: asn1.OPTIONAL<asn1.INTEGER>;
    readonly requestNonce: asn1.OPTIONAL<asn1.OCTET_STRING>;
    constructor(vpResponseVersion: asn1.INTEGER, maxCVRequestVersion: asn1.INTEGER, maxVPRequestVersion: asn1.INTEGER, serverConfigurationID: asn1.INTEGER, thisUpdate: asn1.GeneralizedTime, nextUpdate: asn1.OPTIONAL<asn1.GeneralizedTime>, supportedChecks: CertChecks, supportedWantBacks: WantBack, validationPolicies: asn1.OBJECT_IDENTIFIER[], validationAlgs: asn1.OBJECT_IDENTIFIER[], authPolicies: AuthPolicy[], responseTypes: ResponseTypes, defaultPolicyValues: RespValidationPolicy, revocationInfoTypes: RevocationInfoTypes, signatureGeneration: AlgorithmIdentifier[], signatureVerification: AlgorithmIdentifier[], hashAlgorithms: asn1.OBJECT_IDENTIFIER[], serverPublicKeys: asn1.OPTIONAL<KeyAgreePublicKey[]>, clockSkew: asn1.OPTIONAL<asn1.INTEGER>, requestNonce: asn1.OPTIONAL<asn1.OCTET_STRING>);
    static get _default_value_for_clockSkew(): number;
}
export declare const _root_component_type_list_1_spec_for_ValPolResponse: __utils.ComponentSpec[];
export declare const _root_component_type_list_2_spec_for_ValPolResponse: __utils.ComponentSpec[];
export declare const _extension_additions_list_spec_for_ValPolResponse: __utils.ComponentSpec[];
export declare function _decode_ValPolResponse(el: asn1.ASN1Element): ValPolResponse;
export declare function _encode_ValPolResponse(value: ValPolResponse, elGetter: __utils.ASN1Encoder<ValPolResponse>): asn1.ASN1Element;
export declare const id_stc: asn1.OBJECT_IDENTIFIER;
export declare type CertCheckSet = asn1.OBJECT_IDENTIFIER;
export declare const id_stc_build_pkc_path: asn1.OBJECT_IDENTIFIER;
export declare const id_stc_build_valid_pkc_path: asn1.OBJECT_IDENTIFIER;
export declare const id_stc_build_status_checked_pkc_path: asn1.OBJECT_IDENTIFIER;
export declare type ACertCheckSet = asn1.OBJECT_IDENTIFIER;
export declare const id_stc_build_aa_path: asn1.OBJECT_IDENTIFIER;
export declare const id_stc_build_valid_aa_path: asn1.OBJECT_IDENTIFIER;
export declare const id_stc_build_status_checked_aa_path: asn1.OBJECT_IDENTIFIER;
export declare const id_stc_status_check_ac_and_build_status_checked_aa_path: asn1.OBJECT_IDENTIFIER;
export declare const id_swb: asn1.OBJECT_IDENTIFIER;
export declare const id_swb_pkc_best_cert_path: asn1.OBJECT_IDENTIFIER;
export declare const id_swb_pkc_revocation_info: asn1.OBJECT_IDENTIFIER;
export declare const id_swb_pkc_public_key_info: asn1.OBJECT_IDENTIFIER;
export declare const id_swb_aa_cert_path: asn1.OBJECT_IDENTIFIER;
export declare const id_swb_aa_revocation_info: asn1.OBJECT_IDENTIFIER;
export declare const id_swb_ac_revocation_info: asn1.OBJECT_IDENTIFIER;
export declare const id_swb_relayed_responses: asn1.OBJECT_IDENTIFIER;
export declare const id_swb_pkc_all_cert_paths: asn1.OBJECT_IDENTIFIER;
export declare const id_swb_pkc_ee_revocation_info: asn1.OBJECT_IDENTIFIER;
export declare const id_swb_pkc_CAs_revocation_info: asn1.OBJECT_IDENTIFIER;
export declare const id_swb_pkc_cert: asn1.OBJECT_IDENTIFIER;
export declare const id_swb_ac_cert: asn1.OBJECT_IDENTIFIER;
export declare const id_svp: asn1.OBJECT_IDENTIFIER;
export declare const id_svp_defaultValPolicy: asn1.OBJECT_IDENTIFIER;
export declare const id_svp_basicValAlg: asn1.OBJECT_IDENTIFIER;
export declare const id_bvae: asn1.OBJECT_IDENTIFIER;
export declare type BasicValidationErrorSet = asn1.OBJECT_IDENTIFIER;
export declare const id_bvae_expired: asn1.OBJECT_IDENTIFIER;
export declare const id_bvae_not_yet_valid: asn1.OBJECT_IDENTIFIER;
export declare const id_bvae_wrongTrustAnchor: asn1.OBJECT_IDENTIFIER;
export declare const id_bvae_noValidCertPath: asn1.OBJECT_IDENTIFIER;
export declare const id_bvae_revoked: asn1.OBJECT_IDENTIFIER;
export declare const id_bvae_invalidKeyPurpose: asn1.OBJECT_IDENTIFIER;
export declare const id_bvae_invalidKeyUsage: asn1.OBJECT_IDENTIFIER;
export declare const id_bvae_invalidCertPolicy: asn1.OBJECT_IDENTIFIER;
export declare type NameCompAlgSet = asn1.OBJECT_IDENTIFIER;
export declare const id_nva_dnCompAlg: asn1.OBJECT_IDENTIFIER;
export declare const id_svp_nameValAlg: asn1.OBJECT_IDENTIFIER;
export declare const id_nvae: asn1.OBJECT_IDENTIFIER;
export declare type NameValidationErrorSet = asn1.OBJECT_IDENTIFIER;
export declare const id_nvae_name_mismatch: asn1.OBJECT_IDENTIFIER;
export declare const id_nvae_no_name: asn1.OBJECT_IDENTIFIER;
export declare const id_nvae_unknown_alg: asn1.OBJECT_IDENTIFIER;
export declare const id_nvae_bad_name: asn1.OBJECT_IDENTIFIER;
export declare const id_nvae_bad_name_type: asn1.OBJECT_IDENTIFIER;
export declare const id_nvae_mixed_names: asn1.OBJECT_IDENTIFIER;
export declare const id_kp: asn1.OBJECT_IDENTIFIER;
export declare type SvcpExtKeyUsageSet = asn1.OBJECT_IDENTIFIER;
export declare const id_kp_scvpServer: asn1.OBJECT_IDENTIFIER;
export declare const id_kp_scvpClient: asn1.OBJECT_IDENTIFIER;
//# sourceMappingURL=SCVP-2009.d.ts.map