module State = State
module Row = Row
module Mode : sig ... end
module Table_widget : Table.S with type Row_id.t = Row.Id.t and type Column_id.t = Mesa_column.Id.t
module Model : sig ... end
module Derived_model : sig ... end
module Model_summary : sig ... end
module Action : sig ... end
val key_handler : Mode.t ‑> focus:(Row.Id.t * Row.t) option ‑> inject:(Action.t ‑> Incr_dom_widgets__.Import.Vdom.Event.t) ‑> Incr_dom_widgets__.Import.Dom_html.keyboardEvent Incr_dom_widgets__.Import.Js.t ‑> Incr_dom_widgets__.Import.Vdom.Event.t
val apply_action : Action.t ‑> Model.t ‑> State.t ‑> recompute_derived:(Model.t ‑> Derived_model.t) ‑> report_error:(Row.action_error ‑> unit Async_kernel.Deferred.t) ‑> Model.t Core_kernel.Or_error.t
val update_visibility : Model.t ‑> Derived_model.t ‑> Model.t
val on_display : old:Model_summary.t ‑> Model.t ‑> Derived_model.t ‑> unit
val view : Model.t Incr_dom_widgets__.Import.Incr.t ‑> Derived_model.t Incr_dom_widgets__.Import.Incr.t ‑> inject:(Action.t ‑> Incr_dom_widgets__.Import.Vdom.Event.t) ‑> attrs:Incr_dom_widgets__.Import.Vdom.Attr.t list ‑> header:Incr_dom_widgets__.Import.Vdom.Node.t ‑> Incr_dom_widgets__.Import.Vdom.Node.t Incr_dom_widgets__.Import.Incr.t