import type { BackgroundJob } from "../../app/ports/jobs-port.js"; import type { InkTheme, ThemeToken } from "../render/ink-theme.js"; import { type PanelFrameInput } from "./panel-frame.js"; import { type PanelKeyResult } from "./panel-effect.js"; export interface JobsPanelState { readonly cursor: number; readonly top: number; } export declare const JOBS_INITIAL_STATE: JobsPanelState; interface JobPresentation { readonly glyph: string; readonly token: ThemeToken; readonly label: string; } export declare function jobPresentation(ink: InkTheme, job: BackgroundJob): JobPresentation; export interface JobsKeyInput { readonly state: JobsPanelState; readonly chord: string; readonly jobs: readonly BackgroundJob[]; readonly rows: number; } export declare function jobsKey(input: JobsKeyInput): PanelKeyResult; export interface JobsViewInput { readonly ink: InkTheme; readonly columns: number; readonly rows: number; readonly jobs: readonly BackgroundJob[]; readonly state: JobsPanelState; readonly now: number; } export declare function jobsView(input: JobsViewInput): PanelFrameInput; export {};