sig   type t   val empty : t   val write : OpamTypes.filename -> t -> unit   val read : OpamTypes.filename -> t   val safe_read : OpamTypes.filename -> t   val read_from_channel : in_channel -> t   val write_to_channel : out_channel -> t -> unit   val create :     OpamTypes.repository_kind ->     ?mirrors:OpamTypes.address list -> OpamTypes.address -> t   val url : t -> OpamTypes.address   val mirrors : t -> OpamTypes.address list   val kind : t -> OpamTypes.repository_kind   val checksum : t -> string option   val with_checksum : t -> string -> t end