/// import type { ImageConfigComplete, ImageLoaderProps, ImageLoaderPropsWithConfig } from './image-config'; export interface StaticImageData { src: string; height: number; width: number; blurDataURL?: string; blurWidth?: number; blurHeight?: number; } export interface StaticRequire { default: StaticImageData; } export type StaticImport = StaticRequire | StaticImageData; export type ImageProps = Omit & { src: string | StaticImport; alt: string; width?: number | `${number}`; height?: number | `${number}`; fill?: boolean; loader?: ImageLoader; quality?: number | `${number}`; priority?: boolean; loading?: LoadingValue; placeholder?: PlaceholderValue; blurDataURL?: string; unoptimized?: boolean; onLoadingComplete?: OnLoadingComplete; /** * @deprecated Use `fill` prop instead of `layout="fill"` or change import to `next/legacy/image`. * @see https://nextjs.org/docs/api-reference/next/legacy/image */ layout?: string; /** * @deprecated Use `style` prop instead. */ objectFit?: string; /** * @deprecated Use `style` prop instead. */ objectPosition?: string; /** * @deprecated This prop does not do anything. */ lazyBoundary?: string; /** * @deprecated This prop does not do anything. */ lazyRoot?: string; }; export type ImgProps = Omit & { loading: LoadingValue; width: number | undefined; height: number | undefined; style: NonNullable; sizes: string | undefined; srcSet: string | undefined; src: string; }; declare const VALID_LOADING_VALUES: readonly ["lazy", "eager", undefined]; type LoadingValue = (typeof VALID_LOADING_VALUES)[number]; export type ImageLoader = (p: ImageLoaderProps) => string; type ImageLoaderWithConfig = (p: ImageLoaderPropsWithConfig) => string; export type PlaceholderValue = 'blur' | 'empty' | `data:image/${string}`; export type OnLoad = React.ReactEventHandler | undefined; export type OnLoadingComplete = (img: HTMLImageElement) => void; /** * A shared function, used on both client and server, to generate the props for . */ export declare function getImgProps({ src, sizes, unoptimized, priority, loading, className, quality, width, height, fill, style, onLoad, onLoadingComplete, placeholder, blurDataURL, fetchPriority, layout, objectFit, objectPosition, lazyBoundary, lazyRoot, ...rest }: ImageProps, _state: { defaultLoader: ImageLoaderWithConfig; imgConf: ImageConfigComplete; showAltText?: boolean; blurComplete?: boolean; }): { props: ImgProps; meta: { unoptimized: boolean; priority: boolean; placeholder: NonNullable; fill: boolean; }; }; export {};