@difizen/mana-app
Version:
51 lines • 3.29 kB
TypeScript
import { DisposableCollection } from '@difizen/mana-common';
import type { MenuPath } from '@difizen/mana-core';
import { ManaModule, SelectionService } from '@difizen/mana-core';
import * as React from 'react';
import { LabelProvider } from '../label';
import { TreeNode } from '../tree/tree';
import { TreeDecoratorService } from '../tree/tree-decorator';
import type { NodeProps } from '../tree/tree-protocol';
import { TreeProps } from '../tree/tree-protocol';
import { TreeView, TreeViewDecorator } from '../tree/view';
import { DirNode } from './file-tree';
import { FileTreeModel } from './file-tree-model';
export declare const FILE_TREE_CLASS = "mana-file-tree";
export declare const FILE_STAT_NODE_CLASS = "mana-FileStatNode";
export declare const DIR_NODE_CLASS = "mana-DirNode";
export declare const FILE_STAT_ICON_CLASS = "mana-FileStatIcon";
export declare const FileTreeViewFactory = "file-tree-view-fatory";
import './style/file-icon.less';
export declare const FileTreeViewComponent: React.ForwardRefExoticComponent<React.RefAttributes<HTMLDivElement>>;
export declare const FileTreeViewModule: ManaModule;
export declare class FileTreeView extends TreeView {
view: React.ForwardRefExoticComponent<React.RefAttributes<HTMLDivElement>>;
id: string;
label: import("react/jsx-runtime").JSX.Element;
protected readonly toCancelNodeExpansion: DisposableCollection;
readonly props: TreeProps;
readonly model: FileTreeModel;
readonly treeViewDecorator: TreeViewDecorator;
readonly selectionService: SelectionService;
readonly labelProvider: LabelProvider;
readonly contextMenuPath: MenuPath;
protected readonly decoratorService: TreeDecoratorService;
constructor(props: TreeProps, model: FileTreeModel, treeViewDecorator: TreeViewDecorator, selectionService: SelectionService, labelProvider: LabelProvider, decoratorService: TreeDecoratorService);
createNodeClassNames(node: TreeNode, props: NodeProps): string[];
createContainerAttributes(): React.HTMLAttributes<HTMLElement>;
createNodeAttributes(node: TreeNode, props: NodeProps): React.Attributes & React.HTMLAttributes<HTMLElement>;
protected getNodeTooltip(node: TreeNode): string | undefined;
protected handleDragStartEvent(node: TreeNode, event: React.DragEvent): void;
protected handleDragEnterEvent(node: TreeNode | undefined, event: React.DragEvent): void;
protected handleDragOverEvent(node: TreeNode | undefined, event: React.DragEvent): void;
protected handleDragLeaveEvent(_node: TreeNode | undefined, event: React.DragEvent): void;
protected handleDropEvent(node: TreeNode | undefined, event: React.DragEvent): Promise<void>;
protected getDropTargetDirNode(node: TreeNode | undefined): DirNode | undefined;
protected setTreeNodeAsData(data: DataTransfer, node: TreeNode): void;
protected setSelectedTreeNodesAsData(data: DataTransfer, sourceNode: TreeNode, relatedNodes: TreeNode[]): void;
protected getTreeNodeFromData(data: DataTransfer): TreeNode | undefined;
protected getSelectedTreeNodesFromData(data: DataTransfer): TreeNode[];
protected deflateForStorage(node: TreeNode): object;
protected inflateFromStorage(node: any, parent?: TreeNode): TreeNode;
}
//# sourceMappingURL=file-tree-view.d.ts.map