import { EventEmitter } from "node:events"; import { vi } from "vitest"; type BaileysExports = typeof import("@whiskeysockets/baileys"); type FetchLatestBaileysVersionFn = BaileysExports["fetchLatestBaileysVersion"]; type MakeCacheableSignalKeyStoreFn = BaileysExports["makeCacheableSignalKeyStore"]; type MakeWASocketFn = BaileysExports["makeWASocket"]; type UseMultiFileAuthStateFn = BaileysExports["useMultiFileAuthState"]; type DownloadMediaMessageFn = BaileysExports["downloadMediaMessage"]; type ExtractMessageContentFn = BaileysExports["extractMessageContent"]; type GetContentTypeFn = BaileysExports["getContentType"]; type NormalizeMessageContentFn = BaileysExports["normalizeMessageContent"]; type IsJidGroupFn = BaileysExports["isJidGroup"]; type MessageContentInput = Parameters[0]; type MessageContentOutput = ReturnType; type MessageContentType = ReturnType; export type MockBaileysSocket = { ev: EventEmitter; ws: { close: ReturnType; }; sendPresenceUpdate: ReturnType; sendMessage: ReturnType; readMessages: ReturnType; user?: { id?: string; }; }; export type MockBaileysModule = { DisconnectReason: { loggedOut: number; }; extractMessageContent: ReturnType>; fetchLatestBaileysVersion: ReturnType>; getContentType: ReturnType>; isJidGroup: ReturnType>; makeCacheableSignalKeyStore: ReturnType>; makeWASocket: ReturnType>; normalizeMessageContent: ReturnType>; useMultiFileAuthState: ReturnType>; jidToE164?: (jid: string) => string | null; proto?: unknown; downloadMediaMessage?: ReturnType>; }; export declare function mockNormalizeMessageContent(message: MessageContentInput): MessageContentOutput; export declare function mockGetContentType(message: MessageContentInput): MessageContentType; export declare function mockExtractMessageContent(message: MessageContentInput): MessageContentOutput; export declare function mockIsJidGroup(jid: string | undefined | null): boolean; export declare function createMockBaileys(): { mod: MockBaileysModule; lastSocket: () => MockBaileysSocket; }; export {};