import { TemplateResult, nothing } from 'lit'; import OmniElement from '../core/OmniElement.js'; import '../icons/Loading.icon.js'; /** * Element that defers content rendering to a provided function / promise. * * @import * ```js * import '@capitec/omni-components/render-element'; * ``` * * @example * ```html * * ``` * * @element omni-render-element * * @cssprop --omni-render-element-loading-indicator-width - Loading Indicator width */ export declare class RenderElement extends OmniElement { /** * Renderer function * @no_attribute */ renderer?: RenderFunction; /** * Data associated with the component. * @attr */ data?: object | Promise; connectedCallback(): void; static get styles(): import("lit").CSSResultGroup[]; protected renderLoading(): TemplateResult<1>; protected renderAsync(): Promise; private _setChildInstance; private _updateChildInstance; private _internalRenderer; private _clearElements; } export type RenderResult = TemplateResult | typeof nothing | HTMLElement | string; export type RenderFunction = (...data: unknown[]) => RenderResult | Promise; declare global { interface HTMLElementTagNameMap { 'omni-render-element': RenderElement; } } //# sourceMappingURL=RenderElement.d.ts.map