import IProperties from './IProperties'; export interface IContainerModel { children: IContainerModel[] parent: IContainerModel | null properties: IProperties userData: Record } export class ContainerModel implements IContainerModel { public children: IContainerModel[]; public parent: IContainerModel | null; public properties: IProperties; public userData: Record; constructor( parent: IContainerModel | null, properties: IProperties, children: IContainerModel[] = [], userData = {}) { this.parent = parent; this.properties = properties; this.children = children; this.userData = userData; } };