/// /// import { Boom } from '@hapi/boom'; import { SocketConfig } from '../Types'; import { BinaryNode } from '../WABinary'; import { WebSocketClient } from './Client'; /** * Connects to WA servers and performs: * - simple queries (no retry mechanism, wait for connection establishment) * - listen to messages and emit events * - query phone connection */ export declare const makeSocket: (config: SocketConfig) => { type: "md"; ws: WebSocketClient; ev: import("../Types").BaileysEventEmitter & { process(handler: (events: Partial) => void | Promise): () => void; buffer(): void; createBufferedFunction(work: (...args: A) => Promise): (...args: A) => Promise; flush(force?: boolean | undefined): boolean; isBuffering(): boolean; }; authState: { creds: import("../Types").AuthenticationCreds; keys: import("../Types").SignalKeyStoreWithTransaction; }; signalRepository: import("../Types").SignalRepository; readonly user: import("../Types").Contact | undefined; generateMessageTag: () => string; query: (node: BinaryNode, timeoutMs?: number) => Promise; waitForMessage: (msgId: string, timeoutMs?: number | undefined) => Promise; waitForSocketOpen: () => Promise; sendRawMessage: (data: Uint8Array | Buffer) => Promise; sendNode: (frame: BinaryNode) => Promise; logout: (msg?: string) => Promise; end: (error: Error | undefined) => void; onUnexpectedError: (err: Error | Boom, msg: string) => void; uploadPreKeys: (count?: number) => Promise; uploadPreKeysToServerIfRequired: () => Promise; requestPairingCode: (phoneNumber: string) => Promise; /** Waits for the connection to WA to reach a state */ waitForConnectionUpdate: (check: (u: Partial) => Promise, timeoutMs?: number | undefined) => Promise; sendWAMBuffer: (wamBuffer: Buffer) => Promise; }; export type Socket = ReturnType;