import type { MemoryScope } from "./context-item.ts"; import type { MemoryItem, MemoryWriteRequest } from "./memory-provider-contract.ts"; export declare const PI_OKF_PROVIDER_ID = "pi-okf"; export declare const PI_OKF_AUTHORITY = "durable_memory"; export declare const PI_OKF_TYPES: readonly ["Design Decision", "Architecture Concept", "Project Rule Candidate", "Implementation Note", "Debugging Finding", "Invalidated Assumption", "Tooling Playbook", "External Reference", "User Preference", "Capability Doc"]; export type PiOkfType = (typeof PI_OKF_TYPES)[number]; export declare const OKF_MEMORY_LIMITS: Readonly<{ titleChars: 160; descriptionChars: 600; bodyChars: 8000; tagCount: 16; tagChars: 80; evidenceRefCount: 24; evidenceRefChars: 600; }>; export type OkfMemoryDiagnosticCode = "missing_frontmatter" | "invalid_frontmatter" | "invalid_yaml" | "missing_type" | "unknown_type" | "missing_title" | "missing_description" | "missing_pi" | "invalid_scope" | "invalid_authority" | "invalid_project_id" | "invalid_evidence_refs"; export interface OkfMemoryDiagnostic { code: OkfMemoryDiagnosticCode; message: string; } export interface ParseOkfMemoryOptions { providerId?: string; uri?: string; fallbackId?: string; } export interface ParsedOkfMemoryDocument { item?: MemoryItem; body: string; diagnostics: OkfMemoryDiagnostic[]; projectId?: string; } export interface OkfMemoryDocumentInput { type: PiOkfType; title: string; description: string; scope: MemoryScope; body: string; tags?: string[]; timestamp?: string; evidenceRefs?: string[]; /** Stable project identity for project-scoped managed records. */ projectId?: string; } /** One bounded validation path shared by reflection parsing and the durable OKF writer. */ export declare function validateOkfMemoryDocumentInput(input: OkfMemoryDocumentInput, options?: { projectOnly?: boolean; requireEvidence?: boolean; }): string[]; export interface OkfProjectRulePromotionRequest { item: MemoryItem; approvalId?: string; trustedConfigPath?: string; } export type OkfProjectRulePromotionRejection = "not_project_rule_candidate" | "missing_explicit_promotion_authority" | "stale_or_conflicting_memory"; export declare function parseOkfMemoryDocument(content: string, options?: ParseOkfMemoryOptions): ParsedOkfMemoryDocument; export declare function formatOkfMemoryDocument(input: OkfMemoryDocumentInput): string; export declare function okfMemoryItemToWriteRequest(item: MemoryItem, reason: string): MemoryWriteRequest; export declare function validateOkfProjectRulePromotion(request: OkfProjectRulePromotionRequest): OkfProjectRulePromotionRejection[]; //# sourceMappingURL=okf-memory.d.ts.map