using System.IO; namespace Compress { public interface ICompress { int LocalFilesCount(); string Filename(int i); ulong? LocalHeader(int i); ulong UncompressedSize(int i); byte[] CRC32(int i); bool IsDirectory(int i); ZipOpenType ZipOpen { get; } ZipReturn ZipFileOpen(string newFilename, long timestamp = -1, bool readHeaders = true); ZipReturn ZipFileOpen(Stream inStream); void ZipFileClose(); ZipReturn ZipFileOpenReadStream(int index, out Stream stream, out ulong streamSize); ZipReturn ZipFileOpenWriteStream(bool raw, bool trrntzip, string filename, ulong uncompressedSize, ushort compressionMethod, uint? datetime, out Stream stream); ZipReturn ZipFileCloseReadStream(); ZipStatus ZipStatus { get; } string ZipFilename { get; } long TimeStamp { get; } void ZipFileAddZeroLengthFile(); ZipReturn ZipFileCreate(string newFilename); ZipReturn ZipFileCloseWriteStream(byte[] crc32); void ZipFileCloseFailed(); } }