import { type Interval, type PerseusImageBackground, type PerseusImageLabel, type Size } from "@khanacademy/perseus-core"; import * as React from "react"; import type { APIOptions } from "../../../types"; import type { LinterContextProps } from "@khanacademy/perseus-linter"; export interface ImageInfoAreaProps { backgroundImage: PerseusImageBackground; title: string; caption: string; alt: string; longDescription: string; box: Size; labels: Array; range: [Interval, Interval]; linterContext: LinterContextProps; apiOptions: APIOptions; /** * zoomSize represents the larger of the image’s natural size (calculated on load) * and the saved backgroundImage size (specified when the content is written). This * ensures that zooming is enabled only if the image is sufficiently large. * image (calculated on load) and the saved backgroundImage size (specified * when the content is written). This larger image size is used to * determine if the image is large enough to allow zooming. */ zoomSize: Size; isGifPlaying: boolean; setIsGifPlaying: (isPaused: boolean) => void; } /** * The ImageInfoArea component includes the GIF controls, description modal * launcher, and caption for the image. This is displayed underneath the image * in the Image widget. */ export declare const ImageInfoArea: (props: ImageInfoAreaProps) => React.JSX.Element | null;