100 lines
1.6 KiB
TypeScript
100 lines
1.6 KiB
TypeScript
// model.ts
|
|
export interface Cliente {
|
|
nombre: string;
|
|
}
|
|
|
|
export interface Aula {
|
|
nombre: string;
|
|
clientes: Cliente[];
|
|
}
|
|
|
|
export interface UnidadOrganizativa {
|
|
id: string;
|
|
uuid: string;
|
|
name: string;
|
|
type: string;
|
|
'@id': string;
|
|
clients?: Client[];
|
|
children?: UnidadOrganizativa[];
|
|
parent?: UnidadOrganizativa;
|
|
}
|
|
|
|
export interface OrganizationalUnit {
|
|
"@id": string;
|
|
"@type": string;
|
|
id: number;
|
|
name: string;
|
|
type: string;
|
|
uuid: string;
|
|
}
|
|
|
|
export interface Client {
|
|
mac: any;
|
|
status: any;
|
|
ip: any;
|
|
"@id": string;
|
|
"@type": string;
|
|
id: number;
|
|
name: string;
|
|
ogLive: any;
|
|
pxtTemplate: any;
|
|
type: string;
|
|
serialNumber: string;
|
|
netiface: string;
|
|
organizationalUnit: OrganizationalUnit;
|
|
partitions: any[];
|
|
createdAt: string;
|
|
createdBy: string;
|
|
uuid: string;
|
|
parentName?: string;
|
|
}
|
|
|
|
export interface ClientCollection {
|
|
"@context": string;
|
|
"@id": string;
|
|
"@type": string;
|
|
"hydra:totalItems": number;
|
|
"hydra:member": Client[];
|
|
"hydra:view": {
|
|
"@id": string;
|
|
"@type": string;
|
|
};
|
|
}
|
|
|
|
export interface TreeNode {
|
|
id?: string
|
|
uuid?: string;
|
|
name: string;
|
|
type: string;
|
|
'@id'?: string;
|
|
children?: TreeNode[];
|
|
hasClients?: boolean;
|
|
clients?: Client[];
|
|
ip?: string;
|
|
networkSettings?: Object;
|
|
}
|
|
|
|
export interface FlatNode {
|
|
id?: string;
|
|
name: string;
|
|
type: string;
|
|
level: number;
|
|
expandable: boolean;
|
|
hasClients?: boolean;
|
|
networkSettings?: Object;
|
|
ip?: string;
|
|
'@id'?: string;
|
|
}
|
|
|
|
|
|
export interface Command {
|
|
name: string;
|
|
description?: string;
|
|
}
|
|
|
|
export interface Filter {
|
|
name: string;
|
|
uuid: string;
|
|
}
|
|
|