@activecollab/components
Version:
ActiveCollab Components
51 lines • 2.34 kB
TypeScript
import { type FC, type ReactNode, type ReactElement, type MutableRefObject } from "react";
import { type IOptionItemProps } from "../Select/Option";
import { type IOptionGroupProps } from "../Select/OptionGroup";
export declare function isOptionGroup(item: IOptionGroupProps | IOptionItemProps): item is IOptionGroupProps;
export interface IAutocompleteProps {
/** Select type: single or multiple */
type?: "single" | "multiple";
/** List of options or group options */
options?: (IOptionGroupProps | IOptionItemProps)[];
/** Selected values */
selected?: (string | number)[] | string | number;
/** Mixed options values */
mixedOptions?: (string | number)[];
/** Input Element. */
inputEl?: MutableRefObject<HTMLInputElement | null | undefined>;
/** Text for empty value */
emptyValue?: string;
/** Text for No result */
noResultText?: string;
/** Render option */
renderOption?: (option: Record<string, ReactNode>, data: Record<string, unknown>) => string | ReactElement;
/** Default value that renders on top of list */
defaultValue?: string;
/** Sort direction for labels */
sortDirection?: "asc" | "desc";
/** handleChange callback */
handleChange?: (e: (string | number)[] | string | number | null | undefined) => void;
/** ClassName for single option */
optionClassName?: string;
/** handleEmptyAction */
handleEmptyAction?: (e: string | number) => void;
/** Disable sorting options */
disabledInternalSort?: boolean;
/** ClassName for Autocomplete component */
AutocompleteClassName?: string;
/** handleDefaultOptionChange callback */
handleDefaultOptionChange?: () => void;
/** Should default value be selected */
preselectDefaultValue?: boolean;
/** Should order stay the same after choosing an option */
keepSameOptionsOrder?: boolean;
/** Set max height property for scrollbars */
autoHeightMax?: number;
/** Clear input on select - works in single mode */
clearInputOnSelect?: boolean;
/** Custom filter function for additional filtering criteria */
filterCriteria?: (option: IOptionItemProps, filter: string) => boolean;
disableVirtualization?: boolean;
}
export declare const Autocomplete: FC<IAutocompleteProps>;
//# sourceMappingURL=Autocomplete.d.ts.map