import type { TaskContext, EntityType } from '../protocol.js'; /** * Full context containing all available context information. */ export interface FullContext { globalContext: string; projectContext: string; entityContext: string; symbols: ReadonlyMap; taskTokens: Readonly>; combined: string; } /** * Context provider for unified access to different context levels. */ export declare class ContextProvider { private vaultRoot; private taskContext; private cache; private symbols; private cacheMaxAgeMs; constructor(vaultRoot: string, taskContext: TaskContext); /** * Create a context provider from the current environment. */ static create(taskContext: TaskContext): Promise; /** * Initialize default symbols. */ private initializeDefaultSymbols; /** * Get the global symbol table. */ getGlobalSymbols(): ReadonlyMap; /** * Get a single symbol value. */ getSymbol(key: string): string | undefined; /** * Get the current task context. */ getTaskContext(): TaskContext; /** * Get tokens from the task context. */ getTaskTokens(): Readonly>; /** * Get global context from vault root. */ getGlobalContext(): Promise; /** * Get vault context from vault root .vault.md. */ getVaultContext(): Promise; /** * Get context for a specific entity type. */ getEntityContext(entity: EntityType): Promise; /** * Get the full context chain from root to entity. */ getEntityContextChain(entity: EntityType): Promise; /** * Get all relevant context for a task. */ getFullContext(entity: EntityType): Promise; /** * Invalidate cache for a specific path or all cache. */ invalidateCache(path?: string): void; /** * Get cached context or load it. */ private getCachedContext; } //# sourceMappingURL=provider.d.ts.map