export type ApplianceId = string; export type ApplianceStatus = 'enabled' | 'disabled'; export type ConnectionState = 'Connected' | 'Disconnected'; export interface Appliance { applianceId: ApplianceId; applianceName: string; applianceType: string; created: string; } export type Appliances = Appliance[]; export interface ApplianceInfoDTO { serialNumber: string; pnc: string; brand: string; deviceType: string; model: string; variant: string; colour: string; } export type CapabilityAccess = 'read' | 'readwrite' | 'write' | 'constant'; export type CapabilityType = 'string' | 'number' | 'int' | 'boolean' | 'complex' | 'temperature' | 'alert'; export type CapabilityValue = string | number | boolean; export interface CapabilityValues { [index: string]: object; } export type ConditionOperand = string | CapabilityValue | object; export type ConditionOperator = 'eq' | 'gt' | 'ne' | 'lt' | 'ge' | 'le' | 'and' | 'or'; export interface TriggerCondition { operand_1: ConditionOperand; operand_2: ConditionOperand; operator: ConditionOperator; } export interface TriggerAction { [index: string]: object; } export interface CapabilityTrigger { condition: TriggerCondition; action: TriggerAction; } export interface ApplianceCapabilityPropertiesBase { access: CapabilityAccess; type: CapabilityType; default?: CapabilityValue; disabled?: boolean; schedulable?: boolean; triggers?: CapabilityTrigger[]; } export interface ApplianceCapabilityPropertiesNumber { access: CapabilityAccess; type: 'number' | 'int' | 'temperature'; default?: number; disabled?: boolean; min?: number; max?: number; step?: number; } export interface ApplianceCapabilityPropertiesString { access: CapabilityAccess; type: 'string' | 'alert'; default?: string; disabled?: boolean; values?: CapabilityValues; } export type ApplianceCapabilityProperties = ApplianceCapabilityPropertiesBase | ApplianceCapabilityPropertiesNumber | ApplianceCapabilityPropertiesString; export interface ApplianceCapabilities { [index: string]: ApplianceCapabilities | ApplianceCapabilityProperties; } export interface ApplianceInfo { applianceInfo: ApplianceInfoDTO; capabilities: ApplianceCapabilities; } export interface ApplianceStateProperties { reported: object; } export interface ApplianceState { applianceId: ApplianceId; connectionState: ConnectionState; status: ApplianceStatus; properties: ApplianceStateProperties; } export type Command = object; export interface ErrorResponse { message: string; error?: string; detail?: string; } //# sourceMappingURL=aegapi-types.d.ts.map