{
  "version": 1,
  "fileId": "file:1mo9e25:iepubreader-cs",
  "fingerprint": "11id7pm",
  "path": "NexusReader.Application/Abstractions/Services/IEpubReader.cs",
  "absolutePath": "c:/Users/micht/source/repos/Nexus.Reader/src/NexusReader.Application/Abstractions/Services/IEpubReader.cs",
  "shortLabel": "IEpubReader",
  "longLabel": "NexusReader.Application/Abstractions/Services/IEpubReader.cs",
  "purpose": "Defines the application service contract for reading and parsing EPUB content for a specific ebook and chapter (async, tenant-aware).",
  "classification": {
    "role": "service",
    "layer": "application",
    "confidence": 0.85,
    "evidence": [
      "Service naming pattern",
      "Application/service path heuristic",
      "File declares an interface IEpubReader in Application.Abstractions.Services namespace",
      "Method GetEpubContentAsync returns a ReaderPageViewModel result and accepts userId and CancellationToken (service contract)"
    ]
  },
  "className": "IEpubReader",
  "domainConcepts": [
    "Ebook",
    "Chapter",
    "EPUB",
    "ReaderPage"
  ],
  "patterns": [
    "Service Interface",
    "Async API"
  ],
  "keyDetails": "Single-method interface; method is async, returns FluentResults-wrapped ReaderPageViewModel, accepts optional userId for tenant isolation and CancellationToken for cancellation.",
  "coverage": {
    "symbolCount": 3,
    "executableSymbolCount": 1,
    "executableSymbolsWithControlFlowCount": 1,
    "groundedEdgeCount": 3,
    "unresolvedReferenceCount": 2,
    "controlFlowFragmentCount": 1,
    "unresolvedJumpCount": 0,
    "unsupportedConstructCount": 0,
    "controlFlowCoverage": 1,
    "requiredDiagramCount": 2,
    "generatedDiagramCount": 2,
    "missingRequiredDiagramCount": 0
  }
}