| CConsoleForge.Core.App | Main event loop for a ConsoleForge application |
| CConsoleForge.Styling.Borders | Pre-defined border character sets |
| CConsoleForge.Styling.BorderSpec | Defines the character set for a border style |
| CConsoleForge.Core.Cmd | Factory for creating common command values |
| CConsoleForge.Core.Component | Static helpers for working with IComponent and IComponent<TResult> in parent model Update methods |
| CConsoleForge.Core.ComponentAttribute | Instructs the generator to also emit the Init() method (returns null) and the explicit IComponent<TResult>.Result property implementation when the type implements IComponent<TResult> |
| CConsoleForge.SourceGen.ComponentGenerator | Roslyn incremental source generator that handles the [Component] attribute |
| CConsoleForge.Core.DispatchUpdateAttribute | Instructs the ConsoleForge source generator to produce the Update(IMsg) dispatch method for this partial record or class |
| CConsoleForge.SourceGen.DispatchUpdateGenerator | Roslyn incremental source generator that handles the [DispatchUpdate] attribute |
| CConsoleForge.Core.FocusManager | Stateless helper that traverses a widget tree depth-first and finds all IFocusable instances in declaration order |
| CConsoleForge.Styling.IColor | Abstraction over ANSI/256/TrueColor values |
| CConsoleForge.Core.IHasSubscriptions | Optional interface for models that declare long-running subscriptions |
| CConsoleForge.Core.IModel | The root interface for all ConsoleForge application models |
| CConsoleForge.Core.IComponent | A self-contained sub-program: owns its own state, update logic, and view |
| CConsoleForge.Core.IComponent< out TResult > | A self-contained sub-program that can signal completion by setting Result to a non-null value |
| CConsoleForge.Core.IMsg | Marker interface for all messages flowing through the event loop |
| CConsoleForge.Layout.IRawEscapePayload | Represents a raw terminal escape sequence payload to be emitted at a specific region, bypassing the cell-based render pipeline |
| CConsoleForge.Terminal.KittyPayload | IRawEscapePayload implementation for the Kitty terminal graphics protocol |
| CConsoleForge.Layout.IRenderContext | Passed to IWidget.Render() |
| CConsoleForge.Layout.RenderContext | Concrete implementation of IRenderContext backed by a cell buffer where each cell stores a pre-rendered ANSI string for one character |
| CConsoleForge.Layout.SubRenderContext | A delegating IRenderContext that forwards writes to a parent context but with a restricted sub-region |
| CConsoleForge.Terminal.ITerminal | Thin abstraction over a physical terminal |
| CConsoleForge.Terminal.AnsiTerminal | Production ITerminal backed by Console |
| CConsoleForge.Layout.IWidget | Base interface for all visual elements in the widget tree |
| CConsoleForge.Layout.IContainer | Implemented by widgets that contain and lay out children |
| CConsoleForge.Layout.IFocusable | Extended interface for interactive widgets that can receive keyboard focus |
| CConsoleForge.Layout.ILayeredContainer | Implemented by widgets that hold multiple stacked layers rendered back-to-front (e.g |
| CConsoleForge.Layout.IMeasurable | Implemented by widgets that can report how much space their content wants, which is what makes SizeConstraint.Auto size to content |
| CConsoleForge.Layout.ISingleBodyWidget | Implemented by widgets that wrap a single body child (e.g |
| CConsoleForge.Widgets.ImageWidget | Renders an image inside its allocated terminal region |
| CConsoleForge.Core.KeyMap | Declarative input binding map |
| CConsoleForge.Core.KeyPattern | Pattern for matching keyboard events |
| CConsoleForge.Terminal.KittyProtocol | Encoding helpers for the Kitty terminal graphics protocol |
| CConsoleForge.Layout.LayoutConstraintException | Thrown by LayoutEngine when fixed-size children collectively exceed the available space in a container that has no flex children to absorb the overflow |
| CConsoleForge.Layout.LayoutEngine | Two-pass layout algorithm that resolves widget size constraints into absolute terminal regions |
| CConsoleForge.Layout.ResolvedLayout | Result of layout resolution: maps each widget to its allocated terminal region |
| CConsoleForge.Widgets.RgbaImageData | Pre-decoded RGBA image data for use with ImageWidget's half-block Unicode fallback renderer |
| CConsoleForge.Styling.Style | Immutable value type carrying visual style properties |
| CConsoleForge.Core.Sub | Factory helpers for creating common ISub values |
| CConsoleForge.Terminal.TerminalCapabilities | Detected capabilities of the host terminal |
| CConsoleForge.Terminal.TerminalResizedEventArgs | Event arguments carrying the new terminal dimensions after a resize |
| CConsoleForge.Layout.TextUtils | Terminal-aware text utilities: visual column width, truncation, and padding that correctly handle multi-byte Unicode characters and wide glyphs (CJK ideographs, full-width forms, emoji) which occupy 2 terminal columns |
| CConsoleForge.Styling.ThemeExtensions | Extension methods for Theme that give convenient, typed access to the colours and styles embedded in a theme's Style properties |
| CConsoleForge.Core.ViewDescriptor | Immutable descriptor for a single rendered frame |