/** * Typography system for the terminal UI design system. * * Provides text style functions that combine semantic color tokens * with text decorations (bold, italic) to establish visual hierarchy. * * All styles use the ColorTheme so they automatically adapt to * the active theme and color depth. */ import type { ColorTheme } from "./color-engine.ts"; export interface TypographyStyles { /** Main body text - primary content */ text: (s: string) => string; /** Secondary text - metadata, timestamps */ muted: (s: string) => string; /** Tertiary text - hints, disabled */ dim: (s: string) => string; /** Emphasis text - important inline content */ emphasis: (s: string) => string; /** Strong text - key terms, values */ strong: (s: string) => string; /** Accent text - interactive, focus, links */ accent: (s: string) => string; /** Title - section headings (bold + accent) */ title: (s: string) => string; /** Heading - sub-headings (bold + text) */ heading: (s: string) => string; /** Error text */ error: (s: string) => string; /** Warning text */ warning: (s: string) => string; /** Success text */ success: (s: string) => string; } /** * Create typography styles bound to a color theme. */ export declare function createTypography(theme: ColorTheme): TypographyStyles; export interface MessageTypographyStyles { /** User message text */ userMessageText: (s: string) => string; /** Assistant message text */ assistantMessageText: (s: string) => string; /** Custom message label */ customMessageLabel: (s: string) => string; /** Custom message text */ customMessageText: (s: string) => string; } export declare function createMessageTypography(theme: ColorTheme): MessageTypographyStyles; export interface MarkdownTypographyStyles { heading: (s: string) => string; link: (s: string) => string; linkUrl: (s: string) => string; code: (s: string) => string; codeBlock: (s: string) => string; quote: (s: string) => string; hr: (s: string) => string; listBullet: (s: string) => string; } export declare function createMarkdownTypography(theme: ColorTheme): MarkdownTypographyStyles; export interface ToolTypographyStyles { title: (s: string) => string; output: (s: string) => string; diffAdded: (s: string) => string; diffRemoved: (s: string) => string; diffContext: (s: string) => string; } export declare function createToolTypography(theme: ColorTheme): ToolTypographyStyles; export interface SyntaxTypographyStyles { comment: (s: string) => string; keyword: (s: string) => string; function: (s: string) => string; variable: (s: string) => string; string: (s: string) => string; number: (s: string) => string; type: (s: string) => string; operator: (s: string) => string; punctuation: (s: string) => string; } export declare function createSyntaxTypography(theme: ColorTheme): SyntaxTypographyStyles; //# sourceMappingURL=typography.d.ts.map