import WebSocket from "ws"; import { MockedFunction } from "vitest"; import { ExecutionResultEvent } from "@/schemas"; type MockWebSocket = MockedFunction<() => { send: MockedFunction; close: MockedFunction; addEventListener: MockedFunction; removeEventListener: MockedFunction; }>; export declare const createMockWebSocket: () => MockWebSocket; declare const mockWebSocketDefaultImplementation: () => { send: import("vitest").Mock<(...args: any[]) => any>; close: import("vitest").Mock<(...args: any[]) => any>; addEventListener: import("vitest").Mock<(...args: any[]) => any>; removeEventListener: import("vitest").Mock<(...args: any[]) => any>; }; export { mockWebSocketDefaultImplementation }; export declare const resetMockWebSocket: (mockWebSocket: MockWebSocket) => void; declare const simulateWebSocketEvent: (socketInstance: ReturnType, e: WebSocket.MessageEvent | WebSocket.Event | WebSocket.CloseEvent) => void; export { simulateWebSocketEvent }; declare const simulateHandleOpen: (socketInstance: ReturnType) => void; export { simulateHandleOpen }; declare const simulateStateUpdateSuccess: (socketInstance: ReturnType, sentData: string) => void; export { simulateStateUpdateSuccess }; declare const simulateExecutionResult: (socketInstance: ReturnType, sentData: string, result: Partial & { result_bytes: Buffer; }, options?: { delay: number; }) => void; export { simulateExecutionResult }; export declare const simulateImmediatelyOpenSocket: (mockWebSocket: MockWebSocket) => void; export declare const simulateSocketWithTransitentConnectionErrors: (mockWebSocket: MockWebSocket, options: { numInitialFailures: number; }) => void; export declare const simulateSocketWithConnectionTimeout: (mockWebSocket: MockWebSocket, options: { numTimeouts: number; }) => void; export declare const simulateSocketWithSingleExecution: (mockWebSocket: MockWebSocket) => void; export declare const simulateSocketWithSingleExecutionPaused: (mockWebSocket: MockWebSocket) => { resume: () => void; }; export declare const simulateSocketWithSingleExecutionError: (mockWebSocket: MockWebSocket) => void; export declare const simulateSocketWithConnectionError: (mockWebSocket: MockWebSocket) => void; export declare const simulateSocketWithConnectionClosed: (mockWebSocket: MockWebSocket) => void; export declare const simulateSocketWithMultipleExecutions: (mockWebSocket: MockWebSocket) => void; export declare const simulateSocketWithMultipleExecutionsOneError: (mockWebSocket: MockWebSocket) => void; export declare const expectAllSocketListenersRemoved: (mockWebSocket: MockWebSocket) => void; export declare const getSentMessages: (mockWebSocket: MockWebSocket) => any; export declare const wasSocketClosed: (mockWebSocket: MockWebSocket) => boolean;