deviceBinding.d.ts 1.4 KB

123456789101112131415161718192021222324252627282930313233
  1. export interface DeviceBinding {
  2. id?: number;
  3. device_clientid: string;
  4. room_id: number;
  5. device_name?: string;
  6. device_type?: string;
  7. properties?: string;
  8. created_at?: Date;
  9. updated_at?: Date;
  10. }
  11. export declare class DeviceBindingModel {
  12. static getAll(): Promise<DeviceBinding[]>;
  13. static getByRoomId(roomId: number): Promise<DeviceBinding[]>;
  14. static getByDeviceClientId(clientId: string): Promise<DeviceBinding | null>;
  15. static bindDevice(deviceClientId: string, roomId: number): Promise<DeviceBinding>;
  16. static bindDeviceWithDetails(bindingData: Omit<DeviceBinding, 'id' | 'created_at' | 'updated_at'>): Promise<DeviceBinding>;
  17. static unbindDevice(deviceClientId: string): Promise<boolean>;
  18. static updateBinding(id: number, updateData: Partial<Omit<DeviceBinding, 'id' | 'created_at' | 'updated_at'>>): Promise<DeviceBinding>;
  19. static getAvailableDevices(): Promise<any[]>;
  20. static getRoomDevicesWithDetails(roomId: number): Promise<any[]>;
  21. static getDevicesByRoomId(roomId: number): Promise<any[]>;
  22. static getUnboundDevices(): Promise<any[]>;
  23. static getAllDevicesWithBindingStatus(page?: number, pageSize?: number, filters?: {
  24. status?: string;
  25. room_id?: number;
  26. search?: string;
  27. }): Promise<{
  28. devices: any[];
  29. total: number;
  30. }>;
  31. static updateDeviceValue(deviceClientId: string, value: string): Promise<boolean>;
  32. }
  33. //# sourceMappingURL=deviceBinding.d.ts.map