import { Extensions } from "@peculiar/asn1-x509";
import { MessageImprint } from "./message_imprint";
export declare enum TimeStampReqVersion {
    v1 = 1
}
/**
 * ```asn1
 * TSAPolicyId ::= OBJECT IDENTIFIER
 * ```
 */
export type TSAPolicyId = string;
/**
 * ```asn1
 * TimeStampReq ::= SEQUENCE  {
 *   version                  INTEGER  { v1(1) },
 *   messageImprint           MessageImprint,
 *     --a hash algorithm OID and the hash value of the data to be
 *     --time-stamped
 *   reqPolicy                TSAPolicyId                OPTIONAL,
 *   nonce                    INTEGER                    OPTIONAL,
 *   certReq                  BOOLEAN                    DEFAULT FALSE,
 *   extensions               [0] IMPLICIT Extensions    OPTIONAL  }
 * ```
 */
export declare class TimeStampReq {
    version: TimeStampReqVersion;
    messageImprint: MessageImprint;
    reqPolicy?: TSAPolicyId;
    nonce?: ArrayBuffer;
    certReq: boolean;
    extensions?: Extensions;
    constructor(params?: Partial<TimeStampReq>);
}
