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
12 lines
398 B
Python
12 lines
398 B
Python
from abc import ABC, abstractmethod
|
|
from collections.abc import Iterator
|
|
from typing import Any
|
|
|
|
class MailIntakeAdapter(ABC):
|
|
@abstractmethod
|
|
def iter_message_refs(self, query: str) -> Iterator[dict[str, str]]: ...
|
|
@abstractmethod
|
|
def fetch_message(self, message_id: str) -> dict[str, Any]: ...
|
|
@abstractmethod
|
|
def fetch_thread(self, thread_id: str) -> dict[str, Any]: ...
|