import { AfterContentInit, ElementRef, OnDestroy, ViewContainerRef } from '@angular/core'; import { FocusMonitor, FocusOrigin } from '@angular/cdk/a11y'; import { Directionality } from '@angular/cdk/bidi'; import { Overlay, OverlayOutsideClickDispatcher } from '@angular/cdk/overlay'; import { GraniteContactsComponent } from '../contacts.component'; import { ClientInputInterface, ClientOutputInterface } from '../../core/client-environment'; import * as i0 from "@angular/core"; export declare class GraniteContactsTriggerForDirective implements AfterContentInit, OnDestroy { private _overlay; private _element; private _viewContainerRef; private _outsideClickDispatcher; /** Client input device information */ _clientInput: ClientInputInterface; /** Client output device information */ _clientOutput: ClientOutputInterface; private _dir; private _focusMonitor; /** References the contacts instance that the trigger is associated with. */ contacts: GraniteContactsComponent; /** Whether the associated contacts is open */ _isContactsOpen: boolean; private _contactsCloseSubscription; private _portal; private _overlayRef; constructor(_overlay: Overlay, _element: ElementRef, _viewContainerRef: ViewContainerRef, _outsideClickDispatcher: OverlayOutsideClickDispatcher, /** Client input device information */ _clientInput: ClientInputInterface, /** Client output device information */ _clientOutput: ClientOutputInterface, _dir: Directionality, _focusMonitor: FocusMonitor); ngAfterContentInit(): void; ngOnDestroy(): void; isOpen(): boolean; openContacts(): void; /** Toggles the contacts between the open and closed states. */ toggleContacts(): void; /** Close the associated contacts */ closeContacts(): void; /** Handles key presses on the trigger. */ _handleKeydown(event: KeyboardEvent): void; /** Handles click events on the trigger. */ _handleClick(): void; /** * Restores focus to the element that was focused before the contacts was open. */ _restoreFocus(origin?: FocusOrigin, options?: FocusOptions): void; /** * Returns strategy for positioning the overlay for desktop devices: */ private _desktopPositionStrategy; /** * Sets the appropriate positions on a position strategy * so the overlay connects with the trigger correctly. * @param positionStrategy Strategy whose position to update. */ private _setPosition; /** * Returns strategy for positioning the overlay depending on what type of * device the contacts is being shown on */ private _positionStrategy; /** * Returns strategy for positioning the overlay for touch devices: * Place centered in the screen. */ private _touchPositionStrategy; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; }