import type { FrameMetadata, TerminalCell } from "./wire-types.js"; /** Browser theme selection. System follows prefers-color-scheme. */ export type TerminalColorMode = "light" | "dark" | "system"; /** JSON-compatible terminal colors. Every color is an opaque #RRGGBB string. */ export interface TerminalPalette { readonly foreground: string; readonly background: string; /** Exactly 16 entries: black, red, green, yellow, blue, magenta, cyan, white, then their bright variants. */ readonly ansi: readonly string[]; readonly cursor?: string; /** Selected text color; defaults to the palette background. */ readonly selectionForeground?: string; /** Opaque selection fill; defaults to the palette foreground. */ readonly selectionBackground?: string; /** Optional overrides for indices 16 through 255; otherwise the xterm cube and gray ramp apply. */ readonly extended?: Readonly>; } /** Hex1b Dark: muted Tomorrow Night Eighties-derived hues on neutral charcoal. */ export declare const defaultDarkPalette: TerminalPalette; /** Hex1b Light swaps the default neutrals and retunes the same hues for warm stone. */ export declare const defaultLightPalette: TerminalPalette; export declare function normalizeColorMode(value?: unknown): TerminalColorMode; export declare function normalizePalette(value: unknown): TerminalPalette; export interface RenderPalette { foreground: number; background: number; selectionForeground: number; selectionBackground: number; cursor?: number; indexed: Uint32Array; } export declare function compilePalette(palette: TerminalPalette): RenderPalette; export declare function validateColorReference(value: number, underline?: boolean): void; export declare function foregroundColor(cell: TerminalCell, metadata: FrameMetadata, palette: RenderPalette): number; export declare function backgroundColor(cell: TerminalCell, metadata: FrameMetadata, palette: RenderPalette): number; export declare function underlineColor(cell: TerminalCell, metadata: FrameMetadata, palette: RenderPalette): number; //# sourceMappingURL=terminal-palette.d.ts.map