import { type StatusLineFields } from './render/status-line-format.js'; export type { StatusLineFields } from './render/status-line-format.js'; interface StatusLineOpts { stream?: NodeJS.WriteStream; force?: boolean; throttleMs?: number; tickMs?: number; } export declare class StatusLine { private readonly stream; private readonly force; private readonly throttleMs; private readonly tickMs; private tickTimer; private started; private lastRepaint; private lastFields; private resizeUnsub; private resizeImmediateUnsub; private lastPaintedRow; private preResizePaintedRow; private extraRows; private afterScrollRestore; constructor(opts?: StatusLineOpts); private get enabled(); start(): void; private resetGeometry; private onResize; repaint(fields: StatusLineFields): void; flush(): void; setExtraRows(n: number): void; getExtraRows(): number; setAfterScrollRestore(cb: (() => void) | null): void; rearm(): void; withFullScrollRegion(fn: () => T): T; stop(): void; private formatLine; private currentRows; private paintRow; private writeScrollRegion; private eraseReservedBand; }