import * as react_jsx_runtime from 'react/jsx-runtime';
import * as React from 'react';
import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-RgHoLtLt.js';
import { L as LogoConfig, a as ILinkItem, N as NavbarLayoutVariant } from './types-DQVgLzt7.js';
import { A as ActionConfig, O as OptixFlowConfig } from './blocks-DL92rOxr.js';
import 'class-variance-authority';
import '@page-speed/pressable';
import '@opensite/hooks/usePlatformFromUrl';

/**
 * MenuLink type alias for backward compatibility
 * Uses shared ILinkItem which supports both href and url
 */
type MenuLink = ILinkItem;
interface MenuItem {
    title: React.ReactNode;
    url?: string;
    className?: string;
    links?: MenuLink[];
}
interface SocialLink {
    label: React.ReactNode;
    url: string;
    icon?: React.ReactNode;
    iconName?: string;
}
/**
 * Props for the NavbarImagePreview component
 */
interface NavbarImagePreviewProps {
    /**
     * Additional CSS classes for the section
     */
    className?: string;
    /**
     * Additional CSS classes for the container
     */
    containerClassName?: string;
    /**
     * Additional CSS classes for the nav wrapper
     */
    navClassName?: string;
    /**
     * Additional CSS classes for the navigation menu
     */
    navigationMenuClassName?: string;
    /**
     * Additional CSS classes for the actions container
     */
    actionsClassName?: string;
    /**
     * Logo configuration
     */
    logo?: LogoConfig;
    /**
     * Custom slot for logo (overrides logo object)
     */
    logoSlot?: React.ReactNode;
    /**
     * Additional CSS classes for the logo
     */
    logoClassName?: string;
    /**
     * Navigation menu items
     */
    navigation?: MenuItem[];
    /**
     * Custom slot for navigation (overrides navigation array)
     */
    navigationSlot?: React.ReactNode;
    /**
     * Mobile navigation menu items
     */
    mobileNavigation?: MenuItem[];
    /**
     * Custom slot for mobile navigation (overrides mobileNavigation array)
     */
    mobileNavigationSlot?: React.ReactNode;
    /**
     * Authentication action configurations
     */
    authActions?: ActionConfig[];
    /**
     * Custom slot for auth actions (overrides authActions array)
     */
    authActionsSlot?: React.ReactNode;
    /**
     * Social links for mobile menu
     */
    socialLinks?: SocialLink[];
    /**
     * Custom slot for social links (overrides socialLinks array)
     */
    socialLinksSlot?: React.ReactNode;
    /**
     * Background style for the section
     */
    background?: SectionBackground;
    /**
     * Vertical spacing for the section
     */
    spacing?: SectionSpacing;
    /**
     * Optional background pattern name or URL
     */
    pattern?: PatternName | undefined;
    /**
     * Pattern overlay opacity (0-1)
     */
    patternOpacity?: number;
    /**
     * Layout variant for the navbar
     */
    layoutVariant?: NavbarLayoutVariant;
    /**
     * OptixFlow image optimization configuration
     */
    optixFlowConfig?: OptixFlowConfig;
}
/**
 * NavbarImagePreview - A fixed navigation bar with image preview on hover.
 *
 * Features a sticky header that changes background on scroll. Desktop dropdowns
 * show a large image preview that changes as users hover over different menu items.
 * Mobile view uses a full-screen dark overlay with categorized link columns and
 * social links. Ideal for content-rich sites where visual previews enhance navigation.
 */
declare const NavbarImagePreview: ({ className, containerClassName, navClassName, navigationMenuClassName, actionsClassName, logo, logoSlot, logoClassName, navigation, navigationSlot, mobileNavigation, mobileNavigationSlot, authActions, authActionsSlot, socialLinks, socialLinksSlot, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarImagePreviewProps) => react_jsx_runtime.JSX.Element;

export { NavbarImagePreview, type NavbarImagePreviewProps };
