sig
  type tag = ..
  type 'value t
  val register :
    string ->
    Runtime_events.User.tag ->
    'value Runtime_events.Type.t -> 'value Runtime_events.User.t
  val write : 'value Runtime_events.User.t -> 'value -> unit
  val name : 'Runtime_events.User.t -> string
  val tag : 'Runtime_events.User.t -> Runtime_events.User.tag
end