ota.d.ts 1.2 KB

123456789101112131415161718192021222324252627
  1. export interface OTATask {
  2. id?: number;
  3. device_id: string;
  4. firmware_id: number;
  5. status: 'pending' | 'downloading' | 'installing' | 'success' | 'failed';
  6. progress: number;
  7. error_message?: string;
  8. start_time?: Date;
  9. end_time?: Date;
  10. created_at?: Date;
  11. updated_at?: Date;
  12. }
  13. export declare class OTATaskModel {
  14. static create(taskData: Omit<OTATask, 'id' | 'created_at' | 'updated_at'>): Promise<OTATask>;
  15. static getById(id: number): Promise<OTATask | null>;
  16. static getByDeviceId(deviceId: string): Promise<OTATask[]>;
  17. static getAll(): Promise<OTATask[]>;
  18. static getByStatus(status: string): Promise<OTATask[]>;
  19. static getByDeviceIdAndStatus(deviceId: string, status: string): Promise<OTATask[]>;
  20. static getPendingTasksByDeviceId(deviceId: string): Promise<OTATask[]>;
  21. static getIncompleteTasksByDeviceId(deviceId: string): Promise<OTATask[]>;
  22. static updateStatusAndProgress(id: number, status: OTATask['status'], progress: number): Promise<boolean>;
  23. static updateResult(id: number, status: 'success' | 'failed', errorMessage?: string): Promise<boolean>;
  24. static delete(id: number): Promise<boolean>;
  25. static createTable(): Promise<void>;
  26. }
  27. //# sourceMappingURL=ota.d.ts.map