sig
  type t =
      (char, Bigarray.int8_unsigned_elt, Bigarray.c_layout) Bigarray.Array1.t
  val create : ?max_mem_waiting_gc:Byte_units.t -> int -> Bigstring.t
  val init : int -> f:(int -> char) -> Bigstring.t
  val of_string : ?pos:int -> ?len:int -> string -> Bigstring.t
  val to_string : ?pos:int -> ?len:int -> Bigstring.t -> string
  val check_args : loc:string -> pos:int -> len:int -> Bigstring.t -> unit
  val get_opt_len : Bigstring.t -> pos:int -> int option -> int
  val length : Bigstring.t -> int
  val sub_shared : ?pos:int -> ?len:int -> Bigstring.t -> Bigstring.t
  val get : Bigstring.t -> int -> char
  val set : Bigstring.t -> int -> char -> unit
  external is_mmapped : Bigstring.t -> bool = "bigstring_is_mmapped_stub"
    "noalloc"
  val blit : (t, t) Blit_intf.blit
  val blito : (t, t) Blit_intf.blito
  val unsafe_blit : (t, t) Blit_intf.blit
  val sub : (Bigstring.t, Bigstring.t) Blit_intf.sub
  val subo : (t, t) Blit_intf.subo
  module To_string :
    sig
      val blit : (t, string) Blit_intf.blit
      val blito : (t, string) Blit_intf.blito
      val unsafe_blit : (t, string) Blit_intf.blit
      val sub : (t, string) Blit_intf.sub
      val subo : (t, string) Blit_intf.subo
    end
  module From_string :
    sig
      val blit : (string, t) Blit_intf.blit
      val blito : (string, t) Blit_intf.blito
      val unsafe_blit : (string, t) Blit_intf.blit
      val sub : (string, t) Blit_intf.sub
      val subo : (string, t) Blit_intf.subo
    end
  val map_file : shared:bool -> Unix.file_descr -> int -> Bigstring.t
  val find : ?pos:int -> ?len:int -> char -> Bigstring.t -> int option
  external unsafe_destroy : Bigstring.t -> unit = "bigstring_destroy_stub"
  val unsafe_get_int8 : Bigstring.t -> pos:int -> int
  val unsafe_set_int8 : Bigstring.t -> pos:int -> int -> unit
  val unsafe_get_uint8 : Bigstring.t -> pos:int -> int
  val unsafe_set_uint8 : Bigstring.t -> pos:int -> int -> unit
  val unsafe_get_int16_le : Bigstring.t -> pos:int -> int
  val unsafe_get_int16_be : Bigstring.t -> pos:int -> int
  val unsafe_set_int16_le : Bigstring.t -> pos:int -> int -> unit
  val unsafe_set_int16_be : Bigstring.t -> pos:int -> int -> unit
  val unsafe_get_uint16_le : Bigstring.t -> pos:int -> int
  val unsafe_get_uint16_be : Bigstring.t -> pos:int -> int
  val unsafe_set_uint16_le : Bigstring.t -> pos:int -> int -> unit
  val unsafe_set_uint16_be : Bigstring.t -> pos:int -> int -> unit
  val unsafe_get_int32_le : Bigstring.t -> pos:int -> int
  val unsafe_get_int32_be : Bigstring.t -> pos:int -> int
  val unsafe_set_int32_le : Bigstring.t -> pos:int -> int -> unit
  val unsafe_set_int32_be : Bigstring.t -> pos:int -> int -> unit
  val unsafe_get_uint32_le : Bigstring.t -> pos:int -> int
  val unsafe_get_uint32_be : Bigstring.t -> pos:int -> int
  val unsafe_set_uint32_le : Bigstring.t -> pos:int -> int -> unit
  val unsafe_set_uint32_be : Bigstring.t -> pos:int -> int -> unit
  val unsafe_get_int64_le_exn : Bigstring.t -> pos:int -> int
  val unsafe_get_int64_be_exn : Bigstring.t -> pos:int -> int
  val unsafe_set_int64_le : Bigstring.t -> pos:int -> int -> unit
  val unsafe_set_int64_be : Bigstring.t -> pos:int -> int -> unit
  val unsafe_get_int32_t_le : Bigstring.t -> pos:int -> Int32.t
  val unsafe_get_int32_t_be : Bigstring.t -> pos:int -> Int32.t
  val unsafe_set_int32_t_le : Bigstring.t -> pos:int -> Int32.t -> unit
  val unsafe_set_int32_t_be : Bigstring.t -> pos:int -> Int32.t -> unit
  val unsafe_get_int64_t_le : Bigstring.t -> pos:int -> Int64.t
  val unsafe_get_int64_t_be : Bigstring.t -> pos:int -> Int64.t
  val unsafe_set_int64_t_le : Bigstring.t -> pos:int -> Int64.t -> unit
  val unsafe_set_int64_t_be : Bigstring.t -> pos:int -> Int64.t -> unit
  val get_padded_fixed_string :
    padding:char -> Bigstring.t -> pos:int -> len:int -> unit -> string
  val set_padded_fixed_string :
    padding:char -> Bigstring.t -> pos:int -> len:int -> string -> unit
  val t_of_sexp : Sexplib.Sexp.t -> Bigstring.t
  val sexp_of_t : Bigstring.t -> Sexplib.Sexp.t
  val bin_t : Bigstring.t Bin_prot.Type_class.t
  val bin_read_t : Bigstring.t Bin_prot.Read_ml.reader
  val bin_read_t_ : Bigstring.t Bin_prot.Unsafe_read_c.reader
  val bin_read_t__ : (int -> Bigstring.t) Bin_prot.Unsafe_read_c.reader
  val bin_reader_t : Bigstring.t Bin_prot.Type_class.reader
  val bin_size_t : Bigstring.t Bin_prot.Size.sizer
  val bin_write_t : Bigstring.t Bin_prot.Write_ml.writer
  val bin_write_t_ : Bigstring.t Bin_prot.Unsafe_write_c.writer
  val bin_writer_t : Bigstring.t Bin_prot.Type_class.writer
end