import { UIElement } from "../ui/ui-element.js"; import { MediaExtension } from "@videojs/media/dom"; //#region src/extensions/media-extension-element.d.ts /** * Abstract base for extension elements that register a media extension (e.g. Mux Data, Google Cast) with the media * provided by the surrounding player. * * Place inside a player, as a sibling of the media element. The component is registered when a media adapter becomes * available, follows the media when it changes, is removed when this element disconnects, and is destroyed with this * element. */ declare abstract class MediaExtensionElement extends UIElement { #private; /** * Create the media extension this element registers. Called once, lazily. * * Must be a method rather than a field: upgrading an element that is already in the document runs its constructor * while connected, so the media context callback below can fire before subclass field initializers have run. */ protected abstract createComponent(): Component; /** The media extension instance registered with the media adapter. */ protected get component(): Component; constructor(); disconnectedCallback(): void; destroyCallback(): void; } //#endregion export { MediaExtensionElement }; //# sourceMappingURL=media-extension-element.d.ts.map