sig
  type t
  val of_native_char : char -> Api.BASIC_CHARACTER.t option
  val of_int : int -> Api.BASIC_CHARACTER.t option
  val to_int : Api.BASIC_CHARACTER.t -> int
  val size : Api.BASIC_CHARACTER.t -> int
  val write_to_native_bytes :
    Api.BASIC_CHARACTER.t ->
    buf:Bytes.t -> index:int -> (int, [> `out_of_bounds ]) Api.result
  val to_native_string : Api.BASIC_CHARACTER.t -> String.t
  val read_from_native_string :
    buf:String.t -> index:int -> (Api.BASIC_CHARACTER.t * int) option
  val to_string_hum : Api.BASIC_CHARACTER.t -> String.t
  val compare : Api.BASIC_CHARACTER.t -> Api.BASIC_CHARACTER.t -> int
  val is_whitespace : Api.BASIC_CHARACTER.t -> bool
end