import { ChannelCategory, DataTypeType, DeviceCategory, PermissionType, PropertyCategory } from '../../modules/devices/devices.constants'; export declare const DEVICES_ZIGBEE2MQTT_PLUGIN_NAME = "devices-zigbee2mqtt-plugin"; export declare const DEVICES_ZIGBEE2MQTT_PLUGIN_PREFIX = "devices-zigbee2mqtt"; export declare const DEVICES_ZIGBEE2MQTT_TYPE = "devices-zigbee2mqtt"; export declare const DEVICES_ZIGBEE2MQTT_API_TAG_NAME = "Devices module - Zigbee2MQTT plugin"; export declare const DEVICES_ZIGBEE2MQTT_API_TAG_DESCRIPTION = "Zigbee2MQTT integration plugin for Zigbee device management via MQTT."; export declare const DEFAULT_MQTT_BASE_TOPIC = "zigbee2mqtt"; export declare const DEFAULT_MQTT_PORT = 1883; export declare const DEFAULT_MQTT_RECONNECT_INTERVAL = 5000; export declare const DEFAULT_MQTT_CONNECT_TIMEOUT = 30000; export declare const DEFAULT_MQTT_KEEPALIVE = 60; export declare const Z2M_CHANNEL_IDENTIFIERS: { readonly DEVICE_INFORMATION: "device_information"; readonly LIGHT: "light"; readonly SWITCHER: "switcher"; readonly THERMOSTAT: "thermostat"; readonly WINDOW_COVERING: "window_covering"; readonly LOCK: "lock"; readonly FAN: "fan"; readonly TEMPERATURE: "temperature"; readonly HUMIDITY: "humidity"; readonly ILLUMINANCE: "illuminance"; readonly PRESSURE: "pressure"; readonly OCCUPANCY: "occupancy"; readonly CONTACT: "contact"; readonly LEAK: "leak"; readonly SMOKE: "smoke"; readonly BATTERY: "battery"; readonly ELECTRICAL_POWER: "electrical_power"; readonly ELECTRICAL_ENERGY: "electrical_energy"; }; export declare const Z2M_ACCESS: { readonly STATE: 1; readonly SET: 2; readonly GET: 4; }; export declare const Z2M_SPECIFIC_TYPES: readonly ["light", "switch", "fan", "cover", "lock", "climate"]; export declare const Z2M_GENERIC_TYPES: readonly ["binary", "numeric", "enum", "text", "composite", "list"]; export declare const Z2M_IGNORED_DEVICE_TYPES: readonly ["Coordinator"]; export interface Z2mPropertyBinding { z2mProperty: string; channelCategory: ChannelCategory; propertyIdentifier: string; category: PropertyCategory; dataType: DataTypeType; permissions: PermissionType[]; name: string; unit?: string; format?: string | string[] | number[]; min?: number; max?: number; step?: number; } export declare const COMMON_PROPERTY_MAPPINGS: Record>; export declare const Z2M_DEVICE_INFO_PROPERTY_IDENTIFIERS: { readonly MANUFACTURER: "manufacturer"; readonly MODEL: "model"; readonly SERIAL_NUMBER: "serial_number"; readonly LINK_QUALITY: "linkquality"; }; export declare const mapZ2mCategoryToDeviceCategory: (exposeTypes: string[], propertyNames?: string[]) => DeviceCategory; export declare const mapZ2mExposeToChannelCategory: (exposeType: string) => ChannelCategory; export declare const mapZ2mTypeToDataType: (type: string, valueMin?: number, valueMax?: number, _values?: string[]) => DataTypeType; export declare const mapZ2mAccessToPermissions: (access: number) => PermissionType[];