import { AbstractCatalog, Item } from "../../lib/catalog/AbstractCatalog"; interface NodeModel { text: string; droppable: boolean; id: string; parent: string; data?: TDataType; children?: NodeModel[]; isSelected?: boolean; isVisible?: boolean; isDraggable?: boolean; isSelectable?: boolean; path?: number[]; pathStr?: string; level?: number; isFirstChild?: boolean; isLastChild?: boolean; } interface NodeData extends Item { } interface RequestData { reqNode: NodeModel[]; reqParent: NodeModel; _method: string; } /** * @deprecated Now is React * // TODO: refactor for react name */ export declare class FrontendCatalog { catalog: AbstractCatalog; constructor(_catalog: AbstractCatalog); setId(id: string): void; getItemType(type: string): import("../../lib/catalog/AbstractCatalog").BaseItem; getAddTemplate(item: any, req: ReqType): Promise<{ type: "component" | "navigation.group" | "navigation.link" | "model" | "model.link"; data: any; }>; getEditTemplate(item: any, id: string | number, req: ReqType, modelId: string | number): Promise<{ type: "component" | "navigation.group" | "navigation.link" | "model" | "model.link"; data: any; }>; getitemTypes(): { type: string; name: string; isGroup: boolean; allowedRoot: boolean; icon: string; actionHandlers: import("../../lib/catalog/AbstractCatalog").ActionHandler[]; }[]; getLocales(req: ReqType): { [key: string]: string; }; getActions(items: NodeModel[], type: string): Promise; handleAction(actionId: string, items: any[], data: any, req: ReqType): Promise; getPopUpTemplate(actionId: string, req: ReqType): Promise; getLink(actionId: string): Promise; getCatalog(): Promise[]>; createItem(data: any, req: ReqType): Promise; getChilds(data: any, req: ReqType): Promise[]>; search(s: string, req: ReqType): Promise[]>; updateTree(data: RequestData, req: ReqType): Promise; updateItem(item: any, modelId: string, data: any, req: ReqType): Promise; deleteItem(item: Item, req: ReqType): Promise<{ ok: boolean; }>; } export declare class FrontendCatalogUtils { /** * Removes unnecessary data from the front */ static refinement>(nodeModel: T): any; static arrayToNode(items: T[], groupTypeName: string): NodeModel[]; static toNode(data: T, groupTypeName: string): NodeModel; static expandTo(vueCatalogData: NodeModel, theseItemIdsNeedToBeOpened: (string | number)[]): NodeModel; static treeToNode(tree: Item[], groupTypeName: string): NodeModel[]; } export {};