gridverse-open-low-code-pla.../gridverse/contracts.py

37 lines
644 B
Python

from dataclasses import dataclass, field
from typing import Any, Dict
@dataclass
class LocalProblem:
id: str
description: str
parameters: Dict[str, Any] = field(default_factory=dict)
@dataclass
class SharedVariables:
name: str
value: Any
version: int = 0
@dataclass
class PlanDelta:
id: str
timestamp: float
updates: Dict[str, Any] = field(default_factory=dict)
@dataclass
class ConstraintSet:
name: str
constraints: Dict[str, Any] = field(default_factory=dict)
@dataclass
class DeviceInfo:
device_id: str
device_type: str
metadata: Dict[str, Any] = field(default_factory=dict)