import * as React from 'react';
import { f as SectionBackground, g as SectionSpacing, t as PatternName } from './community-initiatives-Bi_ClKrO.js';
import { e as BlogPostItem, A as ActionConfig, O as OptixFlowConfig } from './blocks-k17uluAz.js';
import 'react/jsx-runtime';
import 'class-variance-authority';
import './button-variants-lRElsmTc.js';
import 'class-variance-authority/types';

/**
 * Breadcrumb item configuration
 */
interface BreadcrumbItemType {
    label: React.ReactNode;
    link: string;
}
/**
 * Category filter configuration
 */
interface CategoryFilter {
    label: React.ReactNode;
    value: string;
}
interface BlogFilteredResultsProps {
    /**
     * Main heading content
     */
    heading?: React.ReactNode;
    /**
     * Description text below heading
     */
    description?: React.ReactNode;
    /**
     * Title for the secondary content section
     */
    allContentHeading?: React.ReactNode;
    /**
     * Breadcrumb navigation items
     */
    breadcrumb?: BreadcrumbItemType[];
    /**
     * Custom slot for rendering breadcrumb (overrides breadcrumb array)
     */
    breadcrumbSlot?: React.ReactNode;
    /**
     * Primary/featured item configuration
     */
    primaryPost?: BlogPostItem;
    /**
     * Custom slot for rendering primary item (overrides primaryPost)
     */
    primaryPostSlot?: React.ReactNode;
    /**
     * Array of content item configurations
     */
    posts?: BlogPostItem[];
    /**
     * Custom slot for rendering content items (overrides posts array)
     */
    postsSlot?: React.ReactNode;
    /**
     * Category filter options
     */
    categories?: CategoryFilter[];
    /**
     * Custom slot for rendering category filters (overrides categories)
     */
    categoriesSlot?: React.ReactNode;
    /**
     * Number of items to show per page
     */
    postsPerPage?: number;
    /**
     * Action configuration for the pagination button
     */
    loadMoreAction?: ActionConfig;
    /**
     * Custom slot for rendering the pagination action (overrides loadMoreAction)
     */
    loadMoreSlot?: React.ReactNode;
    /**
     * Additional CSS classes for the section
     */
    className?: string;
    /**
     * Additional CSS classes for the hero container
     */
    heroClassName?: string;
    /**
     * Additional CSS classes for the heading
     */
    headingClassName?: string;
    /**
     * Additional CSS classes for the description
     */
    descriptionClassName?: string;
    /**
     * Additional CSS classes for the primary item container
     */
    primaryPostClassName?: string;
    /**
     * Additional CSS classes for the secondary content section
     */
    allContentClassName?: string;
    /**
     * Additional CSS classes for the secondary content heading
     */
    allContentHeadingClassName?: string;
    /**
     * Additional CSS classes for the categories filter
     */
    categoriesClassName?: string;
    /**
     * Additional CSS classes for the content grid
     */
    postsClassName?: string;
    /**
     * Additional CSS classes for individual item cards
     */
    postCardClassName?: string;
    /**
     * Additional CSS classes for the pagination container
     */
    loadMoreClassName?: string;
    /**
     * OptixFlow image optimization configuration
     */
    optixFlowConfig?: OptixFlowConfig;
    /**
     * 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;
}
declare function BlogFilteredResultsComponent({ heading, description, allContentHeading, breadcrumb, breadcrumbSlot, primaryPost, primaryPostSlot, posts, postsSlot, categories, categoriesSlot, postsPerPage, loadMoreAction, loadMoreSlot, className, heroClassName, headingClassName, descriptionClassName, primaryPostClassName, allContentClassName, allContentHeadingClassName, categoriesClassName, postsClassName, postCardClassName, loadMoreClassName, optixFlowConfig, background, spacing, pattern, patternOpacity, }: BlogFilteredResultsProps): React.JSX.Element;

export { BlogFilteredResultsComponent as BlogFilteredResults, type BlogFilteredResultsProps, type BreadcrumbItemType, type CategoryFilter };
