/** * Shared pagination helpers for the Pi planner list commands. * * Pi's `ctx.ui.select` primitive exposes no max-height / scroll-containment * option (ExtensionUIDialogOptions only carries signal/timeout). Long option * lists (every feature / phase / task) therefore overflow the TUI viewport and * the selection cursor can escape the list at the bottom. * * These helpers keep every page within a bounded size (default 10) so the list * always stays inside its scroll area, and show an explicit next/prev navigation * row in the TUI. Short lists fall through to the original single-call behavior * (no regression on small projects). */ import type { ExtensionContext } from "@earendil-works/pi-coding-agent"; export interface PaginatedSelectOptions { title: string; items: T[]; render: (item: T) => string; pageSize?: number; allowPrev?: boolean; } export declare function paginatedSelect(ctx: ExtensionContext, { title, items, render, pageSize, allowPrev }: PaginatedSelectOptions): Promise; export interface PaginatedNotifyOptions { title: string; lines: string[]; pageSize?: number; } export declare function paginatedNotify(ctx: ExtensionContext, { title, lines, pageSize }: PaginatedNotifyOptions): Promise; //# sourceMappingURL=paginate.d.ts.map