pub async fn serve(
    iface_id: u16,
    proxy: ClientSmeProxy,
    sme_event_stream: ClientSmeEventStream,
    req_stream: Receiver<ManualRequest>,
    update_sender: ClientListenerMessageSender,
    saved_networks_manager: Arc<dyn SavedNetworksManagerApi>,
    connect_selection: Option<ConnectSelection>,
    telemetry_sender: TelemetrySender,
    defect_sender: UnboundedSender<Defect>,
    roam_manager: Arc<Mutex<dyn LocalRoamManagerApi>>
)