/** * Generate schema.org `ImageObject` JSON-LD for image metadata. * * Accepts author/copyright holders, thumbnail, licenses and descriptive * metadata and formats them into an `ImageObject` suitable for JSON-LD * embedding. Only provided fields are emitted. * * See `ImageMetadataOptions` for the exact accepted fields. * @returns A JSON-LD compatible `ImageObject` */ interface SimplePerson { name: string; url?: string; } interface ImageThumbnail { url: string; width?: number; height?: number; } interface ImageMetadataOptions { name?: string; contentUrl: string; description?: string; caption?: string; uploadDate?: string; author?: string | SimplePerson; copyrightHolder?: string | SimplePerson; license?: string; encodingFormat?: string; contentSize?: string; thumbnail?: string | ImageThumbnail; keywords?: string[]; } declare const generateImageMetadataSchema: ({ name, contentUrl, description, caption, uploadDate, author, copyrightHolder, license, encodingFormat, contentSize, thumbnail, keywords, }: ImageMetadataOptions) => any; export { generateImageMetadataSchema };