import type { IDisposable } from "@surface/core"; import type { DirectiveEntry } from "../../types/index"; import type Block from "../block.js"; import type Expression from "../types/expression.js"; import type Factory from "../types/fatctory.js"; import type ObservablePath from "../types/observable-path.js"; declare type Context = { block: Block; directives: Map; factory: Factory; host: Node; key: Expression; observables: [key: ObservablePath[], value: ObservablePath[]]; parent: Node; scope: object; value: Expression; }; export default class PlaceholdeStatement implements IDisposable { private readonly context; private readonly cancellationTokenSource; private readonly keySubscription; private readonly metadata; private currentDisposable; private disposed; private key; private lazyInjectionCancellationTokenSource; private subscription; private injectionContext?; constructor(context: Context); private readonly applyInjection; private readonly applyLazyInjection; private readonly inject; private readonly onKeyChange; private readonly task; private readonly defaultTask; dispose(): void; } export {};