21 lines
398 B
Python
21 lines
398 B
Python
from typing import Dict, List, Optional
|
|
|
|
from pydantic import BaseModel
|
|
|
|
__all__ = ("TaskPreset", "FilePreset", "Preset")
|
|
|
|
|
|
class TaskPreset(BaseModel):
|
|
conditions: List[str]
|
|
variables: Optional[Dict[str, str]]
|
|
commands: List[str]
|
|
|
|
|
|
class FilePreset(BaseModel):
|
|
filename: str
|
|
tasks: Dict[str, Dict[str, TaskPreset]]
|
|
|
|
|
|
class Preset(BaseModel):
|
|
presets: Dict[str, FilePreset]
|