// Generated by dts-bundle-generator v8.0.1 import { Vault } from '@iiif/helpers/vault'; import { Annotation, AnnotationNormalized, AnnotationTarget, CanvasNormalized, Collection, CollectionNormalized, IIIFExternalWebResource, InternationalString, Manifest, MetadataItem, Reference } from '@iiif/presentation-3'; import { IncomingHttpHeaders } from 'http'; import OpenSeadragon from 'openseadragon'; import { Options, Options as OpenSeadragonOptions } from 'openseadragon'; import React from 'react'; import { MediaHTMLAttributes, ReactElement, ReactNode } from 'react'; export interface LabeledIIIFExternalWebResource extends IIIFExternalWebResource { label?: InternationalString; region?: string; } export interface CloverImageProps { _cloverViewerHasPlaceholder?: boolean; annotations?: Array<{ annotation: Annotation; targetIndex: number; }>; body?: LabeledIIIFExternalWebResource | LabeledIIIFExternalWebResource[]; instanceId?: string; isTiledImage?: boolean; label?: InternationalString | string; src?: string | string[]; openSeadragonCallback?: (viewer: any) => void; openSeadragonConfig?: Options; } declare const CloverImage: React.FC; export interface PrimitivesPrimitive extends React.HTMLAttributes { } export interface PrimitivesCustomValueContent { matchingLabel: InternationalString; Content: ReactElement; } export interface PrimitivesMetadataItem extends PrimitivesPrimitive { item: MetadataItem; customValueContent?: ReactElement; customValueDelimiter?: string; } export interface PrimitivesContentResource extends PrimitivesPrimitive { altAsLabel?: InternationalString; contentResource: PrimitivesExternalWebResource; region?: string; } export interface PrimitivesExternalWebResource { id: string; type: "Dataset" | "Image" | "Video" | "Sound" | "Text"; format?: string; label?: InternationalString; language?: string | string[]; duration?: number; width?: number; height?: number; profle?: string; } export interface PrimitivesIIIFResource { id: string; type: "Collection" | "Manifest"; label?: InternationalString | undefined; } export interface PrimitivesHomepage extends PrimitivesPrimitive { children?: ReactNode | ReactNode[]; homepage: PrimitivesExternalWebResource[]; } export interface PrimitivesLabel extends PrimitivesPrimitive { as?: "dd" | "dt" | "figcaption" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "label" | "p" | "span"; label: InternationalString; } export interface PrimitivesMarkup extends PrimitivesPrimitive { as?: "span" | "p" | "label" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "dd"; markup?: InternationalString; } export interface PrimitivesMetadata extends PrimitivesPrimitive { as?: "dl"; customValueContent?: PrimitivesCustomValueContent[]; customValueDelimiter?: string; metadata: MetadataItem[]; } export interface PrimitivesPartOf extends PrimitivesPrimitive { as?: "ol" | "ul"; partOf: PrimitivesIIIFResource[]; } export interface PrimitivesRendering extends PrimitivesPrimitive { as?: "ol" | "ul"; rendering: PrimitivesExternalWebResource[]; } export interface PrimitivesRequiredStatement extends PrimitivesPrimitive { as?: "dl"; customValueDelimiter?: string; requiredStatement: MetadataItem; } export interface PrimitivesSeeAlso extends PrimitivesPrimitive { as?: "ol" | "ul"; seeAlso: PrimitivesExternalWebResource[]; } export interface PrimitivesSummary extends PrimitivesPrimitive { as?: "span" | "p" | "label" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6"; customValueDelimiter?: string; summary: InternationalString; } export interface PrimitivesThumbnail extends PrimitivesPrimitive { altAsLabel?: InternationalString; region?: string; thumbnail: IIIFExternalWebResource[]; } export interface PrimitivesValue extends PrimitivesPrimitive { as?: "span" | "dd"; value: InternationalString; } export interface CloverPrimitivesComposition { ContentResource: React.FC; Homepage: React.FC; Label: React.FC; Markup: React.FC; Metadata: React.FC; MetadataItem: React.FC; PartOf: React.FC; Rendering: React.FC; RequiredStatement: React.FC; SeeAlso: React.FC; Summary: React.FC; Thumbnail: React.FC; Value: React.FC; } declare const _default: CloverPrimitivesComposition; export type LanguageOption = { [key: string]: string; }; export interface ScrollFigureOptions { display?: "thumbnail" | "image-viewer"; aspectRatio?: number; width?: CSSStyleDeclaration["width"]; } export interface ScrollLanguageOptions { defaultLanguages?: string[]; enabled?: boolean; options?: LanguageOption[]; } export interface ScrollAnnotationsOptions { motivations?: string[]; } export interface ScrollOptions { offset?: number; figure?: ScrollFigureOptions; language?: ScrollLanguageOptions; annotations?: ScrollAnnotationsOptions; } export interface CloverScrollProps { iiifContent: string; options?: ScrollOptions; } declare const CloverScroll: React.FC; export interface SliderBreakpointConfig { slidesPerView?: number; slidesPerGroup?: number; spaceBetween?: number; } export type SliderBreakpoints = Record; export interface ConfigOptions { breakpoints?: SliderBreakpoints; credentials?: FetchCredentials; customViewAll?: string; } export type CustomHomepage = Array & { label?: { none: string[]; }; }>; export type SliderItem = Omit & { homepage: CustomHomepage; }; export type FetchCredentials = "omit" | "same-origin" | "include"; export interface CloverSliderProps { collectionId?: string; iiifContent: string; onItemInteraction?: (item: SliderItem) => void; options?: ConfigOptions; } declare const CloverSlider: React.FC; export type AnnotationBodyRaw = { type: string; value?: string; format?: string; language?: string; label?: InternationalString; id?: string; }; export type AnnotationTargetRaw = string | { type?: string; id?: string; source?: string | { id: string; type: string; partOf?: Array<{ id: string; type: string; }>; }; selector?: { type: string; value?: string; conformsTo?: string; }; partOf?: Array<{ id: string; type: string; }>; }; export type AnnotationRaw = { id: string; type: "Annotation"; motivation: string | string[]; body: AnnotationBodyRaw | AnnotationBodyRaw[]; target: AnnotationTargetRaw; }; export type AnnotationPageRaw = { id: string; type: "AnnotationPage"; startIndex?: number; next?: string; items: AnnotationRaw[]; }; export type AnnotationCollectionNormalized = { id: string; type: "AnnotationCollection"; label?: InternationalString; total?: number; pages: AnnotationPageRaw[]; }; export type AutoScrollSettings = { behavior: string; block: string; }; export type AutoScrollOptions = { enabled: boolean; settings: AutoScrollSettings; }; export type ViewerConfigOptions = { annotationOverlays?: OverlayOptions; annotations?: { motivations?: string[]; }; background?: string; canvasBackgroundColor?: string; canvasHeight?: string; contentSearch?: { searchResultsLimit?: number; overlays?: OverlayOptions; }; crossOrigin?: MediaHTMLAttributes["crossOrigin"]; ignoreCaptionLabels?: string[]; informationPanel?: { open?: boolean; renderAbout?: boolean; renderSupplementing?: boolean; renderToggle?: boolean; renderAnnotation?: boolean; renderAnnotationCollection?: boolean; vtt?: { autoScroll?: AutoScrollOptions | AutoScrollSettings | boolean; }; renderContentSearch?: boolean; defaultTab?: string; annotationTabLabel?: string; annotationCollectionTabLabel?: string; }; openSeadragon?: OpenSeadragonOptions; requestHeaders?: IncomingHttpHeaders; showDownload?: boolean; showIIIFBadge?: boolean; showTitle?: boolean; customLoadingComponent?: React.ComponentType; withCredentials?: boolean; localeText?: { contentSearch?: { tabLabel?: string; formPlaceholder?: string; noSearchResults?: string; loading?: string; moreResults?: string; }; }; }; export type OverlayOptions = { backgroundColor?: string; borderColor?: string; borderType?: string; borderWidth?: string; opacity?: string; renderOverlays?: boolean; zoomLevel?: number; }; export type CustomDisplay = { display: { component: React.ElementType; componentProps?: Record; }; target: { canvasId?: string[]; paintingFormat?: string[]; }; }; export type PluginConfig = { id: string; imageViewer?: { controls?: { component: React.ElementType; componentProps?: Record; }; }; informationPanel?: { component: React.ElementType; componentProps?: Record; label: InternationalString; }; }; export type ViewingDirection = "left-to-right" | "right-to-left" | "top-to-bottom" | "bottom-to-top"; export interface ViewerContextStore { activeCanvas: string; activeAnnotationId?: string | null; activeManifest: string; activePlayer: HTMLVideoElement | HTMLAudioElement | null; activeSelector?: string; OSDImageLoaded?: boolean; annotationCollection?: AnnotationCollectionNormalized; pendingAnnotationTarget?: { canvasId: string; annotationId: string; } | null; collection?: CollectionNormalized | Record; contentStateAnnotation?: AnnotationNormalized; configOptions: ViewerConfigOptions; customDisplays: Array; plugins: Array; informationPanelResource?: string; isAutoScrollEnabled?: boolean; isAutoScrolling?: boolean; isInformationOpen: boolean; isLoaded: boolean; isMediaPlaying: boolean; isPaged: boolean; isUserScrolling?: number | undefined; sequence: [ Reference<"Canvas">[], number[][] ]; vault: Vault; viewingDirection: ViewingDirection; openSeadragonViewer: OpenSeadragon.Viewer | null; openSeadragonId?: string; viewerId?: string; visibleCanvases: Array>; visibleAnnotations?: Array>; } export interface ParsedAnnotationTarget { id: string; point?: { x: number; y: number; }; rect?: { x: number; y: number; w: number; h: number; }; svg?: string; t?: string; } export type ContentSearchQuery = { q: string; motivation?: string; date?: string; user?: string; }; export interface CloverViewerProps { canvasIdCallback?: (arg0: string) => void; contentStateCallback?: (iiifContentState: object) => void; contentSearchCallback?: (query: string) => void; customDisplays?: Array; plugins?: Array; customTheme?: any; iiifContent: string | object; id?: string; manifestId?: string; options?: ViewerConfigOptions; iiifContentSearchQuery?: ContentSearchQuery; } declare const CloverViewer: React.FC; export type AnnotationTargetExtended = AnnotationTarget & { selector?: any; source?: string; svg?: string; }; declare function createOpenSeadragonRect(canvas: CanvasNormalized, parsedAnnotationTarget: ParsedAnnotationTarget, zoomLevel: number): OpenSeadragon.Rect; export interface Plugin { canvas: CanvasNormalized; useViewerDispatch: () => ViewerContextStore; useViewerState: () => ViewerContextStore; } export interface PluginInformationPanel extends Plugin { annotations?: Annotation[]; } export declare const helpers: { parseAnnotationTarget: (target: AnnotationTargetExtended | string) => ParsedAnnotationTarget; createOpenSeadragonRect: typeof createOpenSeadragonRect; }; export { CloverImage as Image, CloverScroll as Scroll, CloverSlider as Slider, CloverViewer as Viewer, CloverViewer as default, _default as Primitives, }; export {};