import { generateText } from "ai"; import { type ParsedEntityExtraction } from "./parser"; import { type EntityExtractionObservation } from "./prompts"; /** Re-exported entity extraction result types. */ export type { ParsedEntityExtraction as EntityExtractionResult, EntityExtractionObservation }; /** Re-exported entity and relation types. */ export type { EntityType, ParsedEntity as ExtractedEntity, ParsedRelation as ExtractedRelation, RelationshipType, } from "./parser"; /** Configuration for the AI-powered entity extractor. */ export interface EntityExtractorConfig { provider: string; apiKey: string | undefined; model: string; rateLimitingEnabled: boolean; fallbackProviders?: string[]; } /** * Uses an LLM to extract entities (technologies, libraries, patterns) and * their relationships from observation text. */ export declare class EntityExtractor { private model; private config; _generate: typeof generateText; constructor(config: EntityExtractorConfig); /** * Extract entities and relationships from an observation. * @returns Extracted entities and relations, or null if AI is unavailable. */ extract(observation: EntityExtractionObservation): Promise; } //# sourceMappingURL=entity-extractor.d.ts.map