UNPKG

element-vir

Version:

Heroic. Reactive. Declarative. Type safe. Web components without compromise.

45 lines (44 loc) 1.49 kB
import { type MaybePromise } from '@augment-vir/common'; import { type PartInfo } from '../../lit-exports/all-lit-exports.js'; /** * The callback / listener passed to {@link onDomCreated}. The `element` parameter is a reference to * the DOM element that the directive was attached to. * * @category Internal */ export type OnDomCreatedCallback = (element: Element) => MaybePromise<void>; /** * A directive that fires its listener only once, when the element that it's attached to is * constructed. This is particularly useful for getting references to internal elements immediately * after they've rendered. * * @category Directives * @example * * ```ts * import {html, defineElement, onDomCreated} from 'element-vir'; * * const MyElement = defineElement()({ * tagName: 'my-element', * render() { * return html` * <div * ${onDomCreated((element) => { * console.log('created!', element); * })} * > * Some div * </div> * `; * }, * }); * ``` */ export declare const onDomCreated: (callback: OnDomCreatedCallback) => import("lit-html/directive.js").DirectiveResult<{ new (partInfo: PartInfo): { element: Element | undefined; update(partInfo: PartInfo, [callback]: [OnDomCreatedCallback]): undefined; render(callback: OnDomCreatedCallback): undefined; readonly _$isConnected: boolean; }; }>;