# API Reference Complete API documentation for genro-treestore. ```{toctree} :maxdepth: 2 store builders resolvers exceptions ``` ## Package Overview ```{mermaid} graph TB subgraph "genro_treestore" INIT[Public API
__init__.py] subgraph "Core" STORE[store/
TreeStore, TreeStoreNode] SER[serialization
TYTX format] SUB[subscription
Event system] end subgraph "Extensions" BUILD[builders/
BuilderBase, HtmlBuilder] RES[resolvers/
CallbackResolver] VAL[validation
ValidationSubscriber] end subgraph "Schema" XSD[xsd/
XsdBuilder] end INIT --> STORE INIT --> BUILD INIT --> RES BUILD --> XSD end ``` ## Module Summary | Module | Description | |--------|-------------| | `store` | Core TreeStore and TreeStoreNode classes | | `builders` | BuilderBase and typed builders (HTML, XSD) | | `resolvers` | Lazy value resolution (Callback, Directory, TxtDoc) | | `exceptions` | Custom exception hierarchy | ## Quick Import ```python from genro_treestore import ( # Core classes TreeStore, TreeStoreNode, # Builders BuilderBase, HtmlBuilder, XsdBuilder, # Builder decorators element, # Resolvers TreeStoreResolver, CallbackResolver, DirectoryResolver, TxtDocResolver, # Validation ValidationSubscriber, # Exceptions TreeStoreError, InvalidChildError, InvalidParentError, MissingChildError, TooManyChildrenError, ) ``` ## Class Hierarchy ```{mermaid} classDiagram class TreeStore { +parent: TreeStoreNode +builder: BuilderBase +set_item() +get_item() +subscribe() } class TreeStoreNode { +label: str +value: Any +attr: dict +resolver: TreeStoreResolver } class BuilderBase { <> +child() } class TreeStoreResolver { <> +load() } class TreeStoreError { <> } TreeStore *-- TreeStoreNode TreeStore --> BuilderBase TreeStoreNode --> TreeStoreResolver InvalidChildError --|> TreeStoreError MissingChildError --|> TreeStoreError TooManyChildrenError --|> TreeStoreError ``` ## See Also - [Quick Start](../guide/quickstart.md) - Getting started - [Path Syntax](../guide/path-syntax.md) - Navigation - [Builders](../guide/builders.md) - Typed APIs