import type { ViewerEventMap } from "../../core/types/events"; import type { ModelPose, ModelPoseOptions } from "../../core/types/model"; import type { ViewerApiTarget } from "../../core/types/viewer-api"; import type { ContentSize, ViewBox, ViewerStateSnapshot } from "../../core/types/viewer"; import type { MediaSource, MediaType } from "../../iiif/mediaResolver"; /** * One forwarding contract for the Svelte component and custom-element entrypoints. * Keeping fallback behaviour here prevents their public APIs from drifting apart. */ export declare class ViewerApiAdapter { private readonly getTarget; constructor(getTarget: () => ViewerApiTarget | null); on(event: K, handler: (payload: ViewerEventMap[K]) => void): () => void; off(event: K, handler: (payload: ViewerEventMap[K]) => void): void; setEventTarget(target: EventTarget): void; 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; getCanvasIndex(): number; getCanvasId(): string | null; getCanvasCount(): number; setCanvasByIndex(index: number): void; setCanvasById(canvasId: string): void; setManifest(id: string): void; getManifestId(): string | null; start(): void; play(): void; pause(): void; stop(): void; seekBy(delta: number): void; seekTo(time: number): void; setMediaSegment(start: number, end: 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; addAnnotation(annotation: unknown): Promise; removeAnnotation(annotationId: string): Promise; updateLayerOpacity(id: string, opacity: number): void; getLayerOpacities(): Record; getMediaSources(): MediaSource[]; }