/** * 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