import { PathOrURLStr } from "./Strings"; import { IDimensions } from "./IDimensions"; import { ImageData } from "./Canvases"; export declare type DataURL = string; export declare type ImageType = 'image/png' | 'image/jpeg' | 'image/webp' | 'image/gif'; export interface ThumbnailerGenerateOpts { readonly pathOrURL: PathOrURLStr; readonly scaleBy: 'width' | 'height'; readonly value: number; } export interface IThumbnail extends ImageData { readonly scaledDimensions: IDimensions; readonly nativeDimensions: IDimensions; } export interface Thumbnailer { readonly generate: (opts: ThumbnailerGenerateOpts) => IThumbnail; } export declare namespace Thumbnailers { interface ScaledDimensions { readonly scale: number; readonly width: number; readonly height: number; } function computeScaleDimensions(opts: ThumbnailerGenerateOpts, original: IDimensions): ScaledDimensions; }