gzipper
Version:
CLI for compressing files.
25 lines (24 loc) • 841 B
TypeScript
import stream from 'stream';
import { CompressOptions, CompressionOptions } from '../interfaces.js';
export declare abstract class Compression<T extends CompressionOptions> {
compressionOptions: T;
abstract ext: string;
abstract compressionName: string;
protected readonly options: CompressOptions;
/**
* Creates an instance of Compression.
*/
constructor(options: CompressOptions);
/**
* Returns a compression instance in closure.
*/
abstract getCompression(): stream.Transform | Promise<stream.Transform>;
/**
* Build compression options object [compressionOptions].
*/
protected abstract selectCompression(): void;
/**
* Returns human-readable compression options info.
*/
readableOptions(keyWrapper?: (key: string) => string | undefined): string;
}