1use bitflags::bitflags;
6use serde::{Deserialize, Serialize};
7use settings_common::inspect::event::Nameable;
8
9#[derive(PartialEq, Default, Debug, Clone, Copy, Deserialize, Serialize)]
10pub struct SetupInfo {
11 pub configuration_interfaces: ConfigurationInterfaceFlags,
12}
13
14impl Nameable for SetupInfo {
15 const NAME: &'static str = "setup";
16}
17
18bitflags! {
19 #[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
20 pub struct ConfigurationInterfaceFlags: u32 {
21 const ETHERNET = 1 << 0;
22 const WIFI = 1 << 1;
23 const DEFAULT = Self::WIFI.bits();
24 }
25}
26
27impl Default for ConfigurationInterfaceFlags {
28 fn default() -> Self {
29 Self::DEFAULT
30 }
31}
32
33bitflags_serde_legacy::impl_traits!(ConfigurationInterfaceFlags);
34
35#[derive(Debug, PartialEq, Copy, Clone)]
36pub struct SetConfigurationInterfacesParams {
37 pub config_interfaces_flags: ConfigurationInterfaceFlags,
38 pub should_reboot: bool,
40}