#![allow(clippy::type_complexity)]
use std::collections::HashMap;
use zbus::proxy;
use zbus::zvariant::{OwnedObjectPath, OwnedValue, Value};
pub mod adsl;
pub mod bluetooth;
pub mod bond;
pub mod bridge;
pub mod dummy;
pub mod generic;
pub mod hsr;
pub mod infiniband;
pub mod ip_tunnel;
pub mod ipvlan;
pub mod loopback;
pub mod lowpan;
pub mod macsec;
pub mod macvlan;
pub mod modem;
pub mod olpc_mesh;
pub mod ovs_bridge;
pub mod ovs_interface;
pub mod ovs_port;
pub mod ppp;
pub mod statistics;
pub mod team;
pub mod tun;
pub mod veth;
pub mod vlan;
pub mod vrf;
pub mod vxlan;
pub mod wifi_p2p;
pub mod wired;
pub mod wireguard;
pub mod wireless;
pub mod wpan;
#[proxy(
interface = "org.freedesktop.NetworkManager.Device",
default_service = "org.freedesktop.NetworkManager"
)]
pub trait Device {
fn delete(&self) -> zbus::Result<()>;
fn disconnect(&self) -> zbus::Result<()>;
fn get_applied_connection(
&self,
flags: u32,
) -> zbus::Result<(HashMap<String, HashMap<String, OwnedValue>>, u64)>;
fn reapply(
&self,
connection: HashMap<&str, HashMap<&str, &Value<'_>>>,
version_id: u64,
flags: u32,
) -> zbus::Result<()>;
#[zbus(signal, name = "StateChanged")]
fn dev_state_changed_signal(
&self,
new_state: u32,
old_state: u32,
reason: u32,
) -> zbus::Result<()>;
#[zbus(property)]
fn active_connection(&self) -> zbus::Result<OwnedObjectPath>;
#[zbus(property)]
fn autoconnect(&self) -> zbus::Result<bool>;
#[zbus(property)]
fn set_autoconnect(&self, value: bool) -> zbus::Result<()>;
#[zbus(property)]
fn available_connections(&self) -> zbus::Result<Vec<OwnedObjectPath>>;
#[zbus(property)]
fn capabilities(&self) -> zbus::Result<u32>;
#[zbus(property)]
fn device_type(&self) -> zbus::Result<u32>;
#[zbus(property)]
fn dhcp4_config(&self) -> zbus::Result<OwnedObjectPath>;
#[zbus(property)]
fn dhcp6_config(&self) -> zbus::Result<OwnedObjectPath>;
#[zbus(property)]
fn driver(&self) -> zbus::Result<String>;
#[zbus(property)]
fn driver_version(&self) -> zbus::Result<String>;
#[zbus(property)]
fn firmware_missing(&self) -> zbus::Result<bool>;
#[zbus(property)]
fn firmware_version(&self) -> zbus::Result<String>;
#[zbus(property)]
fn hw_address(&self) -> zbus::Result<String>;
#[zbus(property)]
fn interface(&self) -> zbus::Result<String>;
#[zbus(property)]
fn interface_flags(&self) -> zbus::Result<u32>;
#[zbus(property)]
fn ip4_address(&self) -> zbus::Result<u32>;
#[zbus(property)]
fn ip4_config(&self) -> zbus::Result<OwnedObjectPath>;
#[zbus(property)]
fn ip4_connectivity(&self) -> zbus::Result<u32>;
#[zbus(property)]
fn ip6_config(&self) -> zbus::Result<OwnedObjectPath>;
#[zbus(property)]
fn ip6_connectivity(&self) -> zbus::Result<u32>;
#[zbus(property)]
fn ip_interface(&self) -> zbus::Result<String>;
#[zbus(property)]
fn lldp_neighbors(&self) -> zbus::Result<Vec<HashMap<String, OwnedValue>>>;
#[zbus(property)]
fn managed(&self) -> zbus::Result<bool>;
#[zbus(property)]
fn set_managed(&self, value: bool) -> zbus::Result<()>;
#[zbus(property)]
fn metered(&self) -> zbus::Result<u32>;
#[zbus(property)]
fn mtu(&self) -> zbus::Result<u32>;
#[zbus(property)]
fn nm_plugin_missing(&self) -> zbus::Result<bool>;
#[zbus(property)]
fn path(&self) -> zbus::Result<String>;
#[zbus(property)]
fn physical_port_id(&self) -> zbus::Result<String>;
#[zbus(property)]
fn ports(&self) -> zbus::Result<Vec<OwnedObjectPath>>;
#[zbus(property)]
fn real(&self) -> zbus::Result<bool>;
#[zbus(property, name = "State")]
fn dev_state(&self) -> zbus::Result<u32>;
#[zbus(property)]
fn state_reason(&self) -> zbus::Result<(u32, u32)>;
#[zbus(property)]
fn udi(&self) -> zbus::Result<String>;
}