/**
* Which `html` template rendered an element, on a page the plugin never
* built, so a host with the page's sources can find where it is written.
* The plugin stamps that place on the element at transform time; without
* it, the only lead is the template's own text.
*
* lit-html keeps a template's strings only as a module-private cache key,
* so they are recorded as templates are made: lit-html hands its
* `ChildPart` class to `litHtmlPolyfillSupport` (`…DevMode` in the
* development build) when it loads, and the hook installed here wraps the
* method that looks a result's template up (`_$getTemplate`, `_$AC` in the
* production build) to remember the strings of each template it returns.
* That only works if it runs before the page's lit-html does, at
* `document_start` in the extension. A hook something else sets, before or
* after, still runs.
*
* Reading which template made an element walks lit-html's part tree with
* the same private names `child-state.ts` uses. Every step is guarded; a
* surprise leaves the element without a template site.
*/
import type { TemplateSite } from '../../types/inspector.js';
/**
* Sets the polyfill hooks lit-html calls as it loads. Idempotent. A hook
* already there, or one set later, is called too.
*/
export declare const installTemplateSites: () => void;
/**
* The template that rendered `el` and which of its `` elements `el` is,
* when the hook recorded that template; `undefined` otherwise.
*/
export declare const templateSiteOf: (el: Element) => TemplateSite | undefined;
//# sourceMappingURL=template-sites.d.ts.map