"""Models common to entire commands module.""" # Third Party from pydantic import StrictStr # Project from hyperglass.models import HyperglassModel, HyperglassModelExtra class CommandSet(HyperglassModel): """Command set, defined per-AFI.""" bgp_route: StrictStr bgp_aspath: StrictStr bgp_community: StrictStr ping: StrictStr traceroute: StrictStr class CommandGroup(HyperglassModelExtra): """Validation model for all commands.""" ipv4_default: CommandSet ipv6_default: CommandSet ipv4_vpn: CommandSet ipv6_vpn: CommandSet