@spaced-out/ui-design-system
Version:
Sense UI components library
57 lines • 1.96 kB
TypeScript
import * as React from 'react';
import type { ClickAwayRefType } from '../../utils/click-away/click-away';
import type { InputProps } from '../Input';
import type { BaseMenuProps } from '../Menu';
import type { ElevationType } from '../Tooltip';
import type { ResolveTokenValueProps } from './TokenValueChips';
export declare const DEFAULT_LIMIT_VALUE = 100;
type ClassNames = Readonly<{
wrapper?: string;
box?: string;
input?: string;
}>;
export type TokenListMenuOptionTypes<T> = {
options?: Array<T>;
groupTitleOptions?: Array<TokenGroupTitleOption<T>>;
resolveLabel?: (option: T) => string;
};
export type TokenGroupTitleOption<T> = {
groupTitle?: React.ReactNode;
options?: Array<T>;
showLineDivider?: boolean;
};
export type TokenListMenuProps<T> = BaseMenuProps & TokenListMenuOptionTypes<T>;
export type Props<T> = {
classNames?: ClassNames;
clickAwayRef?: ClickAwayRefType;
disabled?: boolean;
error?: boolean;
errorText?: string;
focusOnMount?: boolean;
helperText?: string;
inputValue?: string;
inputPlaceholder?: string;
limit?: number;
isLoading?: boolean;
locked?: boolean;
onChange: (values: Array<T>) => unknown;
onInputBlur?: (e: React.SyntheticEvent<HTMLInputElement>) => unknown;
onInputChange?: (value: string) => unknown;
onInputFocus?: (e: React.SyntheticEvent<HTMLInputElement>) => unknown;
placeholder?: string;
size?: 'medium' | 'small';
tabIndex?: number;
values: Array<T>;
menu?: TokenListMenuProps<T>;
onMenuOpen?: () => unknown;
onMenuClose?: () => unknown;
resolveTokenValue?: (arg1: ResolveTokenValueProps<T>) => React.ReactNode;
inputProps?: InputProps;
elevation?: ElevationType;
};
export declare function TokenListInput<T>(props: Props<T>): React.JSX.Element;
export declare namespace TokenListInput {
var displayName: string;
}
export {};
//# sourceMappingURL=TokenListInput.d.ts.map