import { ReactNode } from "react";
interface PersistentFilterControlsProps {
    /**
     * Whether the filters are currently in a loading state
     */
    isLoading: boolean;
    /**
     * The filter control components (search, sidebar, mobile dropdown)
     */
    children: ReactNode;
    /**
     * Additional CSS classes
     */
    className?: string;
    /**
     * Disabled opacity (0-1)
     */
    disabledOpacity?: number;
    /**
     * Transition duration in milliseconds
     */
    transitionDuration?: number;
    /**
     * Whether to prevent pointer events during loading
     */
    preventInteraction?: boolean;
}
/**
 * PersistentFilterControls
 *
 * A wrapper component that keeps filter controls visible during loading states
 * but provides visual feedback that they are temporarily disabled.
 *
 * Features:
 * - Reduces opacity and disables pointer events during loading
 * - Maintains layout and accessibility during loading states
 * - Provides smooth transitions between enabled/disabled states
 * - Preserves keyboard navigation and screen reader functionality
 * - Applies consistent disabled styling across all filter types
 *
 * Usage:
 * ```tsx
 * <PersistentFilterControls isLoading={isLoadingVendors}>
 *   <SearchContainer />
 *   <CategoryFilterSidebar />
 *   <MobileDropdown />
 * </PersistentFilterControls>
 * ```
 */
export declare function PersistentFilterControls({ isLoading, children, className, disabledOpacity, transitionDuration, preventInteraction, }: PersistentFilterControlsProps): import("react/jsx-runtime").JSX.Element;
/**
 * Enhanced SearchContainer wrapper that integrates with persistent loading
 */
interface PersistentSearchContainerProps {
    isLoading: boolean;
    children: ReactNode;
    className?: string;
}
export declare function PersistentSearchContainer({ isLoading, children, className }: PersistentSearchContainerProps): import("react/jsx-runtime").JSX.Element;
/**
 * Enhanced sidebar wrapper for desktop filter controls
 */
interface PersistentSidebarProps {
    isLoading: boolean;
    children: ReactNode;
    className?: string;
}
export declare function PersistentSidebar({ isLoading, children, className }: PersistentSidebarProps): import("react/jsx-runtime").JSX.Element;
/**
 * Enhanced mobile dropdown wrapper
 */
interface PersistentMobileDropdownProps {
    isLoading: boolean;
    children: ReactNode;
    className?: string;
}
export declare function PersistentMobileDropdown({ isLoading, children, className }: PersistentMobileDropdownProps): import("react/jsx-runtime").JSX.Element;
export {};
//# sourceMappingURL=persistent-filter-controls.d.ts.map