import * as React from 'react';
import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-rTRuDt0r.js';
import { O as OptixFlowConfig } from './blocks-BlWXj9GI.js';
import 'react/jsx-runtime';
import 'class-variance-authority';
import './button-variants-8mtEHxev.js';
import 'class-variance-authority/types';
import '@opensite/hooks/usePlatformFromUrl';

/**
 * Social links for team member
 */
interface TeamRoleFilterSocialLinks {
    twitter?: string;
    github?: string;
    linkedin?: string;
}
/**
 * Individual team member for TeamRoleFilter
 */
interface TeamRoleFilterMember {
    name: string;
    role: string;
    position: string;
    image: string;
    social?: TeamRoleFilterSocialLinks;
}
/**
 * Props for TeamRoleFilter component
 */
interface TeamRoleFilterProps {
    /**
     * Section heading
     * @default "Our team"
     */
    heading?: React.ReactNode;
    /**
     * Section description
     */
    description?: React.ReactNode;
    /**
     * Array of team members to display
     */
    members?: TeamRoleFilterMember[];
    /**
     * Custom slot for rendering members (overrides members array)
     */
    membersSlot?: React.ReactNode;
    /**
     * Available role filters
     */
    roles?: string[];
    /**
     * Custom slot for rendering role filter buttons
     */
    rolesSlot?: React.ReactNode;
    /**
     * Background style variant for the section
     * @default "white"
     */
    background?: SectionBackground;
    /**
     * Vertical spacing/margin variant
     * @default "lg"
     */
    spacing?: SectionSpacing;
    /**
     * Optional background pattern name or URL
     */
    pattern?: PatternName | undefined;
    /**
     * Pattern overlay opacity (0-1)
     */
    patternOpacity?: number;
    /**
     * Additional CSS classes for the section wrapper
     */
    className?: string;
    /**
     * Additional CSS classes for the header wrapper
     */
    headerClassName?: string;
    /**
     * Additional CSS classes for the heading
     */
    headingClassName?: string;
    /**
     * Additional CSS classes for the description
     */
    descriptionClassName?: string;
    /**
     * Additional CSS classes for the filter buttons container
     */
    filtersClassName?: string;
    /**
     * Additional CSS classes for each filter button
     */
    filterButtonClassName?: string;
    /**
     * Additional CSS classes for the grid container
     */
    gridClassName?: string;
    /**
     * Additional CSS classes for each member card
     */
    memberCardClassName?: string;
    /**
     * Additional CSS classes for the member image
     */
    memberImageClassName?: string;
    /**
     * Additional CSS classes for the member name
     */
    memberNameClassName?: string;
    /**
     * Additional CSS classes for the member position
     */
    memberPositionClassName?: string;
    /**
     * Additional CSS classes for the social links container
     */
    socialLinksClassName?: string;
    /**
     * Optional Optix Flow configuration for image optimization
     */
    optixFlowConfig?: OptixFlowConfig;
}
/**
 * TeamRoleFilter - Team grid with role-based filter buttons
 *
 * An interactive team section with filter buttons to show members by role/department.
 * Features a row of filter buttons at the top that filter the team grid below.
 * Each member card shows a circular avatar, name, position, and social links.
 * Ideal for organizations wanting to let users explore team members by department.
 *
 * @example
 * ```tsx
 * <TeamRoleFilter
 *   heading="Our Team"
 *   description="Filter by department"
 *   roles={["All", "Engineering", "Design", "Marketing"]}
 *   members={[
 *     {
 *       name: "Jane Doe",
 *       role: "Engineering",
 *       position: "Senior Engineer",
 *       image: "/avatars/jane.jpg",
 *       social: { github: "https://github.com/jane" }
 *     }
 *   ]}
 * />
 * ```
 */
declare function TeamRoleFilter({ heading, description, members, membersSlot, roles, rolesSlot, background, spacing, pattern, patternOpacity, className, headerClassName, headingClassName, descriptionClassName, filtersClassName, filterButtonClassName, gridClassName, memberCardClassName, memberImageClassName, memberNameClassName, memberPositionClassName, socialLinksClassName, optixFlowConfig, }: TeamRoleFilterProps): React.JSX.Element;

export { TeamRoleFilter, type TeamRoleFilterProps };
