`sig
type t
val create :
LTerm.t ->
?save_state:bool ->
(LTerm_ui.t -> LTerm_draw.matrix -> unit) -> LTerm_ui.t Lwt.t
val quit : LTerm_ui.t -> unit Lwt.t
val size : LTerm_ui.t -> LTerm_geom.size
val draw : LTerm_ui.t -> unit
val cursor_visible : LTerm_ui.t -> bool
val set_cursor_visible : LTerm_ui.t -> bool -> unit
val cursor_position : LTerm_ui.t -> LTerm_geom.coord
val set_cursor_position : LTerm_ui.t -> LTerm_geom.coord -> unit
val wait : LTerm_ui.t -> LTerm_event.t Lwt.t
end`