UNPKG

webpack-image-resize-loader

Version:
29 lines (28 loc) 1.73 kB
import fileLoader from "file-loader"; import sharp from "sharp"; import { loader } from "webpack"; export interface Options { readonly width?: number; readonly height?: number; readonly fit?: "cover" | "contain" | "fill" | "inside" | "outside"; readonly position?: "top" | "right top" | "right" | "right bottom" | "bottom" | "left bottom" | "left" | "left top" | "north" | "northeast" | "east" | "southeast" | "south" | "southwest" | "west" | "northwest" | "center" | "centre" | "entropy" | "attention"; readonly background?: sharp.Color; readonly scale?: number; readonly format?: "jpeg" | "png" | "webp" | "avif" | "tiff"; readonly quality?: number; readonly scaleUp?: boolean; readonly sharpOptions?: { readonly resize?: Partial<sharp.ResizeOptions>; readonly png?: Partial<sharp.PngOptions>; readonly jpeg?: Partial<sharp.JpegOptions>; readonly webp?: Partial<sharp.WebpOptions>; readonly avif?: Partial<sharp.AvifOptions>; readonly tiff?: Partial<sharp.TiffOptions>; }; readonly fileLoader?: string; readonly fileLoaderOptionsGenerator?: string | ((options: Omit<FullOptions, "optionsGenerator">, existingOptions: Record<string, any> | undefined) => Record<string, any>); } export declare type FullOptions = Options & Required<Pick<Options, "scaleUp" | "format" | "sharpOptions" | "fileLoader" | "fileLoaderOptionsGenerator">>; export declare const raw = true; export default function (this: loader.LoaderContext, content: ArrayBuffer): void; export declare function defaultFileLoaderOptionsGenerator({ format }: Omit<FullOptions, "optionsGenerator">, existingOptions: fileLoader.Options | undefined): fileLoader.Options;