import type { HTMLAttributes } from "react"; /** * MessageBranchSelector — controlled navigator across alternative message * branches (e.g. regenerated responses): "‹ 2 / 5 ›" with prev/next buttons. * * Fully controlled (M19 ADR D3): the consumer owns `index` and reacts to * `onPrev` / `onNext`; regenerate / streaming is a platform concern, not the DS. * Prev is disabled at the first branch, next at the last. With a single branch * (`count <= 1`) there is nothing to navigate, so it renders nothing. * * setI(i - 1)} onNext={() => setI(i + 1)} /> */ export interface MessageBranchSelectorProps extends Omit, "onChange"> { /** Zero-based index of the active branch. */ index: number; /** Total number of branches. */ count: number; /** Navigate to the previous branch. */ onPrev: () => void; /** Navigate to the next branch. */ onNext: () => void; /** Disable both controls (e.g. while a branch is loading). */ disabled?: boolean; } declare const MessageBranchSelector: import("react").ForwardRefExoticComponent>; export { MessageBranchSelector };