import { MaizzleConfig } from "../../types/config.js";
//#region src/render/parallel/buildWorker.d.ts
interface BuildWorkerData {
  /** Template paths (glob-relative, as produced on the main thread) for this batch. */
  templatePaths: string[];
  /** Config file path to reload (undefined → load maizzle.config from cwd). */
  configPath?: string;
  /** Serialized, post-beforeCreate config data from the main thread. */
  configData: Partial<MaizzleConfig>;
  outputPath: string;
  outputExtension: string;
  contentBase: string;
}
interface BuildWorkerResult {
  files: string[];
  sfcAfterBuildCount: number;
}
/**
 * Build one batch of templates in a worker thread.
 *
 * Config function hooks (beforeRender/afterRender/afterTransform) can't cross
 * the thread boundary, so the worker reloads the config module to recover them,
 * then overlays the main thread's serialized config DATA on top — so
 * beforeCreate mutations and resolved values win while the reloaded config only
 * backfills the lost functions. beforeCreate/afterBuild are owned by the main
 * thread and never run here.
 */
declare function run(data: BuildWorkerData): Promise<BuildWorkerResult>;
//#endregion
export { BuildWorkerData, BuildWorkerResult, run };
//# sourceMappingURL=buildWorker.d.ts.map