35 lines
882 B
TypeScript
35 lines
882 B
TypeScript
|
|
import type { IAgentDefinition, IAgentStatus } from './agent.js';
|
||
|
|
import type { IAuditReceipt } from './audit.js';
|
||
|
|
import type { IDashboardDefinition } from './dashboard.js';
|
||
|
|
import type { IDeviceDefinition, IRoomDefinition } from './device.js';
|
||
|
|
import type { IApprovalRequest } from './tool.js';
|
||
|
|
|
||
|
|
export interface IHomeMember {
|
||
|
|
id: string;
|
||
|
|
name: string;
|
||
|
|
initials: string;
|
||
|
|
present: boolean;
|
||
|
|
locationLabel?: string;
|
||
|
|
eta?: string;
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface IHomeDefinition {
|
||
|
|
id: string;
|
||
|
|
name: string;
|
||
|
|
address?: string;
|
||
|
|
timezone: string;
|
||
|
|
members: IHomeMember[];
|
||
|
|
rooms: IRoomDefinition[];
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface IHomeSnapshot {
|
||
|
|
home: IHomeDefinition;
|
||
|
|
devices: IDeviceDefinition[];
|
||
|
|
agents: IAgentDefinition[];
|
||
|
|
agentStatuses: IAgentStatus[];
|
||
|
|
approvals: IApprovalRequest[];
|
||
|
|
dashboards: IDashboardDefinition[];
|
||
|
|
receipts: IAuditReceipt[];
|
||
|
|
createdAt: string;
|
||
|
|
}
|