/// import { Boom } from '@hapi/boom'; import { SocketConfig } from '../Models'; import { BinaryNode } from '../Internal'; /** * 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) => { logout: (msg?: string) => Promise; end: (error: Error | undefined, qr?: boolean) => 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) => boolean | undefined, timeoutMs?: number | undefined) => Promise; addInfoObjects: (name: any, extend: any) => boolean; /** log & process any unexpected errors */ getUser: (name: any) => any; checkAddUser: (name: any) => boolean; checkUser: (name: any) => boolean; sessionsDir: (sessionId?: string | undefined, dir?: string) => string; checkSession: (name: any) => boolean; getSessionKey: (name: any) => string | false; searchObjects: (phone: any) => any; getAll: () => any; checkClient: (name: any) => boolean; deleteToken: (name: any) => boolean; deleteSession: (name: any) => boolean; removeInfoObjects: (name: any, key: any) => boolean; type: "md"; ws: any; ev: import("../Models").OrkestralEventEmitter & { 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("../Models").AuthenticationCreds; keys: import("../Models").SignalKeyStoreWithTransaction; }; signalRepository: import("../Models").SignalRepository; user: import("../Models").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; close: () => void; }; export type Socket = ReturnType;