import { IFileOperationResult } from '../interfaces'; import { IFileSystemProvider, IFileSystemProviderWithFileReadWriteCapability, IFileSystemProviderWithOpenReadWriteCloseCapability, FileSystemProviderErrorCode, IFileOperationResult as FileOperationResult, IReadFileOptions_Input, IWriteFileOptions_Input, ICreateFileOptions_Input, IFileSystemProviderWithFileFolderCopyCapability } from '../interfaces'; export declare class FileOperationError extends Error { fileOperationResult: IFileOperationResult; options?: IReadFileOptions_Input & IWriteFileOptions_Input & ICreateFileOptions_Input; constructor(message: string, fileOperationResult: IFileOperationResult, options?: IReadFileOptions_Input & IWriteFileOptions_Input & ICreateFileOptions_Input); static isFileOperationError(obj: unknown): obj is FileOperationError; } export declare function hasReadWriteCapability(provider: IFileSystemProvider): provider is IFileSystemProviderWithFileReadWriteCapability; export declare function hasFileFolderCopyCapability(provider: IFileSystemProvider): provider is IFileSystemProviderWithFileFolderCopyCapability; export declare function hasOpenReadWriteCloseCapability(provider: IFileSystemProvider): provider is IFileSystemProviderWithOpenReadWriteCloseCapability; export declare function etag(stat: { mtime: number; size: number; }): string; export declare function etag(stat: { mtime: number | undefined; size: number | undefined; }): string | undefined; export declare class FileSystemProviderError extends Error { readonly code: FileSystemProviderErrorCode; constructor(message: string, code: FileSystemProviderErrorCode); } export declare function createFileSystemProviderError(error: Error, code: FileSystemProviderErrorCode): FileSystemProviderError; export declare function markAsFileSystemProviderError(error: Error, code: FileSystemProviderErrorCode): Error; export declare function toFileSystemProviderErrorCode(error: Error | undefined | null): FileSystemProviderErrorCode; export declare function toFileOperationResult(error: Error): FileOperationResult;