import React from 'react'; interface FigmaCacheLocation { directory: string; publicBasePath: string; } type CachedFigmaImage = { format: 'svg'; svg: string; publicPath: string; } | { format: 'png' | 'jpg'; publicPath: string; }; declare function getFigmaCacheKey(input: { fileId: string; selector: string; options: Omit; version?: string; }): string; type Format = 'svg' | 'png' | 'jpg'; declare function resolveFigmaCacheLocation(configuredPath: string | undefined): FigmaCacheLocation; declare function readCachedFigmaImage(key: string, cacheLocation: FigmaCacheLocation, options?: { label?: string; nodeId?: string; scale?: number; }): Promise; declare function readAnyCachedFigmaImage(cacheLocation: FigmaCacheLocation, options?: { label?: string; nodeId?: string; scale?: number; }): Promise; declare function writeFigmaCacheFile(key: string, format: Format, content: string | ArrayBuffer, cacheLocation: FigmaCacheLocation, options?: { label?: string; nodeId?: string; scale?: number; }): Promise<{ publicPath: string; }>; type FigmaSource = `figma:${string}`; interface SharedImageProps extends Omit, 'alt' | 'src' | 'srcSet'> { /** Optional description for accessibility. */ description?: string; } interface FigmaSvgOptions { svgOutlineText?: boolean; svgIncludeId?: boolean; svgIncludeNodeId?: boolean; svgSimplifyStroke?: boolean; } interface FigmaImageOptions extends FigmaSvgOptions { /** Desired output format when rendering from Figma. Defaults to `png`. */ format?: Format; /** Resolution scale to request from Figma. */ scale?: number; /** Background color when requesting raster formats from Figma. */ background?: string; /** Whether to use the absolute bounding box when exporting from Figma. */ useAbsoluteBounds?: boolean; } interface NonFigmaImageOptions { format?: never; scale?: never; background?: never; useAbsoluteBounds?: never; } export type ImageProps = SharedImageProps & (Source extends FigmaSource ? { source: Source; } & FigmaImageOptions : { source: Source; } & NonFigmaImageOptions); /** Display images from Figma files, URLs, or local assets. */ export declare function Image({ source, format, scale, background, useAbsoluteBounds, description, ...props }: ImageProps): Promise; export declare const __TEST_ONLY__: { getFigmaCacheKey: typeof getFigmaCacheKey; readAnyCachedFigmaImage: typeof readAnyCachedFigmaImage; readCachedFigmaImage: typeof readCachedFigmaImage; resolveFigmaCacheLocation: typeof resolveFigmaCacheLocation; writeFigmaCacheFile: typeof writeFigmaCacheFile; }; export {};