Coverage for src/epublib/types.py: 100%
9 statements
« prev ^ index » next coverage.py v7.10.7, created at 2025-10-06 15:17 -0300
« prev ^ index » next coverage.py v7.10.7, created at 2025-10-06 15:17 -0300
1from pathlib import Path
2from typing import Protocol
4from epublib.nav.resource import NavigationDocument
5from epublib.ncx.resource import NCXFile
6from epublib.package.manifest import BookManifest
7from epublib.package.metadata import BookMetadata
8from epublib.package.spine import BookSpine
9from epublib.resources.manager import ContentDocumentManager, ResourceManager
12class BookProtocol(Protocol):
13 @property
14 def resources(self) -> ResourceManager: ...
16 @property
17 def documents(self) -> ContentDocumentManager: ...
19 @property
20 def manifest(self) -> BookManifest: ...
22 @property
23 def metadata(self) -> BookMetadata: ...
25 @property
26 def spine(self) -> BookSpine: ...
28 @property
29 def nav(self) -> NavigationDocument: ...
31 @property
32 def ncx(self) -> NCXFile | None: ...
34 @property
35 def base_dir(self) -> Path: ...