Files
old-kitabcitab-frontend/kitabcitab/node_modules/next/dist/client/image.d.ts
2022-12-27 12:05:56 +01:00

95 lines
3.2 KiB
TypeScript

import React from 'react';
import type { ImageLoaderProps } from '../shared/lib/image-config';
declare const VALID_LOADING_VALUES: readonly ["lazy", "eager", undefined];
declare type LoadingValue = typeof VALID_LOADING_VALUES[number];
export type { ImageLoaderProps };
export declare type ImageLoader = (p: ImageLoaderProps) => string;
declare type PlaceholderValue = 'blur' | 'empty';
declare type OnLoadingComplete = (img: HTMLImageElement) => void;
export interface StaticImageData {
src: string;
height: number;
width: number;
blurDataURL?: string;
blurWidth?: number;
blurHeight?: number;
}
interface StaticRequire {
default: StaticImageData;
}
declare type StaticImport = StaticRequire | StaticImageData;
declare type SafeNumber = number | `${number}`;
export declare type ImageProps = Omit<JSX.IntrinsicElements['img'], 'src' | 'srcSet' | 'ref' | 'alt' | 'width' | 'height' | 'loading'> & {
src: string | StaticImport;
alt: string;
width?: SafeNumber;
height?: SafeNumber;
fill?: boolean;
loader?: ImageLoader;
quality?: SafeNumber;
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;
};
declare const Image: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>, "height" | "width" | "loading" | "ref" | "alt" | "src" | "srcSet"> & {
src: string | StaticImport;
alt: string;
width?: SafeNumber | undefined;
height?: SafeNumber | undefined;
fill?: boolean | undefined;
loader?: ImageLoader | undefined;
quality?: SafeNumber | undefined;
priority?: boolean | undefined;
loading?: LoadingValue;
placeholder?: PlaceholderValue | undefined;
blurDataURL?: string | undefined;
unoptimized?: boolean | undefined;
onLoadingComplete?: OnLoadingComplete | undefined;
/**
* @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 | undefined;
/**
* @deprecated Use `style` prop instead.
*/
objectFit?: string | undefined;
/**
* @deprecated Use `style` prop instead.
*/
objectPosition?: string | undefined;
/**
* @deprecated This prop does not do anything.
*/
lazyBoundary?: string | undefined;
/**
* @deprecated This prop does not do anything.
*/
lazyRoot?: string | undefined;
} & React.RefAttributes<HTMLImageElement | null>>;
export default Image;