UNPKG

dt-common-device

Version:

A secure and robust device management library for IoT applications

171 lines (170 loc) 4.33 kB
export declare enum IssuesCategory { OPERATIONS = "OPERATIONS", SECURITY = "SECURITY", ENERGY = "ENERGY", OTHER = "OTHER" } export declare enum EntityType { ZONE = "ZONE", DEVICE = "DEVICE", ACCESS_GROUP = "ACCESS_GROUP", USER = "USER", INTEGRATION = "INTEGRATION", PROPERTY = "PROPERTY", HUB = "HUB", SCHEDULE = "SCHEDULE", OTHER = "OTHER", CLOUD_DEVICE_ACCOUNT = "CLOUD_DEVICE_ACCOUNT", CLOUD_PMS_ACCOUNT = "CLOUD_PMS_ACCOUNT" } export declare enum EntitySubType { ZONE = "ZONE", GUEST_CODE = "GUEST_CODE", STAFF_CODE = "STAFF_CODE", EMERGENCY_CODE = "EMERGENCY_CODE", VENDOR_CODE = "VENDOR_CODE", LOCK = "LOCK", HUB = "HUB", TV = "TV", THERMOSTAT = "THERMOSTAT", ON_PREM_SERVER = "ON_PREM_SERVER", CLOUDBEDS = "CLOUDBEDS", STAYNTOUCH = "STAYNTOUCH", HOTELKEY = "HOTELKEY", YANOLJA = "YANOLJA", SKYTOUCH = "SKYTOUCH", SMOOBU = "SMOOBU", MEWS = "MEWS", WEBREZPRO = "WEBREZPRO", SMARTTHINGS = "SMARTTHINGS", TTLOCK = "TTLOCK", TUYA = "TUYA", VERDANT = "VERDANT", SENSIBO = "SENSIBO", DORMKABA = "DORMKABA", DUSAW = "DUSAW", YALEWIFI = "YALEWIFI", SALTOKS = "SALTOKS", SALTOSPACE = "SALTOSPACE", SCHLAGE = "SCHLAGE", LOCKLY = "LOCKLY" } export declare enum IssueStatus { PENDING = "PENDING", IN_PROGRESS = "IN_PROGRESS", RESOLVED = "RESOLVED", CLOSED = "CLOSED", CANCELLED = "CANCELLED", ON_HOLD = "ON_HOLD", IGNORED = "IGNORED" } export declare enum IssuePriority { LOW = "LOW", HIGH = "HIGH", CRITICAL = "CRITICAL" } export interface IssueComment { id: string; userId: string; content: string; createdAt: Date; updatedAt?: Date; } export declare enum IssueType { BATTERY_LOW = "BATTERY_LOW", DEVICE_OFFLINE = "DEVICE_OFFLINE", HUB_OFFLINE = "HUB_OFFLINE", ACCOUNT_UNAUTHORIZED = "ACCOUNT_UNAUTHORIZED", ACCOUNT_MISSING_DEVICE = "ACCOUNT_MISSING_DEVICE", LOCK_JAMMED = "LOCK_JAMMED", DEVICE_MALFUNCTION = "DEVICE_MALFUNCTION", NO_GUEST_CODES = "NO_GUEST_CODES", JUST_ENOUGH_GUEST_CODES = "JUST_ENOUGH_GUEST_CODES", LOW_GUEST_CODES = "LOW_GUEST_CODES", PMS_CODE_NOT_DELIVERED = "PMS_CODE_NOT_DELIVERED", SCHEDULE_CODE_NOT_ASSIGNED = "SCHEDULE_CODE_NOT_ASSIGNED" } export interface IssueDocument { id: string; category: IssuesCategory; propertyId: string; zoneId?: string; zoneName?: string; title: string; description: string; entityId?: string; entityType: EntityType; entitySubType: EntitySubType; status: IssueStatus; priority: IssuePriority; type: IssueType; assignedTo?: string; createdBy: string; updatedBy?: string; isDeleted: boolean; createdAt: Date; updatedAt: Date; resolvedAt?: Date; dueDate?: Date; comments?: IssueComment[]; } export interface CreateIssueData { category: IssuesCategory; propertyId: string; zoneId?: string; zoneName?: string; title: string; description: string; entityId: string; entityType: EntityType; entitySubType: EntitySubType; type: IssueType; priority?: IssuePriority; assignedTo?: string; createdBy: string; dueDate?: Date; } export interface UpdateIssueData { category?: IssuesCategory; title?: string; description?: string; entityId?: string; entityType?: EntityType; entitySubType?: EntitySubType; status?: IssueStatus; type?: IssueType; priority?: IssuePriority; assignedTo?: string; updatedBy?: string; updatedAt?: Date; resolvedAt?: Date; dueDate?: Date; isDeleted?: boolean; zoneId?: string; } export interface AddCommentData { userId: string; content: string; } export interface IIssueQuery { id?: string; propertyId?: string; zoneId?: string; zoneName?: string; assignedTo?: string; status?: IssueStatus; priority?: IssuePriority; type?: IssueType | IssueType[]; category?: IssuesCategory; entityType?: EntityType; entitySubType?: EntitySubType; entityId?: string; includeDeleted?: boolean; startDate?: string; endDate?: string; limit?: number; skip?: number; sort?: { [key: string]: 1 | -1; }; }