import React, { Ref } from 'react'; import { Sdp, Html5VideoPipeline, Html5CanvasPipeline, HttpMsePipeline, TransformationMatrix } from 'media-stream-library'; import { MetadataHandler } from './metadata'; import { Format } from './types'; export declare type PlayerNativeElement = HTMLVideoElement | HTMLCanvasElement | HTMLImageElement; export declare type PlayerPipeline = Html5VideoPipeline | Html5CanvasPipeline | HttpMsePipeline; export declare enum AxisApi { 'AXIS_IMAGE_CGI' = "AXIS_IMAGE_CGI", 'AXIS_MEDIA_AMP' = "AXIS_MEDIA_AMP", 'AXIS_MEDIA_CGI' = "AXIS_MEDIA_CGI" } export declare enum Protocol { 'HTTP' = "http:", 'HTTPS' = "https:", 'WS' = "ws:", 'WSS' = "wss:" } export declare const FORMAT_API: Record; export interface VapixParameters { readonly [key: string]: string; } export declare type Range = readonly [number | undefined, number | undefined]; export interface VideoProperties { readonly el: PlayerNativeElement; readonly width: number; readonly height: number; readonly formatSupportsAudio: boolean; readonly pipeline?: PlayerPipeline; readonly media?: ReadonlyArray<{ readonly type: 'video' | 'audio' | 'data'; readonly mime: string; }>; readonly volume?: number; readonly range?: Range; readonly sensorTm?: TransformationMatrix; } interface PlaybackAreaProps { readonly forwardedRef?: Ref; readonly host: string; readonly format: Format; readonly parameters?: VapixParameters; readonly play?: boolean; readonly offset?: number; readonly refresh: number; readonly onPlaying: (properties: VideoProperties) => void; readonly onSdp?: (msg: Sdp) => void; readonly metadataHandler?: MetadataHandler; readonly secure?: boolean; /** * Activate automatic retries on RTSP errors. */ readonly autoRetry?: boolean; } export declare const PlaybackArea: React.FC; export {};