import { NgZone } from '@angular/core'; import { Observable } from 'rxjs'; import { NgMapsRectangleDirective } from '../../directives/rectangle'; import { BoundsLiteral } from '../../interface/bounds'; import { MapsApiWrapper } from '../maps-api-wrapper'; import * as i0 from "@angular/core"; export declare abstract class RectangleManager { protected _apiWrapper: MapsApiWrapper; protected _zone: NgZone; protected _rectangles: Map>; constructor(_apiWrapper: MapsApiWrapper, _zone: NgZone); abstract addRectangle(rectangle: NgMapsRectangleDirective): void; /** * Removes the given rectangle from the map. */ abstract removeRectangle(rectangle: NgMapsRectangleDirective): Promise; abstract setOptions(rectangle: NgMapsRectangleDirective, options: google.maps.RectangleOptions): Promise; abstract getBounds(rectangle: NgMapsRectangleDirective): Promise; abstract setBounds(rectangle: NgMapsRectangleDirective): Promise; abstract setEditable(rectangle: NgMapsRectangleDirective): Promise; abstract setDraggable(rectangle: NgMapsRectangleDirective): Promise; abstract setVisible(rectangle: NgMapsRectangleDirective): Promise; abstract createEventObservable(eventName: string, rectangle: NgMapsRectangleDirective): Observable; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵprov: i0.ɵɵInjectableDeclaration>; }