type compression_method = Zip.compression_method = Stored | Deflated type entry = Zip.entry = { filename : string; extra : string; comment : string; methd : compression_method; mtime : float; crc : int32; uncompressed_size : int; compressed_size : int; is_directory : bool; file_offset : int; } type in_file = Zip.in_file val open_in : string -> in_file val entries : in_file -> entry list val comment : in_file -> string val find_entry : in_file -> string -> entry val read_entry : in_file -> entry -> string val copy_entry_to_channel : in_file -> entry -> out_channel -> unit val copy_entry_to_file : in_file -> entry -> string -> unit val close_in : in_file -> unit type out_file = Zip.out_file val open_out : ?comment:string -> string -> out_file val add_entry : string -> out_file -> ?extra:string -> ?comment:string -> ?level:int -> ?mtime:float -> string -> unit val copy_channel_to_entry : in_channel -> out_file -> ?extra:string -> ?comment:string -> ?level:int -> ?mtime:float -> string -> unit val copy_file_to_entry : string -> out_file -> ?extra:string -> ?comment:string -> ?level:int -> ?mtime:float -> string -> unit val close_out : out_file -> unit exception Error of string * string * string