32 lines
540 B
Python
32 lines
540 B
Python
from dataclasses import dataclass
|
|
from typing import Dict, List, Optional
|
|
|
|
|
|
@dataclass
|
|
class TelemetryContract:
|
|
dataset: str
|
|
schema: Dict[str, object]
|
|
privacy_flags: Dict[str, bool]
|
|
retention: Optional[int] = None
|
|
|
|
|
|
@dataclass
|
|
class VisualizationWidget:
|
|
widget_type: str
|
|
aggregations: List[str]
|
|
color_schema: Dict[str, str]
|
|
|
|
|
|
@dataclass
|
|
class AccessPolicy:
|
|
roles: List[str]
|
|
viewers: List[str]
|
|
editors: List[str]
|
|
|
|
|
|
__all__ = [
|
|
"TelemetryContract",
|
|
"VisualizationWidget",
|
|
"AccessPolicy",
|
|
]
|