use zbus::proxy;
#[proxy(
interface = "org.freedesktop.login1.User",
gen_blocking = false,
default_service = "org.freedesktop.login1",
assume_defaults = false
)]
pub trait User {
fn kill(&self, signal_number: i32) -> zbus::Result<()>;
fn terminate(&self) -> zbus::Result<()>;
#[zbus(property)]
fn display(&self) -> zbus::Result<(String, zbus::zvariant::OwnedObjectPath)>;
#[zbus(property, name = "GID")]
fn gid(&self) -> zbus::Result<u32>;
#[zbus(property)]
fn idle_hint(&self) -> zbus::Result<bool>;
#[zbus(property)]
fn idle_since_hint(&self) -> zbus::Result<u64>;
#[zbus(property)]
fn idle_since_hint_monotonic(&self) -> zbus::Result<u64>;
#[zbus(property)]
fn linger(&self) -> zbus::Result<bool>;
#[zbus(property)]
fn name(&self) -> zbus::Result<String>;
#[zbus(property)]
fn runtime_path(&self) -> zbus::Result<String>;
#[zbus(property)]
fn service(&self) -> zbus::Result<String>;
#[zbus(property)]
fn sessions(&self) -> zbus::Result<Vec<(String, zbus::zvariant::OwnedObjectPath)>>;
#[zbus(property)]
fn slice(&self) -> zbus::Result<String>;
#[zbus(property)]
fn state(&self) -> zbus::Result<String>;
#[zbus(property)]
fn timestamp(&self) -> zbus::Result<u64>;
#[zbus(property)]
fn timestamp_monotonic(&self) -> zbus::Result<u64>;
#[zbus(property, name = "UID")]
fn uid(&self) -> zbus::Result<u32>;
}