`sig type t = string val string : string -> BatDigest.t val bytes : Bytes.t -> BatDigest.t val substring : string -> int -> int -> BatDigest.t val subbytes : Bytes.t -> 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 : 'a BatIO.output -> BatDigest.t -> unit val print : 'a BatIO.output -> Digest.t -> unit val input : BatIO.input -> Digest.t val compare : BatDigest.t -> BatDigest.t -> int val equal : BatDigest.t -> BatDigest.t -> bool end`