import type { GraphNode, GraphenixMetadata } from "@x12i/graphenix-core"; import { FINALIZER_NODE_KIND, TASK_NODE_KIND } from "../constants.js"; import type { AiModelSelection, NodeModelConfig } from "./model-config.js"; export interface NodeRetryPolicy { maxAttempts?: number; backoffMs?: number; [key: string]: unknown; } export interface AuthoringActionConfig { id: string; actionKey: string; config?: Record; inputsConfig?: Record; outputMapping?: Record; modelSelection?: AiModelSelection; } export interface AuthoringTaskConfiguration { modelConfig?: NodeModelConfig; preActions?: AuthoringActionConfig[]; postActions?: AuthoringActionConfig[]; timeoutMs?: number; retryPolicy?: NodeRetryPolicy; [key: string]: unknown; } /** @deprecated Use AuthoringTaskConfiguration. */ export type ExecutableTaskConfiguration = AuthoringTaskConfiguration; export interface ExecutableTaskNodeParameters { skillKey: string; inputsConfig?: Record; taskVariable?: Record; executionMapping?: Record; taskConfiguration?: AuthoringTaskConfiguration; planning?: Record; smartInput?: Record; [key: string]: unknown; } export interface ExecutableFinalizerNodeParameters { finalizerType: string; config: Record; inputs?: Record; outputSchema?: Record; [key: string]: unknown; } export type ExecutableNodeParameters = ExecutableTaskNodeParameters | ExecutableFinalizerNodeParameters; export type ExecutableTaskNode = GraphNode; export type ExecutableFinalizerNode = GraphNode; export type AddTaskNodeInput = Omit & { kind?: typeof TASK_NODE_KIND; }; export type AddFinalizerNodeInput = Omit & { kind?: typeof FINALIZER_NODE_KIND; }; //# sourceMappingURL=executable-nodes.d.ts.map