summaryrefslogtreecommitdiff
path: root/deps/npm/node_modules/@tufjs/models/dist/base.d.ts
blob: 4cc2395328592fbdc4e796065bb16494f57fe8ff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import { Signature } from './signature';
import { JSONObject, JSONValue } from './utils';
export interface Signable {
    signatures: Record<string, Signature>;
    signed: Signed;
}
export interface SignedOptions {
    version?: number;
    specVersion?: string;
    expires?: string;
    unrecognizedFields?: Record<string, JSONValue>;
}
export declare enum MetadataKind {
    Root = "root",
    Timestamp = "timestamp",
    Snapshot = "snapshot",
    Targets = "targets"
}
export declare function isMetadataKind(value: unknown): value is MetadataKind;
/***
 * A base class for the signed part of TUF metadata.
 *
 * Objects with base class Signed are usually included in a ``Metadata`` object
 * on the signed attribute. This class provides attributes and methods that
 * are common for all TUF metadata types (roles).
 */
export declare abstract class Signed {
    readonly specVersion: string;
    readonly expires: string;
    readonly version: number;
    readonly unrecognizedFields: Record<string, JSONValue>;
    constructor(options: SignedOptions);
    equals(other: Signed): boolean;
    isExpired(referenceTime?: Date): boolean;
    static commonFieldsFromJSON(data: JSONObject): SignedOptions;
    abstract toJSON(): JSONObject;
}