| void;
/**
* `htmlHook()` — create a reusable child-part directive that lets you
* render HTML templates into a slot.
*
* Returns a **function** that accepts user-supplied arguments and produces
* a lit-html directive result. Define the hook once, use it anywhere.
*
* The first argument to the mount callback (`render`) is always injected —
* it pushes a `TemplateResult` into the child slot. Any extra parameters
* you define become the arguments the returned function accepts at the
* call site, and they flow through to `onUpdate` on every re-render.
*
* The `render` function can be called:
* - **Synchronously** during mount (content appears immediately)
* - **Asynchronously** from timers, fetch callbacks, observers, etc.
*
* While the mount callback or lifecycle methods are executing,
* `componentRunningStatus.isHookRunning` is set to `true`.
*
* @example
* ```ts
* // ── No args ──────────────────────────────────────────────────────
* const greeting = htmlHook((render) => {
* render(html`Hello, World!
`);
* });
* html`${greeting()}
`
*
* // ── With args ────────────────────────────────────────────────────
* const userCard = htmlHook((render, name: string, role: string) => {
* render(html`${name} — ${role}
`);
* return {
* onUpdate(nextName, nextRole) {
* render(html`${nextName} — ${nextRole}
`);
* },
* };
* });
* html`${userCard(user.name, user.role)}`
*
* // ── Async usage ──────────────────────────────────────────────────
* const asyncData = htmlHook((render, url: string) => {
* render(html`Loading...
`);
* fetch(url)
* .then(r => r.json())
* .then(data => render(html`${JSON.stringify(data)}`));
* return {
* onUpdate(nextUrl) {
* render(html`Loading...
`);
* fetch(nextUrl)
* .then(r => r.json())
* .then(data => render(html`${JSON.stringify(data)}`));
* },
* onCleanup() { /* cancel in-flight requests */ },
* };
* });
* html`${asyncData(currentUrl.val)}
`
* ```
*
* @template A - Tuple of user-supplied argument types.
* @param mountFn - Called once on first mount. Receives `render()` followed
* by the user-supplied args.
* @returns A function that accepts the user args and produces a directive result.
*/
export declare function htmlHook