use std::collections::HashMap;
use zbus::proxy;
use zbus::zvariant::{ObjectPath, OwnedObjectPath, Value};
#[proxy(
interface = "fi.w1.wpa_supplicant1.Group",
default_service = "fi.w1.wpa_supplicant1"
)]
pub trait Group {
#[zbus(signal)]
fn properties_changed(&self, properties: HashMap<&str, Value<'_>>) -> zbus::Result<()>;
#[zbus(property)]
fn members(&self) -> zbus::Result<Vec<OwnedObjectPath>>;
#[zbus(property)]
fn group(&self) -> zbus::Result<OwnedObjectPath>;
#[zbus(property)]
fn role(&self) -> zbus::Result<String>;
#[zbus(property, name = "SSID")]
fn ssid(&self) -> zbus::Result<Vec<u8>>;
#[zbus(property, name = "BSSID")]
fn bssid(&self) -> zbus::Result<Vec<u8>>;
#[zbus(property)]
fn frequency(&self) -> zbus::Result<u16>;
#[zbus(property)]
fn passphrase(&self) -> zbus::Result<String>;
#[zbus(property)]
fn psk(&self) -> zbus::Result<Vec<u8>>;
#[zbus(property, name = "WPSVendorExtensions")]
fn wps_vendor_extensions(&self) -> zbus::Result<Vec<Vec<u8>>>;
#[zbus(signal)]
fn peer_joined(
&self,
path: ObjectPath<'_>,
properties: HashMap<&str, Value<'_>>,
) -> zbus::Result<()>;
#[zbus(signal)]
fn peer_disconnected(
&self,
path: ObjectPath<'_>,
properties: HashMap<&str, Value<'_>>,
) -> zbus::Result<()>;
}