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

1from __future__ import annotations 

2 

3from typing import Any, Protocol, runtime_checkable 

4 

5 

6@runtime_checkable 

7class ExportableProtocol(Protocol): 

8 """Protocol for data export.""" 

9 

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: ... 

16 

17 def get_supported_formats(self) -> list[str]: ... 

18 

19 

20__all__ = ["ExportableProtocol"]