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

    Interface TextPoll

    interface TextPoll {
        size: number;
        bind(sock: unknown): () => void;
        end(chat: string): TextPollEnd | null;
        extendDeadline(chat: string, extraMs: number): number | null;
        formatResults(
            results: TextPollResult[] | { results: TextPollResult[] },
        ): string;
        getResults(
            chat: string,
        ):
            | { question: string; results: TextPollResult[]; totalVotes: number }
            | null;
        handler(upsert: { messages: unknown[] }): void;
        isActive(chat: string): boolean;
        onEnd(cb: (result: TextPollEnd) => void): () => void;
        onVote(
            cb: (
                info: {
                    changed: boolean;
                    chat: string;
                    index: number;
                    option: string;
                    user: string;
                },
            ) => void,
        ): () => void;
        render(chat: string): string | null;
        renderLive(chat: string): string | null;
        start(
            chat: string,
            options: {
                durationMs?: number;
                options: string[];
                question: string;
                startedBy?: string;
            },
        ): { chat: string; endsAt: number; options: string[]; question: string };
        unbind(): void;
        vote(
            chat: string,
            user: string,
            optionNumber: number,
        ): "invalid" | "ok" | "already-voted" | "unchanged" | null;
    }
    Index
    size: number
    • Push the deadline out by extraMs. Returns the new endsAt or null.

      Parameters

      • chat: string
      • extraMs: number

      Returns number | null

    • Parameters

      • upsert: { messages: unknown[] }

      Returns void

    • Parameters

      • cb: (
            info: {
                changed: boolean;
                chat: string;
                index: number;
                option: string;
                user: string;
            },
        ) => void

      Returns () => void

    • Ready-to-send ballot card.

      Parameters

      • chat: string

      Returns string | null

    • Live results card with bars while voting is open.

      Parameters

      • chat: string

      Returns string | null

    • Parameters

      • chat: string
      • options: { durationMs?: number; options: string[]; question: string; startedBy?: string }

      Returns { chat: string; endsAt: number; options: string[]; question: string }

    • Record a vote by 1-based option number.

      Parameters

      • chat: string
      • user: string
      • optionNumber: number

      Returns "invalid" | "ok" | "already-voted" | "unchanged" | null