import { type ReactiveControllerHost } from 'lit'; import { DisposalBin } from '../utils/events'; import { type ContextConsumerConnectEvent } from './events'; export declare type ProvideContextOptions = { /** * A unique identifier used to pair a context provider and consumer. */ id: symbol; }; export declare class ContextProviderController { protected readonly _host: ReactiveControllerHost & EventTarget; readonly _initValue: () => T; protected readonly _options: ProvideContextOptions; protected _stopDisposal: DisposalBin; protected _value: T; get id(): symbol; get value(): T; constructor(_host: ReactiveControllerHost & EventTarget, _initValue: () => T, _options: ProvideContextOptions); /** * Start providing context to consumers. */ start(): void; /** * Stop providing context to consumers. */ stop(): void; protected _handleConsumerConnect(event: ContextConsumerConnectEvent): void; } //# sourceMappingURL=ContextProviderController.d.ts.map