import { HTTPError, HTTPNotFoundError, HTTPForbiddenError } from '../errors';
/**
 * Base error class for file-related errors.
 * Extends the generic HTTPError class to provide more context for file operations.
 */
export declare class FileError extends HTTPError {
    name: string;
}
/**
 * Error thrown when a file is not found.
 */
export declare class FileNotFoundError extends HTTPNotFoundError {
    name: string;
    fileId: number;
    constructor(fileId: number, originalError: HTTPNotFoundError);
}
/**
 * Error thrown when a file operation encounters a permission issue.
 */
export declare class FileForbiddenError extends HTTPForbiddenError {
    name: string;
    fileId?: number;
    /**
     * Creates a new FileForbiddenError instance.
     *
     * @param originalError - The original HTTP forbidden error.
     * @param fileId - Optional file ID to include in the error message.
     */
    constructor(originalError: HTTPForbiddenError, fileId?: number);
}
/**
 * Factory for creating error mappers for file operations.
 */
export declare class FileErrorMapper {
    /**
     * Creates an error mapper function for a specific file ID.
     *
     * @param fileId - The file ID to include in error messages, optional.
     * @returns A function that maps HTTP errors to domain-specific file errors.
     */
    static createMapper(fileId?: number): (error: Error) => Error;
}
