import { type KnowledgeAdapter, type StoreAdapter, type StoreOps } from "@vendoai/core"; /** The built-in local lexical engine (free tier): keyword retrieval over the * host's own store, in the knowledge-owned collections. Honestly * keyword-grade — deterministic term-frequency ranking with title/heading * boosts, no embeddings, no fuzziness. * * Intents: `chat` ranks token matches over chunks; `deep` is an honest no-op * escalation for a lexical engine (same retrieval — engines behind the wire do * real agentic deep search); `schema` is exact term/title lookup over * glossary/api docs where empty means not-found. Scores are engine-relative * and zero-match queries return zero hits. * * Zero-config: `knowledge: vendoKnowledge()` — createVendo injects the * composed store. Pass `{ store }` to keep the knowledge tables in a different * database (BYO rule), and `{ ops }` alongside it for that same store's * named-operation surface when the composition could resolve one; until an * engine is bound, operations fail loudly rather than pretending to be an empty * corpus. */ export declare function vendoKnowledge(options?: { store?: StoreAdapter; /** The named-operation surface (`StoreOps`) over that SAME store, when the * composition could resolve one (`selectStoreOps` answers `undefined` for a * store with neither its own ops nor a SQL handle). Both drawers this engine owns — the doc rows and * the chunk rows — are reached through `ops.engine.*`, so the allowlist gate * applies to both. Unset, the same seven verbs are served straight off the * adapter's own record doors (`engineOverAdapter`), which is what a host's * BYO `StoreAdapter` gets. */ ops?: StoreOps; }): KnowledgeAdapter; /** The composition seam's half of zero-config local knowledge (server.ts `selectKnowledge`): hand a store-less `vendoKnowledge()` the store createVendo composed. Everything else — an engine the host gave its own store, a cloud/BYO/custom adapter — passes through untouched, so this can sit unconditionally on the explicit-adapter rung. Hosts never call it; it is how `knowledge: vendoKnowledge()` gets the store the docs promise without any host plumbing. */ export declare function bindKnowledgeStore(adapter: KnowledgeAdapter, store: StoreAdapter): KnowledgeAdapter; //# sourceMappingURL=lexical.d.ts.map