sig
type 'a callback = ('a -> unit) -> unit
val register_value :
package:Package.package ->
name:string ->
descr:Markdown.text ->
output:'a Request.output ->
get:(unit -> 'a) ->
?add_hook:unit States.callback -> unit -> Request.signal
val register_state :
package:Package.package ->
name:string ->
descr:Markdown.text ->
data:'a Data.data ->
get:(unit -> 'a) ->
set:('a -> unit) ->
?add_hook:unit States.callback -> unit -> Request.signal
type 'a model
val model : unit -> 'a States.model
val column :
name:string ->
descr:Markdown.text ->
data:'b Request.output ->
get:('a -> 'b) -> ?default:'b -> 'a States.model -> unit
val option :
name:string ->
descr:Markdown.text ->
data:'b Request.output ->
get:('a -> 'b option) -> 'a States.model -> unit
type 'a array
val reload : 'a States.array -> unit
val update : 'a States.array -> 'a -> unit
val remove : 'a States.array -> 'a -> unit
val signal : 'a States.array -> Request.signal
val register_array :
package:Package.package ->
name:string ->
descr:Markdown.text ->
key:('a -> string) ->
?keyName:string ->
?keyType:Package.jtype ->
iter:'a States.callback ->
?add_update_hook:'a States.callback ->
?add_remove_hook:'a States.callback ->
?add_reload_hook:unit States.callback ->
'a States.model -> 'a States.array
end