import type { SessionStatus } from "@opengeni/sdk"; import { type OpenGeniText } from "./messages/runtime.js"; /** Status token family (`--og-color-status-`) for a session status. */ export type SessionStatusTone = "queued" | "running" | "waiting" | "idle" | "failed" | "cancelled"; /** * The status a person sees. `blocked` is a `requires_action` session whose * next turn the runtime refused to start (an admission block): nothing is * asked of the person, so it must not read as "Waiting on you". Accepted work * is kept, and Resume (or a new message) rechecks and starts it again. */ export type SessionDisplayStatus = SessionStatus | "blocked"; /** True when a `requires_action` session is held by an admission block, not by a person. */ export declare function sessionAdmissionBlocked(session: { status: SessionStatus; admissionBlock?: unknown; }): boolean; /** The status to present for a session (or a list row carrying its admission block). */ export declare function sessionDisplayStatus(session: { status: SessionStatus; admissionBlock?: unknown; }): SessionDisplayStatus; /** Renderer-neutral session status presentation: label, color family and liveness. */ export declare const SESSION_STATUS_PRESENTATION: (t: OpenGeniText) => Record; /** * The status badge's color tokens (text, border and its alpha); the fill is the * status color at 10%. Mirrors the web badge classes, for non-DOM renderers. */ export declare const SESSION_STATUS_BADGE: Record;