import { ReactiveElement } from "@videojs/element";
import { Constructor } from "@videojs/utils/types";

//#region src/define/skin-mixin.d.ts
/**
 * Mixin for skin elements that renders the template from a static
 * `getTemplateHTML` method into a shadow root. Native `<slot>` elements
 * handle light DOM projection automatically.
 *
 * When `static styles` is set, the stylesheet is adopted into the
 * shadow root via `adoptedStyleSheets`.
 */
declare function SkinMixin<Base extends Constructor<ReactiveElement>>(BaseClass: Base): Base & {
  shadowRootOptions: ShadowRootInit;
  styles?: CSSStyleSheet;
};
/** Create a shared `CSSStyleSheet` from a CSS string. */
declare function createStyles(css: string): CSSStyleSheet;
//#endregion
export { SkinMixin, createStyles };
//# sourceMappingURL=skin-mixin.d.ts.map