UNPKG

@di-zed/yandex-smart-home

Version:

The Yandex Smart Home skills for the different device types.

81 lines (80 loc) 2.3 kB
/** * @author DiZed Team * @copyright Copyright (c) DiZed Team (https://github.com/di-zed/) */ import { Property, PropertyParameters, PropertyState } from '../property'; /** * Export "event" property. * https://yandex.ru/dev/dialogs/smart-home/doc/concepts/event.html?lang=en * * @interface */ export interface EventProperty extends Property { /** * Property type. */ readonly type: 'devices.properties.event'; /** * The parameters object. */ parameters?: EventPropertyParameters; /** * Property state parameters. */ state?: EventPropertyState; } /** * The parameters object. * https://yandex.ru/dev/dialogs/smart-home/doc/concepts/event.html?lang=en#discovery * * @interface */ export interface EventPropertyParameters extends PropertyParameters { /** * Function name for a property. */ instance: EventPropertyInstance; /** * Array of event objects that describe events supported by the property. Minimum number of events in the array: 1. */ events: EventPropertyEvent[]; } /** * Property state parameters. * https://yandex.ru/dev/dialogs/smart-home/doc/concepts/event.html?lang=en#state * * @interface */ export interface EventPropertyState extends PropertyState { /** * Function name for the property. */ instance: EventPropertyInstance; /** * Property value for this capability. */ value: EventPropertyEventValue; } /** * List of functions. * https://yandex.ru/dev/dialogs/smart-home/doc/concepts/event-instance.html?lang=en * * @type */ export type EventPropertyInstance = 'vibration' | 'open' | 'button' | 'motion' | 'smoke' | 'gas' | 'battery_level' | 'food_level' | 'water_level' | 'water_leak'; /** * Event object. * https://yandex.ru/dev/dialogs/smart-home/doc/concepts/event-instance.html?lang=en * * @type */ export type EventPropertyEvent = { value: EventPropertyEventValue; }; /** * List of event values. * https://yandex.ru/dev/dialogs/smart-home/doc/concepts/event-instance.html?lang=en * * @type */ export type EventPropertyEventValue = 'tilt' | 'fall' | 'vibration' | 'opened' | 'closed' | 'click' | 'double_click' | 'long_press' | 'detected' | 'not_detected' | 'high' | 'low' | 'normal' | 'empty' | 'dry' | 'leak';