export declare const WILDCARD: {}; declare class TrieNode { private _valueCombine; value: VCombined | undefined; children: Map>; constructor(valueCombine: (one: VCombined | undefined, two: V) => VCombined); iterate(keyPrefix: Array): Generator<[Array, VCombined | undefined]>; addValue(value: V): void; addChild(key: K | typeof WILDCARD): TrieNode; getChild(key: K | typeof WILDCARD, allowWildcard?: boolean): TrieNode | undefined; } /** A simple Trie-based key-value store. */ export default class Trie { root: TrieNode; constructor(valueCombine: (one: VCombined | undefined, two: V) => VCombined); [Symbol.iterator](): Iterator<[Array, VCombined | undefined]>; insert(sequence: Array, value: V): void; search(sequence: K[]): VCombined | undefined; } export {};