import { type ComponentPropsWithoutRef, type ReactNode } from 'react'; import { Command as CommandPrimitive } from 'cmdk'; export interface Command { id: string; label: string; group: string; keywords?: string[]; shortcut?: string; onSelect: () => void; /** Optional leading icon. */ icon?: ReactNode; } export declare const diacriticInsensitiveFilter: (value: string, search: string, keywords?: string[]) => number; export declare function useCommandPalette(): { open: boolean; setOpen: import("react").Dispatch>; }; export type CommandPaletteRootProps = ComponentPropsWithoutRef; export interface CommandPaletteHandle { getQuery: () => string; getIsOpen: () => boolean; open: () => void; close: () => void; setQuery: (query: string) => void; } declare const CommandPalette: import("react").ForwardRefExoticComponent, HTMLDivElement>, "key" | keyof import("react").HTMLAttributes> & { ref?: React.Ref; } & { asChild?: boolean; }, "key" | "asChild" | keyof import("react").HTMLAttributes> & { label?: string; shouldFilter?: boolean; filter?: (value: string, search: string, keywords?: string[]) => number; defaultValue?: string; value?: string; onValueChange?: (value: string) => void; loop?: boolean; disablePointerSelection?: boolean; vimBindings?: boolean; } & import("react").RefAttributes, "ref"> & import("react").RefAttributes>; export type CommandInputProps = ComponentPropsWithoutRef; declare const CommandInput: import("react").ForwardRefExoticComponent, HTMLInputElement>, "key" | keyof import("react").InputHTMLAttributes> & { ref?: React.Ref; } & { asChild?: boolean; }, "key" | "asChild" | keyof import("react").InputHTMLAttributes>, "value" | "type" | "onChange"> & { value?: string; onValueChange?: (search: string) => void; } & import("react").RefAttributes, "ref"> & import("react").RefAttributes>; declare const CommandList: import("react").ForwardRefExoticComponent, HTMLDivElement>, "key" | keyof import("react").HTMLAttributes> & { ref?: React.Ref; } & { asChild?: boolean; }, "key" | "asChild" | keyof import("react").HTMLAttributes> & { label?: string; } & import("react").RefAttributes, "ref"> & import("react").RefAttributes>; declare const CommandEmpty: import("react").ForwardRefExoticComponent, HTMLDivElement>, "key" | keyof import("react").HTMLAttributes> & { ref?: React.Ref; } & { asChild?: boolean; }, "key" | "asChild" | keyof import("react").HTMLAttributes> & import("react").RefAttributes, "ref"> & import("react").RefAttributes>; declare const CommandGroup: import("react").ForwardRefExoticComponent, HTMLDivElement>, "key" | keyof import("react").HTMLAttributes> & { ref?: React.Ref; } & { asChild?: boolean; }, "key" | "asChild" | keyof import("react").HTMLAttributes>, "value" | "heading"> & { heading?: React.ReactNode; value?: string; forceMount?: boolean; } & import("react").RefAttributes, "ref"> & import("react").RefAttributes>; export type CommandItemProps = ComponentPropsWithoutRef; declare const CommandItem: import("react").ForwardRefExoticComponent, HTMLDivElement>, "key" | keyof import("react").HTMLAttributes> & { ref?: React.Ref; } & { asChild?: boolean; }, "key" | "asChild" | keyof import("react").HTMLAttributes>, "value" | "disabled" | "onSelect"> & { disabled?: boolean; onSelect?: (value: string) => void; value?: string; keywords?: string[]; forceMount?: boolean; } & import("react").RefAttributes, "ref"> & import("react").RefAttributes>; declare const CommandSeparator: import("react").ForwardRefExoticComponent, HTMLDivElement>, "key" | keyof import("react").HTMLAttributes> & { ref?: React.Ref; } & { asChild?: boolean; }, "key" | "asChild" | keyof import("react").HTMLAttributes> & { alwaysRender?: boolean; } & import("react").RefAttributes, "ref"> & import("react").RefAttributes>; export type CommandShortcutProps = ComponentPropsWithoutRef<'kbd'>; declare const CommandShortcut: import("react").ForwardRefExoticComponent, HTMLElement>, "ref"> & import("react").RefAttributes>; /** * Returns React nodes that wrap the matching segments of `label` in ``. * Diacritic-insensitive. No `dangerouslySetInnerHTML`. */ export declare function highlightMatch(label: string, query: string): ReactNode; export interface CommandPaletteDialogProps { /** Controlled open state. */ open: boolean; /** Fires when the dialog opens/closes. */ onOpenChange: (open: boolean) => void; /** Commands to display. */ commands: Command[]; /** Extra content rendered above the input (optional). */ header?: ReactNode; /** Stable id for agent registration / DOM addressing. */ id?: string; } declare function CommandPaletteDialog({ open, onOpenChange, commands, header, id, }: CommandPaletteDialogProps): import("react/jsx-runtime").JSX.Element; export { CommandPalette, CommandPaletteDialog, CommandInput, CommandList, CommandGroup, CommandItem, CommandEmpty, CommandSeparator, CommandShortcut, }; //# sourceMappingURL=command-palette.d.ts.map