import { type ComponentPropsWithRef } from 'react'; export type PathHoverMenuVariantConfig = { restingTopPath: string; restingMiddlePath: string; restingBottomPath: string; activeTopPath: string; activeMiddlePath: string; activeBottomPath: string; easeIn: string; easeOut: string; duration: number; leaveTimeScale?: number; }; export declare const PATH_HOVER_MENU_VARIANTS: { readonly collapseSlow: { readonly activeTopPath: "M 0,70 Q 100,70 200,70"; readonly activeMiddlePath: "M 0,70 Q 100,70 200,70"; readonly activeBottomPath: "M 0,70 Q 100,70 200,70"; readonly easeIn: "elastic.out(1.8, 0)"; readonly easeOut: "power2.out"; readonly duration: 2; readonly restingTopPath: string; readonly restingMiddlePath: string; readonly restingBottomPath: string; }; readonly collapseFast: { readonly activeTopPath: "M 0,70 Q 100,70 200,70"; readonly activeMiddlePath: "M 0,70 Q 100,70 200,70"; readonly activeBottomPath: "M 0,70 Q 100,70 200,70"; readonly easeIn: "elastic.out(2, 0.1)"; readonly easeOut: "power2.out"; readonly duration: 1; readonly restingTopPath: string; readonly restingMiddlePath: string; readonly restingBottomPath: string; }; readonly slantSlow: { readonly activeTopPath: "M 0,70 Q 100,70 200,30"; readonly activeMiddlePath: "M 0,70 Q 100,70 200,30"; readonly activeBottomPath: "M 0,70 Q 100,70 200,30"; readonly easeIn: "elastic.out(1.8, 0)"; readonly easeOut: "power2.out"; readonly duration: 2; readonly restingTopPath: string; readonly restingMiddlePath: string; readonly restingBottomPath: string; }; readonly slantFast: { readonly activeTopPath: "M 0,70 Q 100,70 200,30"; readonly activeMiddlePath: "M 0,70 Q 100,70 200,30"; readonly activeBottomPath: "M 0,70 Q 100,70 200,30"; readonly easeIn: "elastic.out(2, 0.1)"; readonly easeOut: "power2.out"; readonly duration: 1; readonly restingTopPath: string; readonly restingMiddlePath: string; readonly restingBottomPath: string; }; readonly fanCollapseSlow: { readonly activeTopPath: "M 0,70 Q 100,70 200,70"; readonly activeMiddlePath: "M 0,70 Q 100,70 200,70"; readonly activeBottomPath: "M 0,70 Q 100,70 200,70"; readonly easeIn: "elastic.out(1.8, 0)"; readonly easeOut: "power2.out"; readonly duration: 2; readonly restingTopPath: string; readonly restingMiddlePath: string; readonly restingBottomPath: string; }; readonly fanCollapseFast: { readonly activeTopPath: "M 0,70 Q 100,70 200,70"; readonly activeMiddlePath: "M 0,70 Q 100,70 200,70"; readonly activeBottomPath: "M 0,70 Q 100,70 200,70"; readonly easeIn: "elastic.out(1.8, 0.1)"; readonly easeOut: "power2.out"; readonly duration: 1; readonly restingTopPath: string; readonly restingMiddlePath: string; readonly restingBottomPath: string; }; readonly swoopLoose: { readonly activeTopPath: "M 0,120 Q 100,0 200,120"; readonly activeMiddlePath: "M 0,120 Q 100,0 200,120"; readonly activeBottomPath: "M 0,120 Q 100,0 200,120"; readonly easeIn: "elastic.out(1.8, 0)"; readonly easeOut: "power2.out"; readonly duration: 1; readonly restingTopPath: string; readonly restingMiddlePath: string; readonly restingBottomPath: string; }; readonly swoopTight: { readonly activeTopPath: "M 0,120 Q 100,0 200,120"; readonly activeMiddlePath: "M 0,120 Q 100,0 200,120"; readonly activeBottomPath: "M 0,120 Q 100,0 200,120"; readonly easeIn: "elastic.out(1.8, 0.1)"; readonly easeOut: "power2.out"; readonly duration: 1; readonly restingTopPath: string; readonly restingMiddlePath: string; readonly restingBottomPath: string; }; readonly lensSlow: { readonly activeTopPath: "M 0,70 Q 100,70 200,70"; readonly activeMiddlePath: "M 0,70 Q 100,70 200,70"; readonly activeBottomPath: "M 0,70 Q 100,70 200,70"; readonly easeIn: "elastic.out(1.8, 0)"; readonly easeOut: "power2.out"; readonly duration: 2; readonly restingTopPath: string; readonly restingMiddlePath: string; readonly restingBottomPath: string; }; readonly lensFast: { readonly activeTopPath: "M 0,70 Q 100,70 200,70"; readonly activeMiddlePath: "M 0,70 Q 100,70 200,70"; readonly activeBottomPath: "M 0,70 Q 100,70 200,70"; readonly easeIn: "elastic.out(1.8, 0.1)"; readonly easeOut: "power2.out"; readonly duration: 1; readonly restingTopPath: string; readonly restingMiddlePath: string; readonly restingBottomPath: string; }; }; export type PathHoverMenuVariant = keyof typeof PATH_HOVER_MENU_VARIANTS; export type PathHoverMenuVariantInput = PathHoverMenuVariant | PathHoverMenuVariantConfig; export type PathHoverMenuItem = Omit, 'children' | 'ref'> & { id: string; label: string; ariaLabel?: string; variant?: PathHoverMenuVariantInput; }; export declare const DEFAULT_PATH_HOVER_MENU_ITEMS: readonly PathHoverMenuItem[];