constructor(options) {
		this.options = options || {};
		this.pattern = this.options.pattern || '**/*.{mjs,js,css,html}';
		this.exclude = this.options.exclude;
		this.compression = this.options.compression || 'gzip';
		this.options.filename = this.options.filename || 'size-plugin.json';
		this.options.writeFile = this.options.writeFile !== false;
		this.filename = path.join(process.cwd(), this.options.filename);
	}
`new SizePlugin(options)`
@param {Object} options
@param {string} [options.pattern] minimatch pattern of files to track
@param {string} [options.exclude] minimatch pattern of files NOT to track
@param {string} [options.filename] file name to save filesizes to disk
@param {boolean} [options.publish] option to publish filesizes to size-plugin-store
@param {boolean} [options.writeFile] option to save filesizes to disk
@param {function} [options.stripHash] custom function to remove/normalize hashed filenames for comparison
@param {'none' | 'gzip' | 'brotli'} [options.compression = 'gzip'] change the compression algorithm used for calculated sizes
@param {string} [options.mode] custom Webpack "mode" - only use this to emulate "mode" in Webpack 3.
@param {(item:Item)=>string?} [options.decorateItem] custom function to decorate items
@param {(data:Data)=>string?} [options.decorateAfter] custom function to decorate all output
@public