import { MediaElement } from "../media-element.js";
import { tooltipGroupContext } from "./context.js";
import { ContextProvider } from "@videojs/element/context";
import { TooltipGroupCore } from "@videojs/core";

//#region src/ui/tooltip/tooltip-group-element.ts
var TooltipGroupElement = class extends MediaElement {
	constructor(..._args) {
		super(..._args);
		this.delay = TooltipGroupCore.defaultProps.delay;
		this.closeDelay = TooltipGroupCore.defaultProps.closeDelay;
		this.timeout = TooltipGroupCore.defaultProps.timeout;
	}
	static {
		this.tagName = "media-tooltip-group";
	}
	static {
		this.properties = {
			delay: { type: Number },
			closeDelay: {
				type: Number,
				attribute: "close-delay"
			},
			timeout: { type: Number }
		};
	}
	#core = new TooltipGroupCore();
	#provider = new ContextProvider(this, {
		context: tooltipGroupContext,
		initialValue: this.#core
	});
	update(_changed) {
		super.update(_changed);
		this.#core.setProps(this);
		this.#provider.setValue(this.#core);
	}
};

//#endregion
export { TooltipGroupElement };
//# sourceMappingURL=tooltip-group-element.js.map