@brizy/ui
Version:
React elements in Brizy style
42 lines (41 loc) • 1.19 kB
TypeScript
import { ChangeEvent, Component, KeyboardEventHandler, RefObject } from "react";
export interface MultipleValue {
title: string;
value: string;
}
export interface SingleValue {
label: string;
value: string;
}
interface DropdownState {
isOpen: boolean;
}
export interface Props {
className?: string;
value?: string[] | string | null;
options: MultipleValue[] | SingleValue[];
placeholder?: string;
isFixed?: boolean;
minItems?: number;
maxItems?: number;
itemHeight?: number;
isMultiple?: boolean;
onChange: (value: string[] | SingleValue) => void;
isLight?: boolean;
}
export interface State {
inputValue: string;
}
export declare class ReactSelect extends Component<Props, State> {
state: {
inputValue: string;
};
selectRef: RefObject<HTMLDivElement>;
inputRef: RefObject<HTMLInputElement>;
handleChange: (changes: MultipleValue | SingleValue, { isOpen }: DropdownState) => void;
handleInputChange: (e: ChangeEvent<HTMLInputElement>) => void;
handleInputKeyDown: KeyboardEventHandler<HTMLInputElement>;
itemToString: (i: SingleValue) => string;
render(): JSX.Element;
}
export {};