import { WAMessageKey, AnyMessageContent, BaileysEventMap } from '@whiskeysockets/baileys'; import { Config } from './config'; import { Store } from './store'; export type OnQrCode = (qrCode: string, time: number, limit: number) => Promise; export type OnStatus = (text: string, important: boolean) => Promise; export type OnDisconnected = (phone: string, payload: any) => Promise; export type OnNewLogin = (phone: string) => Promise; export type OnReconnect = () => Promise; export declare class SendError extends Error { readonly code: number; readonly title: string; constructor(code: number, title: string); } export interface sendMessage { (_phone: string, _message: AnyMessageContent, _options: any): Promise; } export interface readMessages { (_keys: WAMessageKey[]): Promise; } export interface rejectCall { (_callId: string, _callFrom: string): Promise; } export type Status = { attempt: number; connected: boolean; disconnected: boolean; reconnecting: boolean; connecting: boolean | undefined; }; export type Info = { phone: string; }; export declare const connect: ({ phone, store, onQrCode, onStatus, onDisconnected, onReconnect, onNewLogin, attempts, config, }: { phone: string; store: Store; onQrCode: OnQrCode; onStatus: OnStatus; onDisconnected: OnDisconnected; onReconnect: OnReconnect; onNewLogin: OnNewLogin; attempts: number; config: Partial; }) => Promise<{ event: (event: T, callback: (arg: BaileysEventMap[T]) => void) => void; status: Status; send: sendMessage; read: readMessages; rejectCall: rejectCall; }>;