[6a3a178] | 1 | /**
|
---|
| 2 | * @license
|
---|
| 3 | * Copyright Google LLC All Rights Reserved.
|
---|
| 4 | *
|
---|
| 5 | * Use of this source code is governed by an MIT-style license that can be
|
---|
| 6 | * found in the LICENSE file at https://angular.io/license
|
---|
| 7 | */
|
---|
| 8 | import { Portal } from '@angular/cdk/portal';
|
---|
| 9 | import { Direction, Directionality } from '@angular/cdk/bidi';
|
---|
| 10 | import { Observable, Subject } from 'rxjs';
|
---|
| 11 | /**
|
---|
| 12 | * Basic interface for an overlay. Used to avoid circular type references between
|
---|
| 13 | * `OverlayRef`, `PositionStrategy` and `ScrollStrategy`, and `OverlayConfig`.
|
---|
| 14 | * @docs-private
|
---|
| 15 | */
|
---|
| 16 | export interface OverlayReference {
|
---|
| 17 | attach: (portal: Portal<any>) => any;
|
---|
| 18 | detach: () => any;
|
---|
| 19 | dispose: () => void;
|
---|
| 20 | overlayElement: HTMLElement;
|
---|
| 21 | hostElement: HTMLElement;
|
---|
| 22 | backdropElement: HTMLElement | null;
|
---|
| 23 | getConfig: () => any;
|
---|
| 24 | hasAttached: () => boolean;
|
---|
| 25 | updateSize: (config: any) => void;
|
---|
| 26 | updatePosition: () => void;
|
---|
| 27 | getDirection: () => Direction;
|
---|
| 28 | setDirection: (dir: Direction | Directionality) => void;
|
---|
| 29 | backdropClick: () => Observable<MouseEvent>;
|
---|
| 30 | attachments: () => Observable<void>;
|
---|
| 31 | detachments: () => Observable<void>;
|
---|
| 32 | keydownEvents: () => Observable<KeyboardEvent>;
|
---|
| 33 | outsidePointerEvents: () => Observable<MouseEvent>;
|
---|
| 34 | addPanelClass: (classes: string | string[]) => void;
|
---|
| 35 | removePanelClass: (classes: string | string[]) => void;
|
---|
| 36 | readonly _outsidePointerEvents: Subject<MouseEvent>;
|
---|
| 37 | readonly _keydownEvents: Subject<KeyboardEvent>;
|
---|
| 38 | }
|
---|