import type { IGatsbyImageData } from "./index"; export declare const DEFAULT_BREAKPOINTS: number[]; export declare const EVERY_BREAKPOINT: number[]; export type Fit = "cover" | "fill" | "inside" | "outside" | "contain"; export type Layout = "fixed" | "fullWidth" | "constrained"; export type ImageFormat = "jpg" | "png" | "webp" | "avif" | "auto" | ""; /** * The minimal required reporter, as we don't want to import it from gatsby-cli */ export interface IReporter { warn(message: string): void; } export interface ISharpGatsbyImageArgs { layout?: Layout; formats?: Array; placeholder?: "tracedSVG" | "dominantColor" | "blurred" | "none"; tracedSVGOptions?: Record; width?: number; height?: number; aspectRatio?: number; sizes?: string; quality?: number; transformOptions?: { fit?: Fit; cropFocus?: number | string; duotone?: { highlight: string; shadow: string; opacity?: number; }; grayscale?: boolean; rotate?: number; trim?: number; }; jpgOptions?: Record; pngOptions?: Record; webpOptions?: Record; avifOptions?: Record; blurredOptions?: { width?: number; toFormat?: ImageFormat; }; breakpoints?: Array; outputPixelDensities?: Array; backgroundColor?: string; } export interface IImageSizeArgs { width?: number; height?: number; layout?: Layout; filename: string; outputPixelDensities?: Array; breakpoints?: Array; fit?: Fit; reporter?: IReporter; sourceMetadata: { width: number; height: number; }; } export interface IImageSizes { sizes: Array; presentationWidth: number; presentationHeight: number; aspectRatio: number; unscaledWidth: number; } export interface IImage { src: string; width: number; height: number; format: ImageFormat; } export interface IGatsbyImageHelperArgs { pluginName: string; generateImageSource: (filename: string, width: number, height: number, format: ImageFormat, fit?: Fit, options?: Record) => IImage; layout?: Layout; formats?: Array; filename: string; placeholderURL?: string; width?: number; height?: number; sizes?: string; reporter?: IReporter; sourceMetadata?: { width: number; height: number; format: ImageFormat; }; fit?: Fit; options?: Record; breakpoints?: Array; backgroundColor?: string; aspectRatio?: number; } export declare const getSizes: (width: number, layout: Layout) => string | undefined; export declare const getSrcSet: (images: Array) => string; export declare function formatFromFilename(filename: string): ImageFormat | undefined; export declare function setDefaultDimensions(args: IGatsbyImageHelperArgs): IGatsbyImageHelperArgs; /** * Use this for getting an image for the blurred placeholder. This ensures the * aspect ratio and crop match the main image */ export declare function getLowResolutionImageURL(args: IGatsbyImageHelperArgs, width?: number): string; export declare function generateImageData(args: IGatsbyImageHelperArgs): IGatsbyImageData; export declare function calculateImageSizes(args: IImageSizeArgs): IImageSizes; export declare function fixedImageSizes({ filename, sourceMetadata: imgDimensions, width, height, fit, outputPixelDensities, reporter, }: IImageSizeArgs): IImageSizes; export declare function responsiveImageSizes({ sourceMetadata: imgDimensions, width, height, fit, outputPixelDensities, breakpoints, layout, }: IImageSizeArgs): IImageSizes; export declare function getDimensionsAndAspectRatio(dimensions: any, options: any): { width: number; height: number; aspectRatio: number; }; //# sourceMappingURL=image-utils.d.ts.map