sig
  type data
  val register :
    (Disposal.DISPOSAL.data -> unit) ->
    Disposal.DISPOSAL.data -> Disposal.DISPOSAL.data
  val manage :
    ?disposer:(Disposal.DISPOSAL.data -> unit) ->
    Disposal.DISPOSAL.data -> Disposal.DISPOSAL.data
  val dispose : Disposal.DISPOSAL.data -> unit
end