@dotwee/homebridge-z2m
Version:
Expose your Zigbee devices to HomeKit with ease, by integrating Zigbee2MQTT with Homebridge.
62 lines • 2.54 kB
TypeScript
import { PlatformConfig } from 'homebridge';
import { ConverterConfigValidatorCollection } from './converters/creators';
import { BasicLogger } from './logger';
import { ExposesEntry } from './z2mModels';
export interface PluginConfiguration extends PlatformConfig {
mqtt: MqttConfiguration;
log?: LogConfiguration;
defaults?: BaseDeviceConfiguration;
experimental?: string[];
devices?: DeviceConfiguration[];
exclude_grouped_devices?: boolean;
}
export declare const isPluginConfiguration: (x: PlatformConfig, converterConfigValidator: ConverterConfigValidatorCollection, logger?: BasicLogger | undefined) => x is PluginConfiguration;
export interface LogConfiguration extends Record<string, unknown> {
mqtt_publish?: string;
}
export declare const isLogConfiguration: (x: any) => x is LogConfiguration;
export interface MqttConfiguration extends Record<string, unknown> {
base_topic: string;
server: string;
ca?: string;
key?: string;
cert?: string;
user?: string;
password?: string;
client_id?: string;
reject_unauthorized?: boolean;
keepalive?: number;
version?: number;
disable_qos?: boolean;
}
export declare const isMqttConfiguration: (x: any) => x is MqttConfiguration;
export interface AdaptiveLightingConfiguration extends Record<string, unknown> {
enabled?: boolean;
min_ct_change?: number;
transition?: number;
}
export declare const isAdaptiveLightingConfiguration: (x: any) => x is AdaptiveLightingConfiguration;
export interface BaseDeviceConfiguration extends Record<string, unknown> {
exclude?: boolean;
excluded_keys?: string[];
excluded_endpoints?: string[];
values?: PropertyValueConfiguration[];
converters?: object;
adaptive_lighting?: AdaptiveLightingConfiguration;
experimental?: string[];
}
export interface DeviceConfiguration extends BaseDeviceConfiguration {
id: string;
included_keys?: string[];
exposes?: ExposesEntry[];
}
export declare const hasOptionalStringArrays: (object: any, ...properties: string[]) => boolean;
export declare const isBaseDeviceConfiguration: (x: any) => x is BaseDeviceConfiguration;
export declare const isDeviceConfiguration: (x: any) => x is DeviceConfiguration;
export interface PropertyValueConfiguration extends Record<string, unknown> {
property: string;
include?: string[];
exclude?: string[];
}
export declare const isPropertyValueConfiguration: (x: any) => x is PropertyValueConfiguration;
//# sourceMappingURL=configModels.d.ts.map