import { type ButtonHTMLAttributes, type HTMLAttributes, type ReactNode } from 'react';
import { type VariantProps } from 'class-variance-authority';
declare const chipVariants: (props?: ({
intent?: "default" | "suggestion" | "followup" | null | undefined;
size?: "sm" | "md" | "lg" | null | undefined;
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
export interface SuggestionChipGroupProps extends Omit, 'role' | 'aria-label'> {
/** Override the default group label (ui.chat.suggestions). */
label?: string;
}
export declare const SuggestionChipGroup: import("react").ForwardRefExoticComponent>;
type NativeButtonProps = Omit, 'onSelect' | 'children'>;
/** Curated imperative handle for agent / external automation. */
export interface SuggestionChipHandle {
getValue: () => string;
select: () => void;
dismiss: () => void;
}
export interface SuggestionChipProps extends NativeButtonProps, VariantProps {
/** Value emitted on activation. Falls back to children when a string. */
value?: string;
startIcon?: ReactNode;
children: ReactNode;
/** Activation handler. */
onSelect?: (value: string) => void;
/** When provided, parent owns removal. Otherwise the chip manages its own
* `removed` state and unmounts after selection. */
onRemove?: () => void;
/** Opt out of self-removal — useful inside controlled lists. */
keepOnSelect?: boolean;
}
export declare const SuggestionChip: import("react").ForwardRefExoticComponent>;
export {};
//# sourceMappingURL=suggestion-chip.d.ts.map