sig
  val interface : OBus_name.interface
  val m_Connect :
    ((string * (string * OBus_value.V.single) list) list, unit)
    OBus_member.Method.t
  val m_Disconnect : (unit, unit) OBus_member.Method.t
  val m_NeedSecrets :
    ((string * (string * OBus_value.V.single) list) list, string)
    OBus_member.Method.t
  val m_SetFailure : (string, unit) OBus_member.Method.t
  val m_SetIp4Config :
    ((string * OBus_value.V.single) list, unit) OBus_member.Method.t
  val s_Failure : int32 OBus_member.Signal.t
  val s_Ip4Config : (string * OBus_value.V.single) list OBus_member.Signal.t
  val s_LoginBanner : string OBus_member.Signal.t
  val s_StateChanged : int32 OBus_member.Signal.t
  val p_State : (int32, [ `readable ]) OBus_member.Property.t
  type 'a members = {
    m_Connect :
      'OBus_object.t ->
      (string * (string * OBus_value.V.single) list) list -> unit Lwt.t;
    m_Disconnect : 'OBus_object.t -> unit -> unit Lwt.t;
    m_NeedSecrets :
      'OBus_object.t ->
      (string * (string * OBus_value.V.single) list) list -> string Lwt.t;
    m_SetFailure : 'OBus_object.t -> string -> unit Lwt.t;
    m_SetIp4Config :
      'OBus_object.t -> (string * OBus_value.V.single) list -> unit Lwt.t;
    p_State : 'OBus_object.t -> int32 React.signal;
  }
  val make :
    'Nm_interfaces.Org_freedesktop_NetworkManager_VPN_Plugin.members ->
    'OBus_object.interface
end