Files
WGDashboard/src/modules/WireguardConfigurationInfo.py
2025-08-20 15:10:55 +08:00

25 lines
732 B
Python

from pydantic import BaseModel, PositiveInt
class OverridePeerSettingsClass(BaseModel):
DNS: str = ''
EndpointAllowedIPs: str = ''
MTU: str | int = ''
PersistentKeepalive: int | str = ''
PeerRemoteEndpoint: str = ''
ListenPort: int | str = ''
class PeerGroupsClass(BaseModel):
GroupName: str = ''
Description: str = ''
BackgroundColor: str = ''
Peers: list[str] = []
class WireguardConfigurationInfo(BaseModel):
Description: str = ''
OverridePeerSettings: OverridePeerSettingsClass = OverridePeerSettingsClass(**{})
PeerGroups: dict[str, PeerGroupsClass] = {}
if __name__ == '__main__':
d = WireguardConfigurationInfo.model_validate_json("")
print(d.model_dump())