import { MapOptions, SerializableFunction, ThreadOptions } from '../types'; import { ThreadTS } from './threadts'; /** * Pipeline operation definition for lazy evaluation. */ export interface PipelineOperation { type: string; fn?: SerializableFunction; options?: MapOptions | ThreadOptions; initialValue?: unknown; count?: number; /** Step for window operations */ step?: number; } /** * List of terminal operation types */ export declare const TERMINAL_OPERATIONS: readonly ["reduce", "forEach", "find", "findIndex", "findLast", "findLastIndex", "some", "every", "count", "groupBy", "partition", "first", "last", "isEmpty", "sum", "average", "min", "max", "join", "includes"]; export type TerminalOperationType = (typeof TERMINAL_OPERATIONS)[number]; /** * Check if an operation type is a terminal operation. */ export declare function isTerminalOperation(type: string): boolean; /** * Executes an intermediate pipeline operation. * Shared between Pipeline and TerminalPipeline to avoid code duplication. * * @param data - Current pipeline data * @param op - Operation to execute * @param threadts - ThreadTS instance for parallel operations * @returns Transformed data array */ export declare function executeIntermediateOperation(data: unknown[], op: PipelineOperation, threadts: ThreadTS): Promise; /** * Executes a terminal pipeline operation. * Shared between Pipeline and TerminalPipeline to avoid code duplication. * * @param data - Current pipeline data * @param op - Operation to execute * @param threadts - ThreadTS instance for parallel operations * @returns Final result value */ export declare function executeTerminalOperation(data: unknown[], op: PipelineOperation, threadts: ThreadTS): Promise; //# sourceMappingURL=pipeline-operations.d.ts.map