import {Type} from '@angular/core';
import {Routes} from '@angular/router';

import {Editor, TreeNodeData} from 'm2-core';
import {CdDemoComponent} from '../content/abstract/CdDemoComponent';


export enum CdNodeType {
    group = 'group'
    ,component = 'component'
    ,directive = 'directive'
    ,service = 'service'
    ,pipe = 'pipe'
}


export interface CdNode extends TreeNodeData<string> {
    tags: string[];
    type: CdNodeType;
    styleClasses?: string;
    children?: CdNode[];
    componentClass?: Type<CdDemoComponent | Editor>;
    childRoutes?: Routes;
    docsPath: string;
}
