import React from 'react';
import { type AsChildChildren } from '@wix/headless-utils/react';
import { type FaqServiceConfig, type FaqCategory } from '../services/index.js';
/**
* Props for FaqList Root component
*/
export interface FaqListRootProps {
children: React.ReactNode;
category: FaqCategory;
className?: string;
/** FAQ service config for this category's FAQs */
faqConfig?: FaqServiceConfig;
}
/**
* Root component that provides service context for a FAQ category and its FAQs.
* Automatically loads FAQs for the category.
*
* @component
* @example
* ```tsx
* // Default usage
*
*
*
*
*
*
*
*
*
* ```
*/
export declare function Root(props: FaqListRootProps): React.ReactNode;
/**
* Props for FaqList Name component
*/
export interface NameProps {
/** Whether to render as a child component */
asChild?: boolean;
/** Custom render function when using asChild */
children?: AsChildChildren<{
name: string;
}>;
/** CSS classes to apply to the default element */
className?: string;
}
/**
* Displays the FAQ category name.
*
* @component
* @example
* ```tsx
* // Default usage
*
*
* // asChild with primitive
*
*
*
*
* // asChild with react component
*
* {React.forwardRef(({name, ...props}, ref) => (
*
* {name}
*
* ))}
*
* ```
*/
export declare const Name: React.ForwardRefExoticComponent>;
/**
* Props for FaqList Items component
*/
export interface ItemsProps {
children: React.ReactNode;
emptyState?: React.ReactNode;
}
/**
* Container for the list of FAQs with empty state support.
* Follows List Container Level pattern.
*
* @component
* @example
* ```tsx
* // Default usage
* No FAQs available}>
*
*
*
*
*
*
* // Simple container usage
* No FAQs}>
*
*
*
*
*
*
*
* ```
*/
export declare const Items: React.ForwardRefExoticComponent>;
/**
* Props for FaqList FaqRepeater component
*/
export interface FaqRepeaterProps {
children: React.ReactNode;
}
/**
* Repeater component that renders Faq.Root for each FAQ entry.
* Follows Repeater Level pattern.
*
* @component
* @example
* ```tsx
*
*
*
*
* ```
*/
export declare const FaqRepeater: React.ForwardRefExoticComponent>;