import { AgentsRunDatabaseClient } from "../../db/runtime/runtime-client.js";
import "../../types/index.js";
import { WorkflowExecutionInsert, WorkflowExecutionSelect } from "../../types/entities.js";

//#region src/data-access/runtime/workflowExecutions.d.ts
declare const createWorkflowExecution: (db: AgentsRunDatabaseClient) => (params: WorkflowExecutionInsert) => Promise<WorkflowExecutionSelect>;
declare const getWorkflowExecution: (db: AgentsRunDatabaseClient) => (params: {
  tenantId: string;
  projectId: string;
  id: string;
}) => Promise<WorkflowExecutionSelect | null>;
declare const getWorkflowExecutionByConversation: (db: AgentsRunDatabaseClient) => (params: {
  tenantId: string;
  projectId: string;
  conversationId: string;
}) => Promise<WorkflowExecutionSelect | null>;
declare const updateWorkflowExecutionStatus: (db: AgentsRunDatabaseClient) => (params: {
  tenantId: string;
  projectId: string;
  id: string;
  status: "running" | "suspended" | "completed" | "failed";
  metadata?: Record<string, unknown>;
}) => Promise<WorkflowExecutionSelect | null>;
//#endregion
export { createWorkflowExecution, getWorkflowExecution, getWorkflowExecutionByConversation, updateWorkflowExecutionStatus };