/// import * as exposes from './exposes'; import { Fz, Definition, KeyValue, KeyValueAny } from './types'; declare type Day = 'mon' | 'tue' | 'wed' | 'thu' | 'fri' | 'sat' | 'sun'; export interface TrvScheduleConfigEvent { time: number; temperature: number; } export interface TrvScheduleConfig { days: Day[]; events: TrvScheduleConfigEvent[]; } export declare const buffer2DataObject: (meta: Fz.Meta, model: Definition, buffer: Buffer) => KeyValue; export declare const numericAttributes2Payload: (msg: Fz.Message, meta: Fz.Meta, model: Definition, options: KeyValue, dataObject: KeyValue) => Promise; export declare const VOCKQJK11LMDisplayUnit: { mgm3_celsius: number; ppb_celsius: number; mgm3_fahrenheit: number; ppb_fahrenheit: number; }; export declare const numericAttributes2Options: (definition: Definition) => exposes.Numeric[]; export declare const fp1: { constants: { region_event_key: number; region_event_types: { Enter: number; Leave: number; Occupied: number; Unoccupied: number; }; region_config_write_attribute: number; region_config_write_attribute_type: number; region_config_cmds: { /** * Creates new region (or force replaces existing one) * with new zones definition. */ create: number; /** * Modifies existing region. * Note: unused, as it seems to break existing regions * (region stops reporting new detection events). * Use "create" instead, as it replaces existing region with new one. */ modify: number; /** * Deletes existing region. */ delete: number; }; region_config_regionId_min: number; region_config_regionId_max: number; region_config_zoneY_min: number; region_config_zoneY_max: number; region_config_zoneX_min: number; region_config_zoneX_max: number; region_config_cmd_suffix_upsert: number; region_config_cmd_suffix_delete: number; }; mappers: { aqara_fp1: { region_event_type_names: { [x: number]: string; }; }; }; /** * @param {undefined | Set} xCells * @return {number} */ encodeXCellsDefinition: (xCells: number[]) => number; /** * @param {number} cellXIdx * @return {number} */ encodeXCellIdx: (cellXIdx: number) => number; /** * @param {unknown} input */ parseAqaraFp1RegionDeleteInput: (input: KeyValueAny) => { isSuccess: boolean; error: { reason: string; }; } | { /** @type true */ isSuccess: boolean; payload: { command: { region_id: any; }; }; }; /** * @param {unknown} input */ parseAqaraFp1RegionUpsertInput: (input: KeyValueAny) => { isSuccess: boolean; error: { reason: string; }; } | { /** @type true */ isSuccess: boolean; payload: { command: { region_id: any; zones: any[]; }; }; }; /** * @param {unknown} value * @returns {value is number} */ isAqaraFp1RegionId: (value: number) => boolean; /** * @param {unknown} value * @returns {value is AqaraFP1RegionZone} */ isAqaraFp1RegionZoneDefinition: (value: KeyValueAny) => boolean; /** * @template {Record} ErrorType * @param {ErrorType} error * @return { { isSuccess: false, error: ErrorType } } */ failure: (error: { reason: string; }) => { isSuccess: boolean; error: { reason: string; }; }; }; export declare const trv: { decodeFirmwareVersionString(value: number): string; decodePreset(value: number): { setup: boolean; preset: string; }; decodeHeartbeat(meta: Fz.Meta, model: Definition, messageBuffer: Buffer): KeyValue; /** * Decode a Zigbee schedule configuration message into a schedule configuration object. * @param {Buffer} buffer * @return {TrvScheduleConfig} */ decodeSchedule(buffer: Buffer): TrvScheduleConfig; /** * @param {TrvScheduleConfig} schedule * @return {void} */ validateSchedule(schedule: TrvScheduleConfig): void; /** * Encodes a schedule object into Zigbee message format. * @param {TrvScheduleConfig} schedule * @return {Buffer} */ encodeSchedule(schedule: KeyValueAny): Buffer; stringifySchedule(schedule: TrvScheduleConfig): string; parseSchedule(stringifiedSchedule: string): TrvScheduleConfig; }; export declare const manufacturerCode = 4447; export {}; //# sourceMappingURL=xiaomi.d.ts.map