Coverage for src / lexigram / contracts / lifecycle / exportable.py: 100%
5 statements
« prev ^ index » next coverage.py v7.13.5, created at 2026-08-15 18:58 +0800
« prev ^ index » next coverage.py v7.13.5, created at 2026-08-15 18:58 +0800
1from __future__ import annotations
3from typing import Any, Protocol, runtime_checkable
6@runtime_checkable
7class ExportableProtocol(Protocol):
8 """Protocol for data export."""
10 async def export_data(
11 self,
12 file_format: str,
13 filters: dict[str, Any] | None = None,
14 fields: list[str] | None = None,
15 ) -> bytes: ...
17 def get_supported_formats(self) -> list[str]: ...
20__all__ = ["ExportableProtocol"]