`sig
type t
val contents : String_zipper.t -> string
val left_contents : String_zipper.t -> string
val right_contents : String_zipper.t -> string
val insert_before : String_zipper.t -> char -> String_zipper.t
val insert_after : String_zipper.t -> char -> String_zipper.t
val drop_before : String_zipper.t -> (char * String_zipper.t) option
val drop_after : String_zipper.t -> (char * String_zipper.t) option
val drop_all_before :
String_zipper.t -> (char list * String_zipper.t) option
val drop_all_after :
String_zipper.t -> (char list * String_zipper.t) option
val previous : String_zipper.t -> String_zipper.t option
val next : String_zipper.t -> String_zipper.t option
val first : String_zipper.t -> String_zipper.t
val last : String_zipper.t -> String_zipper.t
val replace_left : String_zipper.t -> string -> String_zipper.t
val replace_right : String_zipper.t -> string -> String_zipper.t
val create : string -> string -> String_zipper.t
end`