import type { IMastraLogger } from '../logger/index.js'; import type { RequestContext } from '../request-context/index.js'; import type { ExecutionGraph } from './execution-engine.js'; import type { Step } from './step.js'; import type { StepFlowEntry, TimeTravelContext, TimeTravelExecutionParams, WorkflowRunState } from './types.js'; export declare function validateStepInput({ prevOutput, step, validateInputs, }: { prevOutput: any; step: Step; validateInputs: boolean; }): Promise<{ inputData: any; validationError: Error | undefined; }>; export declare function validateStepResumeData({ resumeData, step }: { resumeData?: any; step: Step; }): Promise<{ resumeData: any; validationError: Error | undefined; }>; export declare function validateStepSuspendData({ suspendData, step, validateInputs, }: { suspendData?: any; step: Step; validateInputs: boolean; }): Promise<{ suspendData: any; validationError: Error | undefined; }>; export declare function validateStepStateData({ stateData, step, validateInputs, }: { stateData?: any; step: Step; validateInputs: boolean; }): Promise<{ stateData: any; validationError: Error | undefined; }>; export declare function validateStepRequestContext({ requestContext, step, validateInputs, }: { requestContext?: RequestContext; step: Step; validateInputs: boolean; }): Promise<{ validationError: Error | undefined; }>; export declare function getResumeLabelsByStepId(resumeLabels: Record, stepId: string): Record; export declare const runCountDeprecationMessage = "Warning: 'runCount' is deprecated and will be removed on November 4th, 2025. Please use 'retryCount' instead."; /** * Creates a Proxy that wraps execute function parameters to show deprecation warnings * when accessing deprecated properties. * * Currently handles: * - `runCount`: Deprecated in favor of `retryCount`, will be removed on November 4th, 2025 */ export declare function createDeprecationProxy>(params: T, { paramName, deprecationMessage, logger, }: { paramName: string; deprecationMessage: string; logger: IMastraLogger; }): T; export declare const getStepIds: (entry: StepFlowEntry) => string[]; export declare const createTimeTravelExecutionParams: (params: { steps: string[]; inputData?: any; resumeData?: any; context?: TimeTravelContext; nestedStepsContext?: Record>; snapshot: WorkflowRunState; initialState?: any; graph: ExecutionGraph; perStep?: boolean; }) => TimeTravelExecutionParams; /** * Re-hydrates serialized errors in step results back into proper Error instances. * This is useful when errors have been serialized through an event system (e.g., evented engine, Inngest) * and need to be converted back to Error instances with their custom properties preserved. * * @param steps - The workflow step results (context) that may contain serialized errors * @returns The same steps object with errors hydrated as Error instances */ export declare function hydrateSerializedStepErrors(steps: WorkflowRunState['context']): { input?: Record; } & Record>; /** * Cleans step result data by removing internal properties at known structural levels. * * Removes: * - `__state` properties (internal workflow state for state propagation) * - `nestedRunId` from `metadata` objects (internal tracking for nested workflow retrieval) * * ## Why targeted cleaning instead of recursive? * * Internal properties only appear at specific, known locations: * * 1. **`__state`** - Added by step-executor.ts to every step result. For forEach, * suspended iterations store the full result (including __state) while completed * iterations only store the output value. See workflow-event-processor/index.ts:1227-1230. * * 2. **`metadata.nestedRunId`** - Added when nested workflows complete, stored at the * step result level. For forEach with nested workflows, each iteration result can * have this. See workflow-event-processor/index.ts:1449-1453. * * By only cleaning at the step result level and forEach iteration level, we avoid * accidentally stripping user data that happens to use `__state` as a property name * in their actual output values. * * @param stepResult - A step result object, or an array of iteration results (forEach) * @returns The cleaned step result with internal properties removed */ export declare function cleanStepResult(stepResult: unknown): unknown; //# sourceMappingURL=utils.d.ts.map