UNPKG

semantic-ds-toolkit

Version:

Performance-first semantic layer for modern data stacks - Stable Column Anchors & intelligent inference

65 lines 2.06 kB
import { AnchorStoreManager } from '../core/anchor-store'; import { PRAnalysisResult } from './pr-analyzer'; export interface SemanticMapping { id: string; column: string; dataset: string; semantic_type: string; confidence: number; anchor_id?: string; evidence: string[]; quick_accept_url: string; } export interface DriftDetection { column: string; dataset: string; description: string; severity: 'low' | 'medium' | 'high'; suggested_action: string; file: string; } export interface HealthMetrics { coverage: number; driftRisk: 'low' | 'medium' | 'high'; qualityScore: number; mappedColumns: number; totalColumns: number; } export interface SuggestionResult { newMappings: SemanticMapping[]; driftDetections: DriftDetection[]; healthMetrics: HealthMetrics; acceptAllId: string; processingTimeMs: number; } export declare class SuggestionEngine { private anchorStore; private pendingSuggestions; constructor(anchorStore: AnchorStoreManager); generateSuggestions(analysis: PRAnalysisResult): Promise<SuggestionResult>; private generateSemanticMappings; private suggestMappingForColumn; private findSimilarAnchors; private calculateSimilarityScore; private calculateNameSimilarity; private levenshteinDistance; private calculateTypeSimilarity; private normalizeType; private calculatePatternSimilarity; private inferSemanticType; private inferSemanticTypeFromPattern; private suggestMappingsForDataFile; private detectDrift; private calculateHealthMetrics; private generateEvidence; private generateSuggestionId; private generateAcceptAllId; private generateQuickAcceptUrl; acceptSuggestion(suggestionId: string): Promise<boolean>; acceptSuggestionByData(suggestion: SemanticMapping): Promise<boolean>; acceptAllSuggestions(acceptAllId: string): Promise<{ accepted: number; failed: number; }>; } //# sourceMappingURL=suggestion-engine.d.ts.map