import { ReactiveElement } from 'lit'; import { DisposalBin } from '../../events'; import { Logger } from '../../logger'; import { ScopedDiscoveryEvent } from '../discovery/events'; import { ManagedElementConnectEvent } from './ManagedElement'; export declare class ElementManager { protected readonly _host: ReactiveElement; protected static get _ScopedDiscoveryEvent(): ScopedDiscoveryEvent; protected readonly _managedElements: Omit, 'clear'>; protected readonly _disconnectDisposal: DisposalBin; protected readonly _logger: Logger; constructor(_host: ReactiveElement); protected _handleHostConnected(): void; protected _handleHostDisconnected(): void; protected _handleElementConnect(event: ManagedElementConnectEvent): void; protected _getScopedDiscoveryEvent(): ScopedDiscoveryEvent; protected _addElement(element: ManagedElement): void; protected _handleElementAdded(element: ManagedElement): void; protected _removeElement(element: ManagedElement): void; protected _removeAllElements(): void; protected _handleElementRemoved(element: ManagedElement): void; }