import type { ReactNode } from "react";
export interface FilterOption {
    label: string;
    value: string;
}
export interface FilterConfig {
    label: string;
    options: FilterOption[];
    value: string[];
    onChange: (value: string[]) => void;
    multiple?: boolean;
}
export interface SortOption {
    label: string;
    value: string;
}
export interface CollectionToolbarProps extends React.HTMLAttributes<HTMLDivElement> {
    children?: ReactNode;
}
export declare const CollectionToolbar: import("react").ForwardRefExoticComponent<CollectionToolbarProps & import("react").RefAttributes<HTMLDivElement>>;
export interface CollectionTitleProps extends React.HTMLAttributes<HTMLDivElement> {
    count?: number;
}
export declare const CollectionTitle: import("react").ForwardRefExoticComponent<CollectionTitleProps & import("react").RefAttributes<HTMLDivElement>>;
export interface CollectionSearchProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "type" | "onChange"> {
    onSearch?: (value: string) => void;
    /** Debounce delay in milliseconds (default: 300ms) */
    debounceMs?: number;
}
export declare const CollectionSearch: import("react").ForwardRefExoticComponent<CollectionSearchProps & import("react").RefAttributes<HTMLInputElement>>;
export interface CollectionFiltersProps extends React.HTMLAttributes<HTMLDivElement> {
    activeCount?: number;
    onClearAll?: () => void;
}
export declare const CollectionFilters: import("react").ForwardRefExoticComponent<CollectionFiltersProps & import("react").RefAttributes<HTMLDivElement>>;
export interface CollectionFilterProps {
    label: string;
    options: FilterOption[];
    value: string[];
    onChange: (value: string[]) => void;
    multiple?: boolean;
}
export declare const CollectionFilter: import("react").ForwardRefExoticComponent<CollectionFilterProps & import("react").RefAttributes<HTMLDivElement>>;
export interface CollectionSortProps {
    options: SortOption[];
    value: string;
    onChange: (value: string) => void;
}
export declare const CollectionSort: import("react").ForwardRefExoticComponent<CollectionSortProps & import("react").RefAttributes<HTMLDivElement>>;
export declare const CollectionActions: import("react").ForwardRefExoticComponent<import("react").HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>;
export interface CollectionActionProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
    priority?: "primary" | "secondary";
    leftIcon?: ReactNode;
    rightIcon?: ReactNode;
}
export declare const CollectionAction: import("react").ForwardRefExoticComponent<CollectionActionProps & import("react").RefAttributes<HTMLButtonElement>>;
export declare const CollectionToolbarAnnouncer: ({ filterCount, }: {
    filterCount: number;
}) => import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=collection-toolbar.d.ts.map