Forked from hermes-frontend, stripped openclaw/bun specifics: - Auth tokens: openclaw_session -> nyx_session - Vite proxy: localhost:3003 -> localhost:8000 (assay) - Prod WS: wss://assay.loop42.de/ws - Workspace paths: removed openclaw-specific paths - Added missing deps: @heroicons/vue, overlayscrollbars-vue - Branding: title -> nyx Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
32 lines
1.3 KiB
TypeScript
32 lines
1.3 KiB
TypeScript
/**
|
|
* A node inside the encoding trie used by `encode.ts`.
|
|
*
|
|
* There are two physical shapes to minimize allocations and lookup cost:
|
|
*
|
|
* 1. Leaf node (string)
|
|
* - A plain string (already in the form `"&name;"`).
|
|
* - Represents a terminal match with no children.
|
|
*
|
|
* 2. Branch / value node (object)
|
|
*/
|
|
export type EncodeTrieNode = string | {
|
|
/**
|
|
* Entity value for the current code point sequence (wrapped: `&...;`).
|
|
* Present when the path to this node itself is a valid named entity.
|
|
*/
|
|
value: string | undefined;
|
|
/** If a number, the next code unit of the only next character. */
|
|
next: number | Map<number, EncodeTrieNode>;
|
|
/** If next is a number, `nextValue` contains the entity value. */
|
|
nextValue?: string;
|
|
};
|
|
/**
|
|
* Parse a compact encode trie string into a Map structure used for encoding.
|
|
*
|
|
* Format per entry (ascending code points using delta encoding):
|
|
* <diffBase36>[&name;][{<children>}] -- diff omitted when 0
|
|
* Where diff = currentKey - previousKey - 1 (first entry stores absolute key).
|
|
* `&name;` is the entity value (already wrapped); a following `{` denotes children.
|
|
*/
|
|
export declare function parseEncodeTrie(serialized: string): Map<number, EncodeTrieNode>;
|
|
//# sourceMappingURL=encode-shared.d.ts.map
|