import { UmbLitElement } from '../lit-element/index.js'; import type { ClassConstructor, ManifestElementAndApi } from '../../../libs/extension-api/index.js'; export declare abstract class UmbExtensionElementAndApiSlotElementBase extends UmbLitElement { #private; get alias(): string | undefined; set alias(newVal: string | undefined); set props(newVal: Record | undefined); get props(): Record | undefined; protected _api: ManifestType['API_TYPE'] | undefined; protected _element: ManifestType['ELEMENT_TYPE'] | undefined; abstract getExtensionType(): string; abstract getDefaultElementName(): string; getDefaultApiConstructor?(): ClassConstructor; /** * Called when the API is changed. * @protected * @param {(ManifestType['API_TYPE'] | undefined)} api - The new API instance * @memberof UmbExtensionElementAndApiSlotElementBase */ protected apiChanged(api: ManifestType['API_TYPE'] | undefined): void; /** * Called when the element is changed. * @protected * @param {(ManifestType['ELEMENT_TYPE'] | undefined)} element - The new element instance * @memberof UmbExtensionElementAndApiSlotElementBase */ protected elementChanged(element: ManifestType['ELEMENT_TYPE'] | undefined): void; /** * Render the element. * @returns {(ManifestType['ELEMENT_TYPE'] | undefined)} The rendered element * @memberof UmbExtensionElementAndApiSlotElementBase */ render(): ManifestType["ELEMENT_TYPE"] | undefined; /** * Disable the Shadow DOM for this element. This is needed because this is a wrapper element and should not stop the event propagation. * @returns {HTMLElement} This element as its own render root */ protected createRenderRoot(): this; }