sig
  val interface : OBus_name.interface
  val m_Disconnect : (unit, unit) OBus_member.Method.t
  val s_StateChanged : (int32 * int32 * int32) OBus_member.Signal.t
  val p_Capabilities : (int32, [ `readable ]) OBus_member.Property.t
  val p_DeviceType : (int32, [ `readable ]) OBus_member.Property.t
  val p_Dhcp4Config : (OBus_path.t, [ `readable ]) OBus_member.Property.t
  val p_Driver : (string, [ `readable ]) OBus_member.Property.t
  val p_Interface : (string, [ `readable ]) OBus_member.Property.t
  val p_Ip4Address : (int32, [ `readable ]) OBus_member.Property.t
  val p_Ip4Config : (OBus_path.t, [ `readable ]) OBus_member.Property.t
  val p_Ip6Config : (OBus_path.t, [ `readable ]) OBus_member.Property.t
  val p_Managed : (bool, [ `readable ]) OBus_member.Property.t
  val p_State : (int32, [ `readable ]) OBus_member.Property.t
  val p_Udi : (string, [ `readable ]) OBus_member.Property.t
  type 'a members = {
    m_Disconnect : 'OBus_object.t -> unit -> unit Lwt.t;
    p_Capabilities : 'OBus_object.t -> int32 React.signal;
    p_DeviceType : 'OBus_object.t -> int32 React.signal;
    p_Dhcp4Config : 'OBus_object.t -> OBus_path.t React.signal;
    p_Driver : 'OBus_object.t -> string React.signal;
    p_Interface : 'OBus_object.t -> string React.signal;
    p_Ip4Address : 'OBus_object.t -> int32 React.signal;
    p_Ip4Config : 'OBus_object.t -> OBus_path.t React.signal;
    p_Ip6Config : 'OBus_object.t -> OBus_path.t React.signal;
    p_Managed : 'OBus_object.t -> bool React.signal;
    p_State : 'OBus_object.t -> int32 React.signal;
    p_Udi : 'OBus_object.t -> string React.signal;
  }
  val make :
    'Nm_interfaces.Org_freedesktop_NetworkManager_Device.members ->
    'OBus_object.interface
end