import * as react_jsx_runtime from 'react/jsx-runtime';
import * as React from 'react';
import { P as PatternName } from './pattern-background-z0e5HB0v.js';
import { SectionBackground, SectionSpacing } from './types.js';
import { A as ActionConfig, O as OptixFlowConfig } from './blocks-k17uluAz.js';
import './patternSvgs-c5ZNVoTT.js';
import 'class-variance-authority';
import './button-variants-lRElsmTc.js';
import 'class-variance-authority/types';

interface MenuLink {
    label: React.ReactNode;
    description?: React.ReactNode;
    url: string;
    image?: string;
}
interface MenuItem {
    title: React.ReactNode;
    url?: string;
    className?: string;
    links?: MenuLink[];
}
interface SocialLink {
    label: React.ReactNode;
    url: string;
    icon?: React.ReactNode;
    iconName?: string;
}
/**
 * Logo configuration interface
 */
interface LogoConfig {
    url?: string;
    src?: string;
    alt?: string;
    title?: React.ReactNode;
    className?: 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 | string;
    /**
     * Pattern overlay opacity (0-1)
     */
    patternOpacity?: number;
    /**
     * 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, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarImagePreviewProps) => react_jsx_runtime.JSX.Element;

export { NavbarImagePreview, type NavbarImagePreviewProps };
