import { Queue } from "bullmq"; import { AgentQueueManager } from "@policysynth/agents/operations/agentQueueManager.js"; import { PsAgent } from "@policysynth/agents/dbModels/agent.js"; import WebSocket from "ws"; import { YpAgentProductRun } from "../models/agentProductRun.js"; export declare class NotificationAgentQueueManager extends AgentQueueManager { queues: Map; wsClients: Map; constructor(wsClients: Map); sendNotification(agent: PsAgent, agentRun: YpAgentProductRun, action: string, wsClientId: string, status: string, result: any, agentRunId?: number, updatedWorkflow?: YpAgentRunWorkflowConfiguration): Promise; sendNotificationEmail(agent: PsAgent, agentRun: YpAgentProductRun, updatedWorkflow: YpAgentRunWorkflowConfiguration): Promise; goBackOneWorkflowStepIfNeeded(agentRunId: number, status: string, wsClientId: string, currentWorkflowStepIndex?: number | undefined): Promise; advanceWorkflowStepOrCompleteAgentRun(agentRunId: number, status: string, wsClientId: string, currentWorkflowStepIndex?: number | undefined): Promise; static getAgentRun(agentRunId: number): Promise; getQueue(queueName: string): Queue; controlAgent(agentId: number, action: string): Promise; startAgentProcessingWithWsClient(agentId: number, agentRunId: number, wsClientId: string, structuredAnswersOverrides?: YpStructuredAnswer[]): Promise; stopAgentProcessing(agentId: number, wsClientId: string, agentRunId: number): Promise; getAgentStatus(agentId: number): Promise; updateAgentStatus(agentId: number, state: PsAgentStatus["state"], progress?: number, message?: string, details?: Record): Promise; }