import ViewerComponent from './components/Viewer.svelte'; import type { ViewerConfig } from './core/types/config'; import type { ViewerEventMap } from './core/types/events'; import type { ViewerPlugin } from './core/types/plugin'; import type { ModelPose, ModelPoseOptions } from './core/types/model'; import type { ViewerApi } from './core/types/viewer-api'; import type { ContentSize, ViewBox, ViewerStateSnapshot } from './core/types/viewer'; import { registerPlugin } from './plugins/registry'; import type { MediaType, MediaSource } from './iiif/mediaResolver'; export type MangoOptions = { target: HTMLElement; manifestId?: string; config?: ViewerConfig | string; plugins?: ViewerPlugin[]; }; export declare class Mango implements ViewerApi { private instance; private manifestId; constructor({ target, manifestId, config, plugins }: MangoOptions); getManifestId(): string | null; getViewBox(): ViewBox | null; getContentSize(): ContentSize | null; setViewBox(box: ViewBox): void; getZoom(): number; setZoom(percent: number): void; zoomIn(): void; zoomOut(): void; panTo(x: number, y: number): void; getMediaType(): MediaType | null; getState(): ViewerStateSnapshot | null; setManifest(manifestId: string): void; setCanvasByIndex(index: number): void; setCanvasById(canvasId: string): void; start(): void; play(): void; pause(): void; stop(): void; seekBy(delta: number): void; seekTo(time: number): void; setModelOrbit(orbit: string): void; setModelTarget(target: string): void; setModelOrientation(orientation: string): void; setModelPose(pose: ModelPose, options?: ModelPoseOptions): void; getModelOrbit(): string | null; getModelTarget(): string | null; getModelOrientation(): string | null; getModelPose(): ModelPose | null; getCanvasIndex(): number; getCanvasId(): string | null; addAnnotation(annotation: unknown): Promise; removeAnnotation(annotationId: string): Promise; updateLayerOpacity(id: string, opacity: number): void; getLayerOpacities(): Record; getMediaSources(): MediaSource[]; on(event: K, handler: (payload: ViewerEventMap[K]) => void): () => void; off(event: K, handler: (payload: ViewerEventMap[K]) => void): void; destroy(): void; } export { ViewerComponent }; export type { ViewerConfig } from './core/types/config'; export type { ViewBox, ViewerStateSnapshot } from './core/types/viewer'; export type { PluginCapabilities, PluginContext, PluginLifecycle, PluginSlot, ViewerPlugin, } from './core/types/plugin'; export type { MediaType, MediaSource } from './iiif/mediaResolver'; export { registerPlugin }; export { createHelloPanelPlugin } from './plugins/helloPanel'; export { createAddAnnotationPlugin } from './plugins/addAnnotation'; export type { ViewerEventBus, ViewerEventMap } from './core/types/events'; export type { ViewerApi } from './core/types/viewer-api'; export type { ModelPose, ModelPoseOptions, ModelPoseTransition } from './core/types/model'; export type { AnnotationPlacement, Chapter, ChapterAdvance, ChapterAnnotation, ChapterMedia, ChapterModel, LanguageMap, NarrationSegment, NarrationTrack, } from './core/types/story'; export type { StoryAnnotation, StoryAnnotationPage, } from './story/storySerializer';