UNPKG

@ayanaware/bentocord

Version:

Bentocord is a Bento plugin designed to rapidly build fully functional Discord Bots.

36 lines (35 loc) 1.48 kB
import { ButtonContext } from '../components/contexts/ButtonContext'; import { SelectContext } from '../components/contexts/SelectContext'; import { Button } from '../components/helpers/Button'; import { Select } from '../components/helpers/Select'; import type { BaseContext } from '../contexts/BaseContext'; import { Prompt, PromptOptions } from './Prompt'; import { AnyPaginator } from './helpers/AnyPaginator'; export interface PaginationOptions extends PromptOptions { /** always force showing page selector; even if there is less then 5 pages */ forcePageSelect?: boolean; } export declare enum PaginationEmojis { FIRST = "\u23EE\uFE0F", PREV = "\u25C0\uFE0F", NEXT = "\u25B6\uFE0F", LAST = "\u23ED\uFE0F", CLOSE = "\u2716\uFE0F" } export declare class PaginationPrompt<T = void, U = T> extends Prompt<T> { readonly paginator: AnyPaginator<U>; protected options: PaginationOptions; protected btnFirst: Button; protected btnPrev: Button; protected btnNext: Button; protected btnLast: Button; protected btnClose: Button; protected sltPage: Select; constructor(ctx: BaseContext, paginator?: AnyPaginator<U>, options?: PaginationOptions); start(): Promise<T>; close(): Promise<void>; draw(): Promise<void>; protected handleButton(btn: ButtonContext): Promise<void>; protected handleSelect(slt: SelectContext): Promise<void>; protected handleText(response: string): Promise<[boolean, T]>; }