UNPKG

@reactodia/workspace

Version:

Reactodia Workspace -- library for visual interaction with graphs in a form of a diagram.

40 lines 1.52 kB
import * as React from 'react'; import { Events, PropertyChange } from '../../coreUtils/events'; export interface SearchInputProps { className?: string; inputProps?: React.HTMLProps<HTMLInputElement>; store: SearchInputStore; children?: React.ReactNode; } export declare function SearchInput(props: SearchInputProps): import("react/jsx-runtime").JSX.Element; export interface UseSearchInputStoreOptions<T> { initialValue: T; submitTimeout?: number | 'immediate' | 'explicit'; allowSubmit?: (value: T) => boolean; } export interface SearchInputStore<T = string> { readonly events: Events<SearchInputStoreEvents<T>>; get mode(): 'debounce' | 'immediate' | 'explicit'; get value(): T; change(params: { value: T; action: 'input' | 'submit' | 'clear'; }): void; } export interface SearchInputStoreEvents<T> { changeValue: SearchInputStoreChangeValueEvent<T>; changeMode: PropertyChange<SearchInputStore<T>, SearchInputStore['mode']>; executeSearch: { readonly source: SearchInputStore<T>; readonly value: T; }; clearSearch: { readonly source: SearchInputStore<T>; readonly value: T; }; } export interface SearchInputStoreChangeValueEvent<T> extends PropertyChange<SearchInputStore<T>, T> { readonly action: 'input' | 'submit' | 'clear'; } export declare function useSearchInputStore<T = string>(params: UseSearchInputStoreOptions<T>): SearchInputStore<T>; //# sourceMappingURL=searchInput.d.ts.map