/** * Inngest orchestration layer * * Pure wrapper around Inngest that doesn't change any engine logic. * Creates and manages its own Inngest client internally. * * @module orchestration/inngest */ import type { InngestConfig } from "../core/engine/engine-config.js"; import type { PhaseExecutor } from "../core/execution/phase-executor.js"; import type { SectionData, ProcessOptions, ProcessResult } from "../types.js"; /** * Workflow execution event data */ interface WorkflowEventData { processId: string; sections: SectionData[]; options: ProcessOptions; } /** * Inngest orchestrator for distributed workflow execution * * Provides: * - Automatic Inngest client creation * - Checkpoint-based execution * - Step-by-step workflow orchestration * - State serialization/deserialization * * @note This module uses dynamic imports and types to support optional Inngest dependency */ export declare class InngestOrchestrator { private readonly phaseExecutor; private readonly config; private readonly inngest; private readonly functionPrefix; constructor(phaseExecutor: PhaseExecutor, config: InngestConfig); /** * Get Inngest client instance * * @returns Inngest client for use with serve helpers */ getClient(): unknown; /** * Get Inngest function definitions for registration * * @returns Array of Inngest functions */ getFunctions(): unknown[]; /** * Execute workflow through Inngest (async) * * @param params - Workflow execution parameters * @returns Immediate acknowledgment (workflow runs async) */ execute(params: WorkflowEventData): Promise; /** * Create serve handler for HTTP endpoints * * @returns Serve handler for Next.js/Express */ createServeHandler(): unknown; /** * Create Inngest client from configuration * * @param config - Inngest configuration * @returns Configured Inngest client * @throws Error if Inngest package not installed */ private createInngestClient; /** * Create the main workflow Inngest function * * @returns Inngest function definition */ private createWorkflowFunction; /** * Execute a single dimension group * * @param state - Current process state * @param group - Dimension names to execute * @param dependencyGraph - Full dependency graph * @param options - Process options */ private executeSingleGroup; } export {}; //# sourceMappingURL=inngest-orchestrator.d.ts.map