import { FiledistExtractEntry, ResolvedFile, ProgressEvent } from '../types'; import { SourceRuntime } from './source'; export type ResolveOptions = { cwd: string; verbose?: boolean; onProgress?: (event: ProgressEvent) => void; sourceRuntime?: SourceRuntime; /** * When provided, pins each matching package spec to an exact version instead * of resolving from npm/git registries. * Key: original spec string (e.g. "eslint@^8"). Value: exact pinned version. */ lockedVersions?: Map; }; export type ResolveFilesDetailedResult = { files: ResolvedFile[]; relevantPackagesByOutputDir: Map>; noSyncOutputDirs: Set; /** * All packages resolved during traversal. * Key: original spec string. Value: source kind and exact resolved version. */ resolvedPackages: Map; }; /** * Recursively resolve all entries into a flat list of desired files. * * Two entry types are handled: * - Self-package entry (no `package` field): enumerates files directly from the * package context provided by the parent recursion level. * - External-package entry (`package` field set): installs the package, reads its * filedist.sets, and recurses; when the package has no sets, files are enumerated * directly (leaf behaviour). * * Duplicate (outputDir, relPath) pairs are deduplicated; conflicting managed/gitignore * settings for the same destination path throw an error. */ export declare function resolveFiles(entries: FiledistExtractEntry[], options: ResolveOptions): Promise; export declare function resolveFilesDetailed(entries: FiledistExtractEntry[], options: ResolveOptions): Promise; //# sourceMappingURL=resolve-files.d.ts.map