/**
 * Folder-level operations: batch updates, duplicates, metadata export
 */
import type { TagInput } from "../simple/index.js";
import type { DuplicateGroup, FolderScanOptions, FolderUpdateResult } from "./types.js";
/**
 * Update metadata for multiple files in a folder
 *
 * @param updates - Array of objects containing path and tags to update
 * @param options - Update options
 * @returns Results of the update operation
 *
 * @example
 * ```typescript
 * const updates = [
 *   { path: "/music/song1.mp3", tags: { artist: "New Artist" } },
 *   { path: "/music/song2.mp3", tags: { album: "New Album" } }
 * ];
 *
 * const result = await updateFolderTags(updates);
 * const updated = result.items.filter((i) => i.status === "ok").length;
 * console.log(`Updated ${updated} files`);
 * ```
 */
export declare function updateFolderTags(updates: Array<{
    path: string;
    tags: Partial<TagInput>;
}>, options?: {
    continueOnError?: boolean;
    concurrency?: number;
    signal?: AbortSignal;
}): Promise<FolderUpdateResult>;
/**
 * Find duplicate audio files based on metadata
 *
 * @param folderPath - Path to scan for duplicates
 * @param options - Scan options (includes `criteria` for which fields to compare)
 * @returns Groups of potential duplicate files
 */
export declare function findDuplicates(folderPath: string, options?: FolderScanOptions): Promise<DuplicateGroup[]>;
/**
 * Export metadata from a folder to JSON
 *
 * @param folderPath - Path to scan
 * @param outputPath - Where to save the JSON file
 * @param options - Scan options
 */
export declare function exportFolderMetadata(folderPath: string, outputPath: string, options?: FolderScanOptions): Promise<void>;
//# sourceMappingURL=folder-operations.d.ts.map