sig   type t   exception Out_of_bounds   val create :     int ->     (int * int * int) React.event ->     (unit -> Zed_lines.t) -> int -> int -> Zed_cursor.t   val copy : Zed_cursor.t -> Zed_cursor.t   val position : Zed_cursor.t -> int React.signal   val get_position : Zed_cursor.t -> int   val line : Zed_cursor.t -> int React.signal   val get_line : Zed_cursor.t -> int   val column : Zed_cursor.t -> int React.signal   val get_column : Zed_cursor.t -> int   val coordinates : Zed_cursor.t -> (int * int) React.signal   val get_coordinates : Zed_cursor.t -> int * int   val wanted_column : Zed_cursor.t -> int React.signal   val get_wanted_column : Zed_cursor.t -> int   val set_wanted_column : Zed_cursor.t -> int -> unit   val goto : Zed_cursor.t -> ?set_wanted_column:bool -> int -> unit   val move : Zed_cursor.t -> ?set_wanted_column:bool -> int -> unit end