import { Context } from '@pionjs/pion/lib/create-context'; import { AttributePart, noChange } from 'lit-html'; import { AsyncDirective } from 'lit-html/async-directive.js'; import { ChildPart, DirectiveParameters, DirectiveResult } from 'lit-html/directive.js'; export declare class ConsumeDirective extends AsyncDirective { value: T; context: Context; pluck: (value: T) => V; unsubscribe: VoidFunction | null; raf: number; update(part: AttributePart | ChildPart, [context, pluck]: DirectiveParameters): typeof noChange | V; subscribe(emitter: Node): void; render(context: Context, pluck: (value: T) => V): V; updater(value: T): void; disconnected(): void; } export type Result = DirectiveResult>; interface Consume { (context: Context, pluck: (value: T) => V): Result; } export declare const consume: Consume; export {};