import { Logger } from '../../types'; import { DirectoryManager } from './directory-manager'; import { LocalDirectoryConfig, DirectoryStructure } from './types'; export interface QuipFolderInfo { id: string; name: string; type: 'private' | 'shared' | 'archive' | 'starred' | 'trash' | 'desktop'; parentPath?: string; fullPath: string; } export interface FolderMappingResult { success: boolean; localPath?: string; quipPath: string; created?: boolean; error?: string; } export interface DocumentPathMapping { documentId: string; documentTitle: string; quipFolderPath: string; localDirectoryPath: string; localFilePath: string; fileName: string; } export declare class FolderStructureMapper { private readonly directoryManager; private readonly config; private readonly logger; private readonly folderMappings; constructor(directoryManager: DirectoryManager, config: LocalDirectoryConfig, logger: Logger); initialize(): Promise; mapQuipFolder(folderInfo: QuipFolderInfo): Promise; mapQuipFolders(folders: QuipFolderInfo[]): Promise; getDocumentLocalPath(documentTitle: string, documentType: string, quipFolderPath: string, exportFormat: 'docx' | 'html' | 'xlsx'): DocumentPathMapping; private createSafeDocumentFileName; getFolderMappings(): Map; clearMappings(): void; getFolderStructureStats(): Promise<{ totalFolders: number; mappedFolders: number; localDirectoryStructure: DirectoryStructure; }>; private countFolders; validateQuipFolderPath(folderPath: string): { valid: boolean; error?: string; }; generateFolderReport(): { mappings: Array<{ quipPath: string; localPath: string; }>; summary: { totalMappings: number; preserveStructure: boolean; baseOutputPath: string; }; }; } //# sourceMappingURL=folder-structure-mapper.d.ts.map