Squash-merge lib-standardisation: adopt repo standards across packaging, tooling, docs, and CI. - standardize pyproject.toml (canonical packaging, lint config, extras, GSDFC pydoclint) - add py.typed marker, modernize type hints and Google-style docstrings - nest generated docs under docs/lib and docs/mcp; add hand-written wiki - adopt standard Type A PyPI CI pipeline (tag==version guard + quality gate) - promote generated CHANGELOG.md; bump version to 0.0.3
13 lines
309 B
Python
13 lines
309 B
Python
from abc import abstractmethod
|
|
from typing import Generic, TypeVar
|
|
|
|
from omniread.core.content import ContentType
|
|
from omniread.core.parser import BaseParser
|
|
|
|
T = TypeVar("T")
|
|
|
|
class PDFParser(BaseParser[T], Generic[T]):
|
|
supported_types: set[ContentType]
|
|
@abstractmethod
|
|
def parse(self) -> T: ...
|