summaryrefslogtreecommitdiff
path: root/includes/external/matrix/node_modules/matrix-js-sdk/lib/crypto/deviceinfo.d.ts
blob: 236376173d302fb94972957a2b8ef7086f462f73 (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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
import { ISignatures } from "../@types/signed";
export interface IDevice {
    keys: Record<string, string>;
    algorithms: string[];
    verified: DeviceVerification;
    known: boolean;
    unsigned?: Record<string, any>;
    signatures?: ISignatures;
}
declare enum DeviceVerification {
    Blocked = -1,
    Unverified = 0,
    Verified = 1
}
/**
 * Information about a user's device
 */
export declare class DeviceInfo {
    readonly deviceId: string;
    /**
     * rehydrate a DeviceInfo from the session store
     *
     * @param obj -  raw object from session store
     * @param deviceId - id of the device
     *
     * @returns new DeviceInfo
     */
    static fromStorage(obj: Partial<IDevice>, deviceId: string): DeviceInfo;
    static DeviceVerification: {
        VERIFIED: DeviceVerification;
        UNVERIFIED: DeviceVerification;
        BLOCKED: DeviceVerification;
    };
    /** list of algorithms supported by this device */
    algorithms: string[];
    /** a map from `<key type>:<id> -> <base64-encoded key>` */
    keys: Record<string, string>;
    /** whether the device has been verified/blocked by the user */
    verified: DeviceVerification;
    /**
     * whether the user knows of this device's existence
     * (useful when warning the user that a user has added new devices)
     */
    known: boolean;
    /** additional data from the homeserver */
    unsigned: Record<string, any>;
    signatures: ISignatures;
    /**
     * @param deviceId - id of the device
     */
    constructor(deviceId: string);
    /**
     * Prepare a DeviceInfo for JSON serialisation in the session store
     *
     * @returns deviceinfo with non-serialised members removed
     */
    toStorage(): IDevice;
    /**
     * Get the fingerprint for this device (ie, the Ed25519 key)
     *
     * @returns base64-encoded fingerprint of this device
     */
    getFingerprint(): string;
    /**
     * Get the identity key for this device (ie, the Curve25519 key)
     *
     * @returns base64-encoded identity key of this device
     */
    getIdentityKey(): string;
    /**
     * Get the configured display name for this device, if any
     *
     * @returns displayname
     */
    getDisplayName(): string | null;
    /**
     * Returns true if this device is blocked
     *
     * @returns true if blocked
     */
    isBlocked(): boolean;
    /**
     * Returns true if this device is verified
     *
     * @returns true if verified
     */
    isVerified(): boolean;
    /**
     * Returns true if this device is unverified
     *
     * @returns true if unverified
     */
    isUnverified(): boolean;
    /**
     * Returns true if the user knows about this device's existence
     *
     * @returns true if known
     */
    isKnown(): boolean;
}
export {};
//# sourceMappingURL=deviceinfo.d.ts.map