sig
  type ty = Session | System | Starter
  type flags = Replace_existing
  val get : DBus.Bus.ty -> DBus.error -> DBus.bus
  val get_private : DBus.Bus.ty -> DBus.error -> DBus.bus
  val register : DBus.bus -> DBus.error -> bool
  val set_unique_name : DBus.bus -> string -> bool
  val get_unique_name : DBus.bus -> string
  val request_name : DBus.bus -> string -> int -> DBus.error -> unit
  val release_name : DBus.bus -> string -> DBus.error -> unit
  val has_owner : DBus.bus -> string -> DBus.error -> bool
  val add_match : DBus.bus -> string -> DBus.error -> unit
  val remove_match : DBus.bus -> string -> DBus.error -> unit
end