@mora/tinypng
Version:
基于 tinypng 封装的一个支持 `nodejs`、`命令行`和`webpack`的图片压缩工具
28 lines (27 loc) • 856 B
TypeScript
/// <reference types="node" />
export declare type ITinypngSource = string | Buffer;
export declare type ITinypngTarget = string;
export interface ITinypngProcessOption {
proxy?: string;
resize?: {
method: 'fit' | 'scale' | 'cover';
width?: number;
height?: number;
};
svgo?: any;
}
export interface ITinypngOption extends ITinypngProcessOption {
cacheDir?: string;
recordFile?: string;
tokens: string[];
}
export default class {
option: ITinypngOption;
private tp;
private svgo;
private fakeTokenMap;
constructor(option: ITinypngOption);
tiny(source: ITinypngSource, target?: ITinypngTarget | ITinypngProcessOption, option?: ITinypngProcessOption): Promise<Buffer>;
private tinySuccess(buffer, target, resolve, reject);
private tinyFailed(e, expire, resolve, reject);
}