Coverage for src / lexigram / contracts / data / aggregatable.py: 0%
5 statements
« prev ^ index » next coverage.py v7.13.5, created at 2026-08-15 18:57 +0800
« prev ^ index » next coverage.py v7.13.5, created at 2026-08-15 18:57 +0800
1from __future__ import annotations
3from typing import Any, Protocol, runtime_checkable
6@runtime_checkable
7class AggregatableProtocol(Protocol):
8 """Protocol for data aggregation."""
10 async def aggregate(
11 self,
12 group_by: list[str],
13 aggregations: dict[str, str],
14 filters: dict[str, Any] | None = None,
15 ) -> list[dict[str, Any]]: ...
18__all__ = ["AggregatableProtocol"]