import { MuxMediaProps, StreamTypes, PlaybackTypes, ValueOf, Metadata, MediaError, CmcdTypes } from '@mux/playback-core'; import type { PlaybackEngine, Autoplay, ExtensionMimeTypeMap } from '@mux/playback-core'; import CustomVideoElement, { VideoEvents } from './CustomVideoElement'; /** @TODO make the relationship between name+value smarter and more deriveable (CJP) */ type AttributeNames = { ENV_KEY: 'env-key'; DEBUG: 'debug'; METADATA_URL: 'metadata-url'; PLAYER_SOFTWARE_VERSION: 'player-software-version'; PLAYER_SOFTWARE_NAME: 'player-software-name'; BEACON_COLLECTION_DOMAIN: 'beacon-collection-domain'; CUSTOM_DOMAIN: 'custom-domain'; DISABLE_COOKIES: 'disable-cookies'; PLAYBACK_ID: 'playback-id'; PREFER_PLAYBACK: 'prefer-playback'; TYPE: 'type'; STREAM_TYPE: 'stream-type'; START_TIME: 'start-time'; PREFER_CMCD: 'prefer-cmcd'; }; export declare const Attributes: AttributeNames; declare class IxVideoElement extends CustomVideoElement implements Partial { #private; static get observedAttributes(): string[]; constructor(); get preferCmcd(): ValueOf | undefined; set preferCmcd(value: ValueOf | undefined); get playerInitTime(): number; get playerSoftwareName(): string | undefined; set playerSoftwareName(value: string | undefined); get playerSoftwareVersion(): string | undefined; set playerSoftwareVersion(value: string | undefined); get _hls(): PlaybackEngine | undefined; get mux(): Readonly | undefined; get error(): MediaError | null; get errorTranslator(): ((errorEvent: any) => any) | undefined; set errorTranslator(value: ((errorEvent: any) => any) | undefined); get src(): string; set src(val: string); get type(): ValueOf | undefined; set type(val: ValueOf | undefined); /** @ts-ignore */ get autoplay(): Autoplay; /** @ts-ignore */ set autoplay(val: Autoplay); get preload(): "" | "auto" | "none" | "metadata"; set preload(val: "" | "auto" | "none" | "metadata"); get debug(): boolean; set debug(val: boolean); get disableCookies(): boolean; set disableCookies(val: boolean); get startTime(): number | undefined; set startTime(val: number | undefined); get playbackId(): string | undefined; set playbackId(val: string | undefined); get customDomain(): string | undefined; set customDomain(val: string | undefined); get envKey(): string | undefined; set envKey(val: string | undefined); get beaconCollectionDomain(): string | undefined; set beaconCollectionDomain(val: string | undefined); get streamType(): ValueOf | undefined; set streamType(val: ValueOf | undefined); get preferPlayback(): ValueOf | undefined; set preferPlayback(val: ValueOf | undefined); get metadata(): Readonly | undefined; set metadata(val: Readonly | undefined); load(): void; unload(): void; attributeChangedCallback(attrName: string, oldValue: string | null, newValue: string | null): void; disconnectedCallback(): void; } type IxVideoElementType = typeof IxVideoElement; declare global { var IxVideoElement: IxVideoElementType; } export { PlaybackEngine, PlaybackEngine as Hls, ExtensionMimeTypeMap as MimeTypes, MediaError, VideoEvents }; export default IxVideoElement;