@japofc/baileys - v2.4.7
    Preparing search index...

    Interface MessageDedupe

    Message de-duplication / idempotency guard — a bounded LRU of message keys already handled, so a bot doesn't reply twice when WhatsApp re-delivers a message (reconnect, history sync, placeholder resend, retries).

    interface MessageDedupe {
        size: number;
        add(
            input:
                | string
                | { fromMe?: boolean; id?: string; remoteJid?: string }
                | { key?: any }
                | null
                | undefined,
        ): void;
        clear(): void;
        delete(
            input:
                | string
                | { fromMe?: boolean; id?: string; remoteJid?: string }
                | { key?: any }
                | null
                | undefined,
        ): boolean;
        has(
            input:
                | string
                | { fromMe?: boolean; id?: string; remoteJid?: string }
                | { key?: any }
                | null
                | undefined,
        ): boolean;
        seen(
            input:
                | string
                | { fromMe?: boolean; id?: string; remoteJid?: string }
                | { key?: any }
                | null
                | undefined,
        ): boolean;
    }
    Index
    size: number

    Number of keys currently tracked.

    • Record a key without returning its previous state.

      Parameters

      • input:
            | string
            | { fromMe?: boolean; id?: string; remoteJid?: string }
            | { key?: any }
            | null
            | undefined

      Returns void

    • Forget a single key.

      Parameters

      • input:
            | string
            | { fromMe?: boolean; id?: string; remoteJid?: string }
            | { key?: any }
            | null
            | undefined

      Returns boolean

    • Check membership without recording.

      Parameters

      • input:
            | string
            | { fromMe?: boolean; id?: string; remoteJid?: string }
            | { key?: any }
            | null
            | undefined

      Returns boolean

    • True if already recorded (and still fresh); records it when new.

      Parameters

      • input:
            | string
            | { fromMe?: boolean; id?: string; remoteJid?: string }
            | { key?: any }
            | null
            | undefined

      Returns boolean