from pydantic import BaseModel from typing import Dict, List from models.target import Target class ObjectiveFunction(BaseModel): # minimizing tif/tcc target value is only option currently # as we add more we can build this out to be more dynamic # likely with models representing each objective function type tif_targets: List[Target] tcc_targets: List[Target] objective: "minimize" weight: Dict = {'tif': 1, 'tcc': 1}