UNPKG

artemis-code-file-manager

Version:
45 lines (44 loc) 1.31 kB
import { Observable } from 'rxjs'; export type NodeContent<T> = { leafs: T[]; nodes: T[]; }; export interface Dictionary<T> { [Key: string]: T; } export interface INode { id: number; parentId: number; data: any; isLeaf: boolean; children: INode[]; } export interface IDataService<T> { getNodeChildren(node: T): Observable<NodeContent<T>>; createNode(parentNode: T, name: string): Observable<any>; renameNode(node: T, newName: string): Observable<any>; renameLeaf(node: T, newName: string): Observable<any>; deleteNodes(nodes: T[]): Observable<any>; deleteLeafs(nodes: T[]): Observable<any>; uploadFiles(node: T, files: File[]): Observable<any>; download(node: T): Observable<any>; open(node: T): Observable<any>; share(node: T): Observable<any>; rightClick(node: T): Observable<any>; leftClick(node: T): Observable<any>; emptyClick(): Observable<any>; getCurrentPath(path: string): Observable<any>; } export interface IHelperService { getName<T>(data: T): string; getFileType<T>(data: T): string; getLastModified<T>(data: T): string; getSize<T>(data: T): string; } export declare enum AvialableView { List = "List", Icon = "Icon" } export interface NgeExplorerConfig { homeNodeName: string; }