import { Logger } from 'winston';
import { Controller, ErrorHandler, type ControllerCallContext } from './Controller.js';
import { FileContentService } from '../../../utils/FileContentService.js';
import { TreeItem } from '../../../model/TreeItem.js';
import { GitChange } from '../../../git/GitScanner.js';
import { ContainerEngine } from '../../../ContainerEngine.js';
import { FileId } from '../../../model/model.js';
export declare const extToMime: {
    js: string;
    mjs: string;
    css: string;
    txt: string;
    md: string;
    htm: string;
    html: string;
    svg: string;
};
export declare function convertToPreviewUrl(preview_rewrite_rules: string, driveId: string): (file: {
    path: string;
}) => {
    previewUrl: string;
    path: string;
};
export declare class ShareErrorHandler extends ErrorHandler {
    private authContainer;
    catch(err: any): Promise<void>;
}
export declare const CACHE_PATH = ".private/cached_git_status.json";
export declare function getCachedChanges(logger: Logger, transformedFileSystem: FileContentService, contentFileService: FileContentService, googleFileSystem: FileContentService): Promise<GitChange[]>;
export declare function outputDirectory(treeItem: TreeItem): TreeItem[];
export default class FolderController extends Controller {
    private readonly filesService;
    private engine;
    constructor(subPath: string, filesService: FileContentService, engine: ContainerEngine);
    removeFolder(driveId: string, contentFileService: FileContentService, filePath: string): Promise<{
        removed: boolean;
        filePath?: undefined;
    } | {
        removed: boolean;
        filePath: string;
    }>;
    getFolder(ctx: ControllerCallContext): Promise<void>;
    generateChildren(transformedFileSystem: FileContentService, driveId: FileId, subdir: string, dirPath: string): Promise<{
        fileName: string;
        id: string;
        parentId: string;
        path: string;
        realFileName: string;
        title: string;
        mimeType: string | undefined;
        conflicting: import("../../../model/LocalFile.js").ConflictData[] | undefined;
        redirectTo: string | undefined;
    }[]>;
}
//# sourceMappingURL=FolderController.d.ts.map