| /// <reference types="node"/> |
| import * as stream from 'stream'; |
| import {ZlibOptions} from 'zlib'; |
| |
| declare namespace gzipSize { |
| type Options = ZlibOptions; |
| |
| interface GzipSizeStream extends stream.PassThrough { |
| addListener(event: 'gzip-size', listener: (size: number) => void): this; |
| addListener( |
| event: string | symbol, |
| listener: (...args: any[]) => void |
| ): this; |
| on(event: 'gzip-size', listener: (size: number) => void): this; |
| on(event: string | symbol, listener: (...args: any[]) => void): this; |
| once(event: 'gzip-size', listener: (size: number) => void): this; |
| once(event: string | symbol, listener: (...args: any[]) => void): this; |
| removeListener(event: 'gzip-size', listener: (size: number) => void): this; |
| removeListener( |
| event: string | symbol, |
| listener: (...args: any[]) => void |
| ): this; |
| off(event: 'gzip-size', listener: (size: number) => void): this; |
| off(event: string | symbol, listener: (...args: any[]) => void): this; |
| emit(event: 'gzip-size', size: number): boolean; |
| emit(event: string | symbol, ...args: any[]): boolean; |
| prependListener(event: 'gzip-size', listener: (size: number) => void): this; |
| prependListener( |
| event: string | symbol, |
| listener: (...args: any[]) => void |
| ): this; |
| prependOnceListener( |
| event: 'gzip-size', |
| listener: (size: number) => void |
| ): this; |
| prependOnceListener( |
| event: string | symbol, |
| listener: (...args: any[]) => void |
| ): this; |
| |
| /** |
| Contains the gzip size of the stream after it is finished. Since this happens asynchronously, it is recommended you use the `gzip-size` event instead. |
| */ |
| gzipSize?: number; |
| } |
| } |
| |
| declare const gzipSize: { |
| /** |
| Get the gzipped size of a string or buffer. |
| |
| @returns The gzipped size of `input`. |
| */ |
| (input: string | Buffer, options?: gzipSize.Options): Promise<number>; |
| |
| /** |
| Synchronously get the gzipped size of a string or buffer. |
| |
| @returns The gzipped size of `input`. |
| |
| @example |
| ``` |
| import gzipSize = require('gzip-size'); |
| |
| const text = 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.'; |
| |
| console.log(text.length); |
| //=> 191 |
| |
| console.log(gzipSize.sync(text)); |
| //=> 78 |
| ``` |
| */ |
| sync(input: string | Buffer, options?: gzipSize.Options): number; |
| |
| /** |
| @returns A stream that emits a `gzip-size` event and has a `gzipSize` property. |
| */ |
| stream(options?: gzipSize.Options): gzipSize.GzipSizeStream; |
| |
| /** |
| Get the gzipped size of a file. |
| |
| @returns The size of the file. |
| */ |
| file(path: string, options?: gzipSize.Options): Promise<number>; |
| }; |
| |
| export = gzipSize; |