import type { KnowledgeEntryInput, KnowledgeManifest, KnowledgeNormalizeOptions, KnowledgeNormalizeResult, KnowledgeSource, NormalizedKnowledgeEntry } from "../types/index.js";
/**
 * Resolve one authored entry into a complete `NormalizedKnowledgeEntry`,
 * materializing every omitted optional (optional arrays to `[]`, `body` to "",
 * `kind` to "text", `status` to "active") so downstream code never re-checks
 * it. Authored arrays are cloned so the normalized snapshot is isolated from
 * caller-owned references.
 */
export declare const resolveEntry: (input: KnowledgeEntryInput, version: string) => NormalizedKnowledgeEntry;
/** Expand a build manifest into sources — one per catalog. */
export declare const manifestToSources: (manifest: KnowledgeManifest) => KnowledgeSource[];
/**
 * Resolve and validate every source into normalized entries. `validation.ok`
 * is false when any error-level issue was found; the caller (index builder)
 * must not swap in an index built from an invalid set. Async so the public
 * contract is stable if a future source kind needs asynchronous loading.
 */
export declare const normalizeAndValidate: (sources: KnowledgeSource[], options: KnowledgeNormalizeOptions) => Promise<KnowledgeNormalizeResult>;
