import { ImageField } from '../../state';
type ImageProps = {
image: ImageField;
dimensions?: {
height: number;
width: number;
media?: string;
}[];
options?: {
loading?: 'eager' | 'lazy';
priority?: boolean;
};
className?: string;
};
/**
* This ResponsiveImage component combines the optimization of the NextJS Image
* component with our cmsImage function, which works with the resizing capabilities
* of the MrRichards API.
*
* For most use cases, the NextJS Image will be more than sufficient. However,
* as we cannot control the srcset of the NextJS Image there may be cases where
* the aspect ratio of the rendered img mean we are requesting a large image, much
* of which is being cropped out of view. In this case there may be more room
* for improvement which the ResponsiveImage can provide.
*
* The default dimensions are suitable for fullscreen hero images where the height
* on smaller screen devices is greater than the width (the widths are based off
* the NextJS default srcset) but can be overwritten with the `dimensions` prop.
*
* @example
* ```tsx
*
* ```
*
* The default dimensions assume that the images are full width of the screen by
* using the width of each `dimension` to set the media breakpoint. `dimensions`
* which set only `width` and `height` will follow this format. However, an
* optional `media` field can be added to each `dimension` object to set breakpoints
* separate from the image width.
*
* @example
* ```tsx
*
*
* ```
*/
export default function ResponsiveImage({ image, dimensions, options, className }: ImageProps): import("react/jsx-runtime").JSX.Element;
export {};
//# sourceMappingURL=responsive-image.d.ts.map