Files
template-app/modules/knowledge/contract/collections.ts
T
2026-11-14 09:56:45 +00:00

21 lines
1.0 KiB
TypeScript

// The live collection of the knowledge module (umbrella TS6.1). The live server announces a change of
// `knowledge_document` -- an index asked for, a job taking it, the platform answering indexed or failed, a
// removal -- as `{ entity: "knowledge.document", id }`, ids only; a reader reads the document back through
// `knowledge.document.getMany`, so the procedure's permission and the repository's tenant wall decide what a
// member sees. A topic is a project, so a page that shows one collection filters the rows by its name.
// `pnpm kit check` refuses a collection without its batch-get procedure.
import type { ModuleCollection } from "@conusai-kit/core"
export const DOCUMENT_COLLECTION = {
entity: "knowledge.document",
table: "knowledge_document",
key: "documentId",
scopeLevel: "project",
read: "knowledge.knowledge.search",
list: "knowledge.document.list",
getMany: "knowledge.document.getMany",
} as const satisfies ModuleCollection
export const KNOWLEDGE_COLLECTIONS: readonly ModuleCollection[] = [DOCUMENT_COLLECTION]