/** Minimal socket surface used by login / inbound helpers (Baileys-compatible shape). */
export type WhatsAppSocket = {
    ws?: {
        close?: () => void;
        on?: (event: string, cb: (err: Error) => void) => void;
    };
    /** Baileys uses typed payloads; keep listener loose for assignability under strict `tsc`. */
    ev: {
        on: (event: string, listener: (...args: any[]) => void) => void;
    };
    updateMediaMessage?: (...args: unknown[]) => Promise<unknown>;
    logger?: unknown;
    sendMessage?: (jid: string, content: unknown) => Promise<unknown>;
    sendPresenceUpdate?: (presence: string, jid?: string) => Promise<unknown>;
    readMessages?: (keys: unknown[]) => Promise<unknown>;
    user?: {
        id?: string;
    };
    signalRepository?: {
        lidMapping?: {
            getPNForLID?: (lid: string) => Promise<string | null>;
        };
    };
    groupMetadata?: (jid: string) => Promise<{
        subject?: string;
        participants?: Array<{
            id: string;
        }>;
    }>;
};
export { getWebAuthAgeMs, logoutWeb, logWebSelfId, pickWebChannel, readWebSelfId, WA_WEB_AUTH_DIR, webAuthExists, } from "./auth-store.js";
/**
 * WhatsApp Web (Baileys) is disabled in this build; credentials helpers remain for config UX.
 */
export declare function createWaSocket(_printQr: boolean, _verbose: boolean, _opts?: {
    authDir?: string;
    onQr?: (qr: string) => void;
}): Promise<WhatsAppSocket>;
export declare function waitForWaConnection(sock: WhatsAppSocket | {
    ev: WhatsAppSocket["ev"];
}): Promise<void>;
export declare function getStatusCode(err: unknown): number | undefined;
export declare function formatError(err: unknown): string;
export declare function newConnectionId(): `${string}-${string}-${string}-${string}-${string}`;
