{
  "version": 1,
  "fileId": "file:1szg1zb:ireaderinteractionservice-cs",
  "fingerprint": "mp1q1e",
  "path": "NexusReader.UI.Shared/Services/IReaderInteractionService.cs",
  "absolutePath": "c:/Users/micht/source/repos/Nexus.Reader/src/NexusReader.UI.Shared/Services/IReaderInteractionService.cs",
  "shortLabel": "IReaderInteractionService",
  "longLabel": "NexusReader.UI.Shared/Services/IReaderInteractionService.cs",
  "purpose": "Defines an interface for UI-level reader interactions (node/block selection, scrolling, highlighting, and text selection) and a small DTO for selection coordinates used across UI clients.",
  "classification": {
    "role": "service",
    "layer": "frontend",
    "confidence": 0.8,
    "evidence": [
      "Service naming pattern",
      "Application/service path heuristic",
      "namespace NexusReader.UI.Shared.Services",
      "interface name IReaderInteractionService and event/notify semantics",
      "file placed in UI.Shared indicating cross-UI usage"
    ]
  },
  "className": "IReaderInteractionService",
  "domainConcepts": [
    "Node",
    "Block",
    "Text selection",
    "SelectionCoordinates"
  ],
  "patterns": [
    "Observer / Event-driven",
    "UI interaction service (pub-sub for UI components)"
  ],
  "keyDetails": "This file is an interface used by UI components to publish and consume reader-related events; implementations will orchestrate raising events and forwarding requests between UI parts.",
  "coverage": {
    "symbolCount": 10,
    "executableSymbolCount": 8,
    "executableSymbolsWithControlFlowCount": 8,
    "groundedEdgeCount": 10,
    "unresolvedReferenceCount": 0,
    "controlFlowFragmentCount": 8,
    "unresolvedJumpCount": 0,
    "unsupportedConstructCount": 0,
    "controlFlowCoverage": 1,
    "requiredDiagramCount": 2,
    "generatedDiagramCount": 2,
    "missingRequiredDiagramCount": 0
  }
}