import { RedaksjonEntity, Person, Project, Company, Term, IgnoredTerm } from '../types'; import { DiscoveredContextDir } from '../discovery/types'; export interface ContextInstance { load(): Promise; reload(): Promise; getDiscoveredDirs(): DiscoveredContextDir[]; getConfig(): Record; getContextDirs(): string[]; getPerson(id: string): Person | undefined; getProject(id: string): Project | undefined; getCompany(id: string): Company | undefined; getTerm(id: string): Term | undefined; getIgnored(id: string): IgnoredTerm | undefined; getAllPeople(): Person[]; getAllProjects(): Project[]; getAllCompanies(): Company[]; getAllTerms(): Term[]; getAllIgnored(): IgnoredTerm[]; isIgnored(term: string): boolean; search(query: string): RedaksjonEntity[]; findBySoundsLike(phonetic: string): RedaksjonEntity | undefined; searchWithContext(query: string, contextProjectId?: string): RedaksjonEntity[]; getRelatedProjects(projectId: string, maxDistance?: number): Project[]; saveEntity(entity: RedaksjonEntity, allowUpdate?: boolean): Promise; deleteEntity(entity: RedaksjonEntity): Promise; getEntityFilePath(entity: RedaksjonEntity): string | undefined; hasContext(): boolean; } export interface CreateOptions { startingDir?: string; configDirName?: string; configFileName?: string; /** Explicit context directories to load entities from (bypasses discovery) */ contextDirectories?: string[]; /** Optional GCS-backed context storage configuration */ gcs?: { bucketName: string; basePath: string; projectId?: string; credentialsFile?: string; }; } /** * Create a new context instance using overcontext */ export declare const create: (options?: CreateOptions) => Promise; //# sourceMappingURL=context.d.ts.map