import { Node, Relationship, Chunk, OperatorResult } from '../types/graph.js'; import { GraphDatabase } from '../core/graph-database.js'; import { VectorStore } from '../core/vector-store.js'; export declare abstract class BaseOperator { protected graphDb: GraphDatabase; protected vectorStore: VectorStore; protected name: string; protected type: 'node' | 'relationship' | 'chunk' | 'subgraph'; constructor(name: string, type: 'node' | 'relationship' | 'chunk' | 'subgraph', graphDb: GraphDatabase, vectorStore: VectorStore); abstract execute(config: any): Promise; protected validateConfig(config: any, schema: any): Promise; protected createResult(nodes?: Node[], relationships?: Relationship[], chunks?: Chunk[], scores?: Record, metadata?: Record): OperatorResult; protected measureExecutionTime(operation: () => Promise): Promise<{ result: T; executionTime: number; }>; protected normalizeScores(scores: Record): Record; protected combineScores(scores1: Record, scores2: Record, weight1?: number, weight2?: number): Record; protected getConnectedNodes(nodeIds: string[], direction?: 'incoming' | 'outgoing' | 'both'): Promise; protected filterNodesByType(nodes: Node[], types: string[]): Promise; protected enrichWithEmbeddings(nodes: Node[]): Promise; protected calculateRelevanceScore(node: Node, queryEmbedding?: number[], contextNodes?: Node[]): number; protected logExecution(config: any, result: OperatorResult, executionTime: number): Promise; private hashConfig; private calculateAverageScore; protected batchProcess(items: T[], processor: (item: T) => Promise, batchSize?: number): Promise; protected retryOperation(operation: () => Promise, maxRetries?: number, delay?: number): Promise; protected preProcess(config: any): Promise; protected postProcess(result: OperatorResult): Promise; run(config: any): Promise; } //# sourceMappingURL=base-operator.d.ts.map