import type { RGBA } from "@opentui/core"; export type Theme = { readonly primary: RGBA; readonly secondary: RGBA; readonly accent: RGBA; readonly error: RGBA; readonly warning: RGBA; readonly success: RGBA; readonly info: RGBA; readonly text: RGBA; readonly textMuted: RGBA; readonly selectedListItemText: RGBA; readonly background: RGBA; readonly backgroundPanel: RGBA; readonly backgroundElement: RGBA; readonly backgroundMenu: RGBA; readonly border: RGBA; readonly borderActive: RGBA; readonly borderSubtle: RGBA; readonly diffAdded: RGBA; readonly diffRemoved: RGBA; readonly diffContext: RGBA; readonly diffHunkHeader: RGBA; readonly diffHighlightAdded: RGBA; readonly diffHighlightRemoved: RGBA; readonly diffAddedBg: RGBA; readonly diffRemovedBg: RGBA; readonly diffContextBg: RGBA; readonly diffLineNumber: RGBA; readonly diffAddedLineNumberBg: RGBA; readonly diffRemovedLineNumberBg: RGBA; readonly markdownText: RGBA; readonly markdownHeading: RGBA; readonly markdownLink: RGBA; readonly markdownLinkText: RGBA; readonly markdownCode: RGBA; readonly markdownBlockQuote: RGBA; readonly markdownEmph: RGBA; readonly markdownStrong: RGBA; readonly markdownHorizontalRule: RGBA; readonly markdownListItem: RGBA; readonly markdownListEnumeration: RGBA; readonly markdownImage: RGBA; readonly markdownImageText: RGBA; readonly markdownCodeBlock: RGBA; readonly syntaxComment: RGBA; readonly syntaxKeyword: RGBA; readonly syntaxFunction: RGBA; readonly syntaxVariable: RGBA; readonly syntaxString: RGBA; readonly syntaxNumber: RGBA; readonly syntaxType: RGBA; readonly syntaxOperator: RGBA; readonly syntaxPunctuation: RGBA; readonly thinkingOpacity: number; _hasSelectedListItemText: boolean; }; export type ThemeColor = Exclude; export type HexColor = `#${string}`; export type RefName = string; export type Variant = { dark: HexColor | RefName; light: HexColor | RefName; }; export type ColorValue = HexColor | RefName | Variant | RGBA | number; export type ThemeV1Json = { $schema?: string; defs?: Record; theme: Omit, "selectedListItemText" | "backgroundMenu"> & { selectedListItemText?: ColorValue; backgroundMenu?: ColorValue; thinkingOpacity?: number; }; };