tinify
Version:
Node.js client for the Tinify API. Tinify compresses your images intelligently. Read more at https://tinify.com.
25 lines (24 loc) • 1.01 kB
TypeScript
import { Callback } from "./compat";
import Result from "./Result";
import ResultMeta from "./ResultMeta";
export type SupportedImageTypes = "image/webp" | "image/png" | "image/jpg" | "image/jpeg" | "image/avif";
export type WildcardOrSupportedImageTypes = SupportedImageTypes | "*/*";
export type ConvertOptions = {
type: WildcardOrSupportedImageTypes | SupportedImageTypes[];
};
export default class Source {
static fromFile(path: string): Source;
static fromBuffer(data: string | Uint8Array): Source;
static fromUrl(url: string): Source;
preserve(options: string[]): Source;
preserve(...options: string[]): Source;
resize(options: object): Source;
store(options: object): ResultMeta;
result(): Result;
toFile(path: string): Promise<void>;
toFile(path: string, callback: Callback): void;
toBuffer(): Promise<Uint8Array>;
toBuffer(callback: Callback<Uint8Array>): void;
convert(options: ConvertOptions): Source;
transform(options: object): Source;
}