declare module '@micrio/client' { import type { Readable, Writable } from 'svelte/store'; /** * Defines the current version of the Micrio library. * This constant is used internally and exposed statically via `HTMLMicrioElement.VERSION`. */ export const VERSION = "5.3.2"; /** * Loads an image texture asynchronously. Adds the request to the queue * and returns a Promise that resolves with the TextureBitmap or rejects on error. * @param src The URL of the image to load. * @returns A Promise resolving to the loaded TextureBitmap. */ export const loadTexture: (src: string) => Promise; export type PREDEFINED = [string, Models.ImageInfo.ImageInfo, Models.ImageData.ImageData | undefined]; /** Enum for identifying media type. */ export enum MediaType { None = 0, IFrame = 1, Video = 2, Audio = 3, VideoTour = 4, Micrio = 5 } /** Enum for identifying iframe player type. */ export enum FrameType { YouTube = 1, Vimeo = 2 } /** * Converts seconds into a human-readable time string (hh?:mm:ss). * @param s Time in seconds. Can be negative for remaining time display. * @returns Formatted time string (e.g., "1:23", "1:05:09", "-0:15"). */ export function parseTime(s: number): string; /** * Decodes a character from a Micrio ID into its numeric value (used for V4 short IDs). * @private */ export const getIdVal: (a: string) => number; /** Checks if an ID likely belongs to the V5 format (6 or 7 characters). */ export const idIsV5: (id: string) => boolean; /** Clamps a view rectangle [x0, y0, x1, y1] to the image bounds [0, 0, 1, 1]. */ export const limitView: (v: Models.Camera.View) => Models.Camera.View; /** * Calculates the 3D vector and navigation parameters between two images in a 360 space. * Used for smooth transitions between waypoints. * @private * @param micrio The main HTMLMicrioElement instance. * @param targetId The ID of the target image. * @returns An object containing the vector, normalized vector, direction, and transition parameters, or undefined if calculation fails. */ export function getSpaceVector(micrio: HTMLMicrioElement, targetId: string): { vector: Models.Camera.Vector; directionX: number; v: Models.Spaces.DirectionVector; vN: Models.Spaces.DirectionVector; } | undefined; /** * Checks if the browser natively supports HLS video playback via the `