sig
  type 'perms t = (int, 'perms) t
  val blit :
    ([> Perms.Export.read ] t, [> Perms.Export.write ] t) Blit_intf.blit
  val blito :
    ([> Perms.Export.read ] t, [> Perms.Export.write ] t) Blit_intf.blito
  val sub :
    ([> Perms.Export.read ] t, [< 'Perms.Export.perms ] t) Blit_intf.sub
  val subo :
    ([> Perms.Export.read ] t, [< 'Perms.Export.perms ] t) Blit_intf.subo
  external unsafe_blit :
    src:[> Perms.Export.read ] Core_array.Permissioned.t ->
    src_pos:int ->
    dst:[> Perms.Export.write ] Core_array.Permissioned.t ->
    dst_pos:int -> len:int -> unit = "core_array_unsafe_int_blit" "noalloc"
  val t_of_sexp :
    (Sexplib.Sexp.t -> 'perms) ->
    Sexplib.Sexp.t -> 'perms Core_array.Permissioned.t
  val sexp_of_t :
    ('perms -> Sexplib.Sexp.t) ->
    'perms Core_array.Permissioned.t -> Sexplib.Sexp.t
  val compare :
    ('perms -> 'perms -> int) ->
    'perms Core_array.Permissioned.t ->
    'perms Core_array.Permissioned.t -> int
  val bin_t :
    'perms Bin_prot.Type_class.t ->
    'perms Core_array.Permissioned.t Bin_prot.Type_class.t
  val bin_read_t :
    'perms Bin_prot.Read.reader ->
    'perms Core_array.Permissioned.t Bin_prot.Read.reader
  val __bin_read_t__ :
    'perms Bin_prot.Read.reader ->
    (int -> 'perms Core_array.Permissioned.t) Bin_prot.Read.reader
  val bin_reader_t :
    'perms Bin_prot.Type_class.reader ->
    'perms Core_array.Permissioned.t Bin_prot.Type_class.reader
  val bin_size_t :
    'perms Bin_prot.Size.sizer ->
    'perms Core_array.Permissioned.t Bin_prot.Size.sizer
  val bin_write_t :
    'perms Bin_prot.Write.writer ->
    'perms Core_array.Permissioned.t Bin_prot.Write.writer
  val bin_writer_t :
    'perms Bin_prot.Type_class.writer ->
    'perms Core_array.Permissioned.t Bin_prot.Type_class.writer
end