import { BaseClass } from '../base/base'; export declare enum DEVICE_ROLES_GLOBAL { /** A public device such as a informational screen */ PUBLIC = "public", /** Other use-case */ OTHER = "other", /** Device used as desktop computer */ DESKTOP = "desktop", /** Devices that act as gateway between Iot devices and servers */ IOT_GATEWAY = "iot_gateway", /** Device used as server to host other applications */ SERVER = "server", /** Device used to sign-up and/or verify users */ REGISTRATION_TERMINAL = "registration_terminal", /** Device used as administration terminal for CM access */ ADMIN_TERMINAL = "admin_terminal", /** Self - The device this service is running on */ SELF = "self" } /** * The identity assurance level reflects how well the user is known * * none = public sign-up, no verification * basic = basic verification by role OFFICER and above (manually enter details) * complete = verification by role OFFICER and above * maximum = proper KYC verification with face match */ export declare enum DEVICE_USER_IDENTITY_ASSURANCE_LEVEL { NONE = "none", BASIC = "basic", COMPLETE = "complete", MAXIMUM = "maximum" } export interface DeviceSystemData { configVersion: string; keySecurity: string; keyType: string; operatingSystem: string; operatingSystemRelease: string; systemArchitecture: string; systemMemory: number; } export declare abstract class DeviceBaseEntityClass extends BaseClass { title: string; location?: string; role: DEVICE_ROLES_GLOBAL; systemData: DeviceSystemData; /** * OpenID Client Identifier */ clientId: string; /** * Indicates whether a device is enabled * A device that has not finished registration is `false` by default */ isEnabled: boolean; /** * Indicates whether device registration has been completed */ registrationCompleted: boolean; /** * Indicates to what degree the device is capable to verify the user identity. */ userIdentityAssuranceLevel: DEVICE_USER_IDENTITY_ASSURANCE_LEVEL; }