@nova-ui/bits
Version:
SolarWinds Nova Framework
27 lines (26 loc) • 1.34 kB
TypeScript
import { ConnectedPosition, FlexibleConnectedPositionStrategy, OverlayRef } from "@angular/cdk/overlay";
import { Subscription } from "rxjs";
import { IOverlayPositionServiceConfig, OverlayPlacement, OverlayPosition } from "./types";
import * as i0 from "@angular/core";
export declare class OverlayPositionService {
private overlayPositions;
private arrowSize;
private arrowPadding;
config: IOverlayPositionServiceConfig;
setOverlayPositionConfig(config?: IOverlayPositionServiceConfig): void;
updateOffsetOnPositionChanges(positionStrategy: FlexibleConnectedPositionStrategy, getOverlayRef: () => OverlayRef): Subscription;
private setOverlayOffset;
getPossiblePositionsForPlacement(placement: OverlayPlacement): ConnectedPosition[];
private getOverlayPositionPanelClass;
/**
* Returns all possible positions for a placement
* Eg: left => [OVERLAY_POSITIONS[centerLeft], OVERLAY_POSITIONS[topLeft], OVERLAY_POSITIONS[bottomLeft]]
*
* @param placement
* @returns ConnectedPosition[]
*/
private getPositionsForPlacement;
static ɵfac: i0.ɵɵFactoryDeclaration<OverlayPositionService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<OverlayPositionService>;
}
export declare function getOverlayPositions(): Record<OverlayPosition, ConnectedPosition>;