import { type VariantProps } from 'class-variance-authority';
declare const sourceVariants: (props?: ({
    variant?: "default" | "pill" | "minimal" | null | undefined;
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
export interface SourceData {
    /** Source URL */
    url: string;
    /** Display title */
    title?: string;
    /** Source description */
    description?: string;
    /** Favicon URL */
    favicon?: string;
    /** Site name */
    siteName?: string;
}
interface SourceFaviconProps {
    url: string;
    favicon?: string;
    className?: string;
}
declare function SourceFavicon({ url, favicon, className }: SourceFaviconProps): import("react/jsx-runtime").JSX.Element;
declare namespace SourceFavicon {
    var displayName: string;
}
export interface AISourceTriggerProps extends VariantProps<typeof sourceVariants> {
    /** Source data */
    source: SourceData;
    /** Whether to show favicon */
    showFavicon?: boolean;
    /** Additional class name */
    className?: string;
    /** Click handler */
    onClick?: () => void;
}
declare function AISourceTrigger({ source, variant, showFavicon, className, onClick, }: AISourceTriggerProps): import("react/jsx-runtime").JSX.Element;
declare namespace AISourceTrigger {
    var displayName: string;
}
export interface AISourceContentProps {
    /** Source data */
    source: SourceData;
    /** Additional class name */
    className?: string;
}
declare function AISourceContent({ source, className }: AISourceContentProps): import("react/jsx-runtime").JSX.Element;
declare namespace AISourceContent {
    var displayName: string;
}
export interface AISourceProps extends VariantProps<typeof sourceVariants> {
    /** Source data */
    source: SourceData;
    /** Whether to show favicon */
    showFavicon?: boolean;
    /** Whether to show tooltip on hover */
    showTooltip?: boolean;
    /** Additional class name */
    className?: string;
}
declare function AISource({ source, variant, showFavicon, showTooltip, className, }: AISourceProps): import("react/jsx-runtime").JSX.Element;
declare namespace AISource {
    var displayName: string;
}
export interface AISourceListProps {
    /** Array of sources */
    sources: SourceData[];
    /** Maximum sources to show before truncating */
    maxVisible?: number;
    /** Whether to show expanded list */
    showAll?: boolean;
    /** Callback when "show more" is clicked */
    onShowMore?: () => void;
    /** Additional class name */
    className?: string;
}
declare function AISourceList({ sources, maxVisible, showAll, onShowMore, className, }: AISourceListProps): import("react/jsx-runtime").JSX.Element;
declare namespace AISourceList {
    var displayName: string;
}
export { AISource, AISourceContent, AISourceList, AISourceTrigger, SourceFavicon, sourceVariants, };
