import { ReactiveControllerHost } from 'lit'; import { Logger } from '../logger'; export interface DisposalBinOptions { /** * Provide a name for debugging purposes. */ name?: string; /** * Provide the owner of this queue for debugging purposes. */ owner?: any; } /** * A disposal bin used to add cleanup callbacks that can be called when required. */ export declare class DisposalBin { protected readonly _options: DisposalBinOptions; protected _disposal: (() => void)[]; protected _logger?: Logger; get name(): string | undefined; constructor(_host?: ReactiveControllerHost, _options?: DisposalBinOptions); add(...callbacks: (() => void)[]): void; /** * Dispose of callbacks. */ empty(): void; }