sig
  type format =
      ILLEGAL
    | BYTE
    | ASCII
    | SHORT
    | LONG
    | RATIONAL
    | SBYTE
    | UNDEFINED
    | SSHORT
    | SLONG
    | SRATIONAL
    | FLOAT
    | DOUBLE
  val string_of_format : Exif.Entry.Pack.format -> string
  type unpacked =
      Bytes of int array
    | Asciis of string
    | Shorts of int array
    | Longs of int64 array
    | Rationals of (int64 * int64) array
    | SBytes of int array
    | Undefined of string
    | SShorts of int array
    | SLongs of int32 array
    | SRationals of (int32 * int32) array
    | Floats of float array
    | Doubles of float array
  val unpack :
    Exif.Entry.Pack.format -> int -> string -> Exif.Entry.Pack.unpacked
  val format : Format.formatter -> Exif.Entry.Pack.unpacked -> unit
end