/** * @fileoverview Pipeline Factory Functions (SPEC Section 7.3) * * Factory functions for creating pre-configured pipelines. * * @module pipeline/factory */ import type { LLMPort } from "../core/interfaces/llm-port.js"; import type { PipelinePlugin } from "../plugins/types.js"; import { TranslatorPipeline, type PipelineOptions } from "./pipeline.js"; /** * Create default pipeline (non-overlap, safe). * * Per SPEC Section 7.3: * - Uses SentenceBasedDecomposer (no overlap) * - Uses LLMTranslator * - Uses ConservativeMerger * - Includes orDetector and coverageChecker plugins * * @param llm - LLM port for translation * @param options - Optional pipeline options * @returns Configured TranslatorPipeline */ export declare function createDefaultPipeline(llm: LLMPort, options?: Partial): TranslatorPipeline; /** * Create pipeline with context overlap. * * Per SPEC Section 7.3: * - Uses SlidingWindowDecomposer with overlap * - Overlap is auto-detected from spans; dedup is forced * - Good for long documents where context helps * * @param llm - LLM port for translation * @param options - Optional pipeline options * @returns Configured TranslatorPipeline */ export declare function createContextOverlapPipeline(llm: LLMPort, options?: Partial & { overlapSize?: number; }): TranslatorPipeline; /** * Create high-throughput pipeline (best-effort errors). * * Per SPEC Section 7.3: * - Uses higher concurrency * - Uses best-effort error policy * - Continues on chunk failures * * @param llm - LLM port for translation * @param options - Optional pipeline options * @returns Configured TranslatorPipeline */ export declare function createFastPipeline(llm: LLMPort, options?: Partial): TranslatorPipeline; /** * Create pipeline for testing (no LLM). * * Uses DeterministicTranslator for predictable results. * * @param options - Optional pipeline options * @param plugins - Optional plugins * @returns Configured TranslatorPipeline */ export declare function createTestPipeline(options?: Partial, plugins?: readonly PipelinePlugin[]): TranslatorPipeline; /** * Create fully custom pipeline. * * @param config - Full configuration * @returns Configured TranslatorPipeline */ export interface CustomPipelineConfig { decomposer?: "sliding-window" | "sentence-based"; translator?: "llm" | "deterministic"; merger?: "conservative" | "aggressive"; llm?: LLMPort; options?: PipelineOptions; plugins?: readonly PipelinePlugin[]; } export declare function createCustomPipeline(config: CustomPipelineConfig): TranslatorPipeline; //# sourceMappingURL=factory.d.ts.map