UNPKG

ag-grid-quick-filter

Version:

A function rich all select that supports multiple data sources and integrates with ag-grid

63 lines (62 loc) 2.79 kB
import { RefObject, ChangeEvent, KeyboardEvent, MouseEvent as ReactMouseEvent } from "react"; import CSS from "csstype"; import { Cache } from "../cache/cache"; import { Choice, Choices, ChoiceDefinition, Selection, SelectProps } from "../types"; import { OptionType } from "../types/optionType"; import { LookUp } from "../types/choiceDefinition"; import { Comparison } from "../types/comparison"; import { Operand } from "../types/operand"; import { GridApi } from "ag-grid-community"; export interface AgGridQuickFilterModel { definitionMap: Map<string, ChoiceDefinition<any>>; lookUpGuidMap: Map<string, string>; lookUpChoiceMap: Map<string, OptionType[]>; cache?: Cache; inputText: string; filterText: string; showChoices: boolean; highlightedIndex: number; visibleChoices: Choices[]; visibleChoiceCount: number; selected: Selection[]; listPosition: CSS.Property.Top; token: string; selectId: string; comparison?: Comparison; operand?: Operand; agGridApi?: GridApi; props: SelectProps; inputRef?: RefObject<HTMLInputElement>; selectRef?: RefObject<HTMLDivElement>; active?: number; refresh?: () => void; updateProps: (props: SelectProps) => void; updateRefs: (inputRef?: RefObject<HTMLInputElement>, selectRef?: RefObject<HTMLDivElement>) => void; updateDisplay: () => void; signalChange: () => void; fetchChoices: (text: string) => void; buildVisibleChoices: () => void; includeItemText: (item: OptionType, exact: boolean, lookUp?: LookUp) => boolean; includeItemValue: (item: OptionType, exact: boolean, lookUp?: LookUp) => boolean; includeItem: (definition: ChoiceDefinition<any>, item: OptionType, exact: boolean) => boolean; updateVisibleChoices: () => void; hideList: () => void; showList: () => void; updateListPosition: () => void; clickedAway: (mouseEvent: MouseEvent) => void; setFocus: () => void; updateFilterText: (text: string) => void; textInputClicked: () => void; textChanged: (event: ChangeEvent<HTMLInputElement>) => void; updateAgGrid: (definition?: ChoiceDefinition<any>) => void; updateSelection: () => void; selectItem: (choice: Choice) => void; deselectItem: (selection: Selection) => void; clearSelection: (event: ReactMouseEvent) => void; makeItemVisible: (index: number) => void; adjustHighlightedIndex: (index: number) => void; adjustHighlightedIndexOnly: (index: number) => void; getItemAtIndex: () => Choice | undefined; inputKeyPressed: (event: KeyboardEvent<HTMLDivElement>) => void; } export declare const createAgGridQuickFilterModel: (initialProps: SelectProps) => AgGridQuickFilterModel;