import { ControllerBase, type ControllerHost } from './Abstracts/ControllerBase'; /** * The config options for a ClickOutsideController. * * @public */ export interface IClickOutsideControllerConfig { /** * An array of elements that should be ignored when detecting clicks outside the host element. * * @public */ ignored?: () => Array; /** * The callback to be called when a click outside the host element is detected. * * @public */ callback?: (e: Event) => void; /** * If true, the controller will not call the callback on initial connection. * This is useful to prevent immediate callbacks when the controller is first connected. * * @public */ skipInitial?: boolean; } /** * ClickOutsideController - This controller is used to detect clicks outside of the host element. * * @public */ export declare class ClickOutsideController extends ControllerBase { private readonly _callback?; private readonly _skipInitial; private readonly _ignored; private _clickSubscription; private _keydownSubscription; private _resizeSubscription; /** * Constructs a new instance of the `ClickOutsideController` class. * * @public */ constructor(host: ControllerHost, config: IClickOutsideControllerConfig); hostConnected(): void; hostDisconnected(): void; observe(): void; unobserve(): void; private onClick; private onKeyDown; private onResize; } //# sourceMappingURL=ClickOutsideController.d.ts.map