use zbus::{proxy, zvariant::OwnedObjectPath};
#[proxy(
default_service = "org.freedesktop.NetworkManager",
interface = "org.freedesktop.NetworkManager.Device.IPTunnel"
)]
pub(crate) trait DeviceIPTunnel {
#[zbus(property)]
fn mode(&self) -> zbus::Result<u32>;
#[zbus(property)]
fn parent(&self) -> zbus::Result<OwnedObjectPath>;
#[zbus(property)]
fn local(&self) -> zbus::Result<String>;
#[zbus(property)]
fn remote(&self) -> zbus::Result<String>;
#[zbus(property)]
fn ttl(&self) -> zbus::Result<u8>;
#[zbus(property)]
fn tos(&self) -> zbus::Result<u8>;
#[zbus(property)]
fn path_mtu_discovery(&self) -> zbus::Result<bool>;
#[zbus(property)]
fn input_key(&self) -> zbus::Result<String>;
#[zbus(property)]
fn output_key(&self) -> zbus::Result<String>;
#[zbus(property)]
fn flow_label(&self) -> zbus::Result<u32>;
#[zbus(property)]
fn flags(&self) -> zbus::Result<u32>;
#[zbus(property)]
fn encapsulation_limit(&self) -> zbus::Result<u8>;
}