export interface PassthroughOptions { /** Project root — the parent of the `quickback/` folder. */ projectRoot: string; /** Output root — where `src/` lives. Usually equals projectRoot. */ outputDir: string; /** Paths the compiler is writing this run, relative to outputDir. */ manifestPaths: Iterable; } export interface PassthroughResult { /** Number of files copied. Zero when the folder is missing or empty. */ copied: number; /** Absolute path of the source folder, for logging — undefined when missing. */ sourceDir?: string; /** Final destination paths, relative to outputDir. */ destPaths: string[]; } export interface PassthroughCollision { /** Source path relative to `quickback//`, POSIX-normalized. */ relPath: string; /** Compiler-manifest path it would overwrite, POSIX-normalized. */ manifestPath: string; } export interface PassthroughSpec { /** Folder under `quickback/`, e.g. `public` or `apps`. */ dirName: string; /** Subdirectory names to prune during the walk. */ skipDirs?: ReadonlySet; /** Builds the error thrown when any file would shadow compiler output. */ collisionError: (collisions: PassthroughCollision[]) => Error; } /** * Shared message body for the passthrough collision errors, so both read * identically apart from the folder they name. */ export declare function collisionMessage(dirName: string, collisions: PassthroughCollision[]): string; /** * Copy `/quickback//**` into `/src/apps/**`. * * Returns `{ copied: 0 }` when the source folder is absent — both folders are * opt-in conventions, not required directories. */ export declare function copyPassthrough(spec: PassthroughSpec, options: PassthroughOptions): Promise; //# sourceMappingURL=copy-passthrough.d.ts.map