import { Auth } from './auth'; export interface KamanFile { fileId: string; userId: string; fileName: string; fileType: string; parentFolder: string; lastModified: Date; contentPath?: string; fileIcon?: string; fileExtension?: string; sharedWith?: string[]; lastModifiedBy?: string; size?: number; fileContentType?: string; clickhouseTable?: string; tableSchema?: string; fileHash?: string; } export declare class FileExplorerAPI extends Auth { private baseUrl; constructor(baseUrl: string, apiKey?: string, token?: string); /** * Get files in a specific folder */ getFiles(parentFolder?: string): Promise; /** * Create a new file or folder */ createFile(fileData: Partial): Promise; /** * Upload a file to the server */ uploadFile(parentFolder: string, file: File): Promise; /** * Delete a file */ deleteFile(fileId: string): Promise; /** * Update a file's metadata */ updateFile(fileData: Partial): Promise; /** * Download a file */ downloadFile(fileId: string): Promise; /** * Copy a file */ copyFile(fileId: string, destinationFolder: string): Promise; /** * Get download URL for a file (no token in URL — use downloadFile() for authenticated downloads) */ getDownloadFileUrl(fileId: string): string; } export declare function useFileExplorerApi(baseUrl?: string, apiKey?: string, token?: string): FileExplorerAPI;