/// <reference types="../../zlux/zlux-platform/interface/src/index.d.ts" />
import { ElementRef, EventEmitter, OnDestroy, OnInit } from '@angular/core';
import { Observable, Subscription } from 'rxjs';
import { Angular2PluginWindowActions } from '../../../pluginlib/inject-resources';
import { MatDialog } from '@angular/material/dialog';
import { MatSnackBar } from '@angular/material/snack-bar';
import { FileTreeNode } from '../../structures/child-event';
import { UtilsService } from '../../services/utils.service';
import { UssCrudService } from '../../services/uss.crud.service';
import { DownloaderService } from '../../services/downloader.service';
import { SearchHistoryService } from '../../services/searchHistoryService';
import * as i0 from "@angular/core";
export declare class FileBrowserUSSComponent implements OnInit, OnDestroy {
    private elementRef;
    ussSrv: UssCrudService;
    private utils;
    ussSearchHistory: SearchHistoryService;
    dialog: MatDialog;
    snackBar: MatSnackBar;
    downloadService: DownloaderService;
    private log;
    private launchMetadata;
    private pluginDefinition;
    private windowActions;
    path: string;
    selectedNode: any;
    homePath: string;
    root: string;
    rightClickedFile: any;
    private rightClickedEvent;
    private deletionQueue;
    private fileToCopyOrCut;
    data: FileTreeNode[];
    private dataCached;
    showSearch: boolean;
    searchCtrl: any;
    searchValueSubscription: Subscription;
    private ussSearchHistorySubscription;
    private treeComponent;
    pathInputUSS: ElementRef;
    searchUSS: ElementRef;
    hideExplorer: boolean;
    isLoading: boolean;
    private rightClickPropertiesFile;
    private rightClickPropertiesFolder;
    private rightClickPropertiesPanel;
    constructor(elementRef: ElementRef, ussSrv: UssCrudService, utils: UtilsService, ussSearchHistory: SearchHistoryService, dialog: MatDialog, snackBar: MatSnackBar, downloadService: DownloaderService, log: ZLUX.ComponentLogger, launchMetadata: any, pluginDefinition: ZLUX.ContainerPluginDefinition, windowActions: Angular2PluginWindowActions);
    pathChanged: EventEmitter<any>;
    dataChanged: EventEmitter<any>;
    nodeClick: EventEmitter<any>;
    nodeDblClick: EventEmitter<any>;
    nodeRightClick: EventEmitter<any>;
    newFolderClick: EventEmitter<any>;
    newFileClick: EventEmitter<any>;
    fileUploaded: EventEmitter<any>;
    copyClick: EventEmitter<any>;
    deleteClick: EventEmitter<any>;
    ussRenameEvent: EventEmitter<any>;
    rightClick: EventEmitter<any>;
    openInNewTab: EventEmitter<any>;
    inputStyle: any;
    searchStyle: any;
    treeStyle: any;
    showUpArrow: boolean;
    ngOnInit(): void;
    ngOnDestroy(): void;
    getDOMElement(): HTMLElement;
    getSelectedPath(): string;
    loadUserHomeDirectory(): Observable<string>;
    initalizeCapabilities(): void;
    initializeRightClickProperties(): void;
    copyFile(rightClickedFile: any): void;
    cutFile(rightClickedFile: any): void;
    pasteFile(fileNode: any, destinationPath: any, isCut: boolean): void;
    showPropertiesDialog(rightClickedFile: any): void;
    showRenameField(file: any): void;
    showPermissionsDialog(rightClickedFile: any): void;
    showOwnerDialog(rightClickedFile: any): void;
    showDeleteDialog(rightClickedFile: any): void;
    attemptDownload(rightClickedFile: any): void;
    showCreateFolderDialog(rightClickedFile: any): void;
    showCreateFileDialog(rightClickedFile: any): void;
    showUploadDialog(rightClickedFile: any): void;
    copyLink(rightClickedFile: any): void;
    copyPath(rightClickedFile: any): void;
    showTaggingDialog(rightClickedFile: any): void;
    toggleSearch(): void;
    focusSearchInput(attemptCount?: number): void;
    onNodeClick($event: any): void;
    onNodeDblClick($event: any): void;
    onNodeRightClick($event: any): void;
    onPanelRightClick($event: any): void;
    onPathChanged($event: any): void;
    onDataChanged($event: any): void;
    sortFn(a: any, b: any): 1 | -1;
    collapseTree(): void;
    displayTree(path: string, update: boolean): void;
    private refreshHistory;
    clearSearchHistory(): void;
    addChild(node: any, fetch?: boolean, expand?: boolean): void;
    refreshFileMetadata(node: any): void;
    refreshFileMetadatdaUsingPath(path: string): void;
    searchInputChanged(input: string): void;
    filterNodesByLabel(data: any, label: string): void;
    findNodeByPath(data: any, path: string): any;
    updateUss(path: string): void;
    createFile(pathAndName: string, node: any, update: boolean): void;
    createFolder(pathAndName: string, node: any, update: boolean): void;
    deleteFileOrFolder(rightClickedFile: any): void;
    removeChild(node: any): void;
    sendNotification(title: string, message: string): number;
    levelUp(): void;
    getPathFromPathAndName(pathAndName: string): string;
    getNameFromPathAndName(pathAndName: string): string;
    private checkPath;
    checkPathSlash(event: any): void;
    checkIfInDeletionQueueAndMessage(pathAndName: string, message: string): boolean;
    static ɵfac: i0.ɵɵFactoryDeclaration<FileBrowserUSSComponent, [null, null, null, null, null, null, null, null, null, null, { optional: true; }]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<FileBrowserUSSComponent, "file-browser-uss", never, { "inputStyle": { "alias": "inputStyle"; "required": false; }; "searchStyle": { "alias": "searchStyle"; "required": false; }; "treeStyle": { "alias": "treeStyle"; "required": false; }; "showUpArrow": { "alias": "showUpArrow"; "required": false; }; }, { "pathChanged": "pathChanged"; "dataChanged": "dataChanged"; "nodeClick": "nodeClick"; "nodeDblClick": "nodeDblClick"; "nodeRightClick": "nodeRightClick"; "newFolderClick": "newFolderClick"; "newFileClick": "newFileClick"; "fileUploaded": "fileUploaded"; "copyClick": "copyClick"; "deleteClick": "deleteClick"; "ussRenameEvent": "ussRenameEvent"; "rightClick": "rightClick"; "openInNewTab": "openInNewTab"; }, never, never, false, never>;
}
