import { ManagedFileMetadata, ResolvedFile, SymlinkConfig } from '../types'; export type ManagedSymlinkTarget = ManagedFileMetadata & { targetPath: string; }; /** * Create symlinks for all files/dirs in outputDir matching source globs. * Each matching source is symlinked into the target directory. * Symlinks are created as relative paths. */ export declare function createSymlinks(outputDir: string, configs: SymlinkConfig[]): Promise; /** * Collect marker entries for managed symlinks created in an output directory. * * Symlink ownership is attributed to the package/config combination that declared * the symlink operation. Duplicate output paths keep the first discovered owner. */ export declare function collectManagedSymlinkEntries(outputDir: string, files: ResolvedFile[]): ManagedFileMetadata[]; export declare function collectManagedSymlinkTargets(outputDir: string, files: ResolvedFile[]): ManagedSymlinkTarget[]; /** Remove only marker-managed symlinks that are no longer desired for this run. */ export declare function removeStaleSymlinks(outputDir: string, managedEntries: ManagedFileMetadata[], desiredPaths: Set): Promise; export declare function isManagedSymlinkEntry(entry: ManagedFileMetadata): boolean; export declare function isManagedFileEntry(entry: ManagedFileMetadata): boolean; export declare function findManagedSymlinkEntries(entries: ManagedFileMetadata[], relevantPackages?: Set): ManagedFileMetadata[]; export declare function uniqueSymlinkConfigs(files: ResolvedFile[]): SymlinkConfig[]; /** * Remove ALL symlinks pointing into outputDir (used during purge). */ export declare function removeAllSymlinks(outputDir: string): Promise; //# sourceMappingURL=symlinks.d.ts.map