///
import { AlgorithmIdentifier, BlockInfo, DirectoryName } from "./asn1";
import { CertificateRevocationList } from "./common";
export declare type Version = string;
export declare type Name = string;
export declare type CertificateSerialNumber = string;
export declare type Extensions = Record;
export interface RevokedCertificate {
userCertificate: CertificateSerialNumber;
revocationDate: Date;
crlEntryExtensions?: Extensions;
}
export interface TBSCertList {
version?: Version;
signature: AlgorithmIdentifier;
issuer: Name;
issuerFingerprint: string;
thisUpdate: Date;
nextUpdate?: Date;
revokedCertificates: RevokedCertificate[];
}
export interface CertificateRevocationListInfo {
tbsCertList: TBSCertList;
signatureAlgorithm: AlgorithmIdentifier;
signatureValue: Buffer;
}
export declare function readNameForCrl(buffer: Buffer, block: BlockInfo): DirectoryName;
export declare function exploreCertificateRevocationList(crl: CertificateRevocationList): CertificateRevocationListInfo;