import { AsyncDirective, type ElementPart, type PartInfo } from '../index.js'; /** What {@link elementRefDirective} fills. */ export interface ElementRefTarget { set(element: Element, options: unknown): void; delete(element: Element): boolean; } declare class ElementRefDirective extends AsyncDirective { target?: ElementRefTarget; element?: Element; options?: unknown; constructor(partInfo: PartInfo); render(target: ElementRefTarget, options: unknown): symbol; update(part: ElementPart, [target, options]: [ElementRefTarget, unknown]): symbol; disconnected(): void; reconnected(): void; } /** One class for every reference, as lit identifies a directive by its class. */ export declare const elementRefDirective: (target: ElementRefTarget, options: unknown) => import("lit-html/directive.js").DirectiveResult; export {}; //# sourceMappingURL=ElementRefDirective.d.ts.map