import { ChannelCategory, DataTypeType, DeviceCategory, PermissionType, PropertyCategory } from '../devices.constants'; export declare class DeviceChannelSpecModel { category: ChannelCategory; required: boolean; multiple: boolean; } export declare class DeviceSpecModel { category: DeviceCategory; channels: DeviceChannelSpecModel[]; } export declare class DataTypeVariantModel { id: string; data_type: DataTypeType; unit?: string | null; format?: string[] | number[] | null; step?: number | null; description?: { en: string; } | null; } export declare class ChannelPropertySpecModel { category: PropertyCategory; required: boolean; permissions: PermissionType[]; data_type?: DataTypeType; data_types?: DataTypeVariantModel[]; unit: string | null; format: string[] | number[] | null; invalid: string | boolean | number | null; step: number | null; } export declare class ChannelSpecModel { category: ChannelCategory; properties: ChannelPropertySpecModel[]; } export declare class RegisteredDevicesModel { value: number; lastUpdated: Date; } export declare class RegisteredChannelsModel { value: number; lastUpdated: Date; } export declare class UpdatesPerMinModel { value: number; lastUpdated: Date; } export declare class UpdatesTodayModel { value: number; lastUpdated: Date; } export declare class OnlineNowModel { value: number; lastUpdated: Date; } export declare class ModuleStatsModel { registeredDevices: RegisteredDevicesModel; registeredChannels: RegisteredChannelsModel; updatesPerMin: UpdatesPerMinModel; updatesToday: UpdatesTodayModel; onlineNow: OnlineNowModel; } export declare class TimeseriesPointModel { time: string; value: string | number | boolean; } export declare class PropertyTimeseriesModel { property: string; from: string; to: string; bucket: string | null; points: TimeseriesPointModel[]; }