UNPKG

@hashicorp/design-system-components

Version:
51 lines (50 loc) 1.75 kB
/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import type { Placement, Strategy, OffsetOptions, FlipOptions, ShiftOptions, AutoPlacementOptions, ArrowOptions, Middleware } from '@floating-ui/dom'; export declare enum HdsEnableCollisionDetectionOptions { Shift = "shift", Flip = "flip", Auto = "auto" } export type HdsEnableCollisionDetection = `${HdsEnableCollisionDetectionOptions}`; export declare const DEFAULT_PLACEMENT = "bottom"; export declare const PLACEMENTS: Placement[]; export declare const ENABLE_COLLISION_DETECTION_OPTIONS: HdsEnableCollisionDetection[]; export type FloatingUIOptions = { placement?: Placement; strategy?: Strategy; offsetOptions?: OffsetOptions; flipOptions?: FlipOptions; shiftOptions?: ShiftOptions; autoPlacementOptions?: AutoPlacementOptions; middlewareExtra?: Middleware[]; enableCollisionDetection?: boolean | HdsEnableCollisionDetection; arrowElement?: ArrowOptions['element']; arrowPadding?: ArrowOptions['padding']; matchToggleWidth?: boolean; }; export type HdsAnchoredPositionOptions = FloatingUIOptions & { arrowSelector?: string; }; export declare const getFloatingUIOptions: (options: FloatingUIOptions) => { placement: Placement; strategy: Strategy; middleware: Middleware[]; }; export interface HdsAnchoredPositionSignature { Element: HTMLElement; Args: { Positional: [HTMLElement | SVGElement]; Named: HdsAnchoredPositionOptions; }; } declare const _default: import("ember-modifier").FunctionBasedModifier<{ Element: HTMLElement; Args: { Named: HdsAnchoredPositionOptions; Positional: [HTMLElement | SVGElement]; }; }>; export default _default;