/**
 * Base error class for all Lisa errors
 */
export declare class LisaError extends Error {
    readonly code: string;
    /**
     * Base Lisa error with error code
     * @param message - Error message description
     * @param code - Machine-readable error code
     */
    constructor(message: string, code: string);
}
/**
 * Error thrown when destination directory is not found
 */
export declare class DestinationNotFoundError extends LisaError {
    readonly path: string;
    /**
     * Thrown when destination directory path does not exist
     * @param path - Path that was not found
     */
    constructor(path: string);
}
/**
 * Error thrown when destination is not a directory
 */
export declare class DestinationNotDirectoryError extends LisaError {
    readonly path: string;
    /**
     * Thrown when destination path exists but is not a directory
     * @param path - Path that is not a directory
     */
    constructor(path: string);
}
/**
 * Error thrown when JSON parsing fails
 */
export declare class JsonParseError extends LisaError {
    readonly filePath: string;
    readonly originalError: Error;
    /**
     * Thrown when JSON file parsing fails
     * @param filePath - Path to the JSON file that failed to parse
     * @param originalError - Underlying parsing error
     */
    constructor(filePath: string, originalError: Error);
}
/**
 * Error thrown when JSON merge fails
 */
export declare class JsonMergeError extends LisaError {
    readonly filePath: string;
    readonly reason: string;
    /**
     * Thrown when JSON merge operation fails
     * @param filePath - Path to the JSON file that failed to merge
     * @param reason - Description of why the merge failed
     */
    constructor(filePath: string, reason: string);
}
/**
 * Error thrown when file operation fails
 */
export declare class FileOperationError extends LisaError {
    readonly operation: string;
    readonly filePath: string;
    readonly originalError: Error;
    /**
     * Thrown when a file operation (read/write/copy) fails
     * @param operation - Name of the operation that failed
     * @param filePath - Path to the file involved in the operation
     * @param originalError - Underlying file system error
     */
    constructor(operation: string, filePath: string, originalError: Error);
}
/**
 * Error thrown when backup/restore fails
 */
export declare class BackupError extends LisaError {
    readonly operation: "backup" | "restore" | "cleanup";
    readonly reason: string;
    /**
     * Thrown when backup, restore, or cleanup operation fails
     * @param operation - Type of backup operation that failed
     * @param reason - Description of why the operation failed
     */
    constructor(operation: "backup" | "restore" | "cleanup", reason: string);
}
/**
 * Error thrown when rollback fails
 */
export declare class RollbackError extends LisaError {
    readonly reason: string;
    /**
     * Thrown when transaction rollback fails
     * @param reason - Description of why rollback failed
     */
    constructor(reason: string);
}
/**
 * Error thrown when a required dependency is missing
 */
export declare class DependencyMissingError extends LisaError {
    readonly dependencies: readonly string[];
    /**
     * Thrown when required dependencies are not available
     * @param dependencies - List of missing dependency names
     */
    constructor(dependencies: readonly string[]);
}
/**
 * Error thrown when user aborts the operation
 */
export declare class UserAbortedError extends LisaError {
    readonly reason: string;
    /**
     * Thrown when user cancels or aborts the operation
     * @param reason - Description of why the operation was aborted
     */
    constructor(reason?: string);
}
/**
 * Error thrown when git working directory has uncommitted changes
 */
export declare class DirtyGitError extends LisaError {
    readonly status: string;
    /**
     * Thrown when git status shows uncommitted changes
     * @param status - Git status output showing the changes
     */
    constructor(status: string);
}
//# sourceMappingURL=index.d.ts.map