import type { StatuslineItem } from '../components/statusline-picker.js'; export type AutonomyStage = 'off' | 'suggest' | 'auto' | 'eternal' | 'eternal-parallel'; /** * A statusline chip the user can persistently hide (written to * `statusline.json` and toggled by the `/statusline` command). */ export type StatuslineHiddenItem = StatuslineItem; export interface UseStatuslineStateOptions { model: string; provider: string | undefined; effectiveMaxContext: number | undefined; yolo: boolean; getAutonomy?: (() => AutonomyStage) | undefined; modeLabel: string | undefined; /** * The items the user has chosen to hide from the statusline. * Accepted as either a `Set` (the canonical shape) or * a `readonly string[]` (the shape `App` actually receives from * the `statuslineHiddenItems` prop, which is an array per the * `.wrongstack/statusline.json` schema). The hook stores it * internally as a `Set` and exposes the same. */ statuslineHiddenItems: Set | readonly string[]; } export interface UseStatuslineState { liveModel: string; setLiveModel: (v: string) => void; liveProvider: string; setLiveProvider: (v: string) => void; activeMaxContext: number | undefined; setActiveMaxContext: (v: number | undefined) => void; yoloLive: boolean; setYoloLive: (v: boolean) => void; autonomyLive: AutonomyStage; setAutonomyLive: (v: AutonomyStage) => void; liveModeLabel: string; setLiveModeLabel: (v: string) => void; hiddenItems: StatuslineHiddenItem[]; setHiddenItems: (v: StatuslineHiddenItem[]) => void; sessionCount: number; setSessionCount: (v: number) => void; } export declare function useStatuslineState(opts: UseStatuslineStateOptions): UseStatuslineState; //# sourceMappingURL=use-statusline-state.d.ts.map