@csegames/camelot-unchained
Version:
Camelot Unchained Client Library
37 lines (36 loc) • 1.16 kB
TypeScript
/// <reference types="react" />
import * as React from 'react';
import { StyleDeclaration } from 'aphrodite';
export interface FilterSelectStyle extends StyleDeclaration {
container: React.CSSProperties;
input: React.CSSProperties;
list: React.CSSProperties;
listItem: React.CSSProperties;
selectedItem: React.CSSProperties;
highlightItem: React.CSSProperties;
}
export declare const defaultFilterSelectStyle: FilterSelectStyle;
export interface FilterSelectProps {
items: any[];
filter: (text: string, item: any) => boolean;
renderItem: (item: any, renderData: any) => JSX.Element;
renderData?: any;
styles?: Partial<FilterSelectStyle>;
}
export interface FilterSelectState {
items: any[];
filteredItems: any[];
selectedItem: any;
filterText: string;
keyboardIndex: number;
}
export declare class FilterSelect extends React.Component<FilterSelectProps, FilterSelectState> {
private inputRef;
constructor(props: FilterSelectProps);
render(): JSX.Element;
private onInputChanged;
private onKeyDown;
private applyFilter;
private selectItem;
}
export default FilterSelect;