sig
  type t = string
  val string : string -> BatDigest.t
  val substring : string -> int -> int -> BatDigest.t
  val file : string -> BatDigest.t
  val to_hex : BatDigest.t -> string
  val from_hex : string -> BatDigest.t
  val channel : BatIO.input -> int -> Digest.t
  val output : 'BatIO.output -> BatDigest.t -> unit
  val print : 'BatIO.output -> Digest.t -> unit
  val input : BatIO.input -> Digest.t
  val compare : BatDigest.t -> BatDigest.t -> int
end