@spaced-out/ui-design-system
Version:
Sense UI components library
42 lines • 1.75 kB
TypeScript
import * as React from 'react';
import type { Flow } from 'flow-to-typescript-codemod';
import type { MenuClassNames, MenuLabelTooltip } from '../../types/menu';
import type { ClickAwayRefType } from '../../utils/click-away';
import type { ButtonProps } from '../Button';
import type { MenuOption, MenuOptionsVariant, Virtualization } from '../Menu';
import type { BaseTooltipProps, ElevationType } from '../Tooltip';
import type { AnchorType } from './ButtonDropdown';
type ClassNames = Readonly<{
buttonWrapper?: string;
dropdownContainer?: string;
buttonIcon?: string;
}>;
export type SimpleButtonDropdownRef = {
selectedKeys?: Array<string>;
};
export type SimpleButtonDropdownProps = // Input props
ButtonProps & {
elevation?: ElevationType;
classNames?: ClassNames;
anchorPosition?: AnchorType;
tooltip?: BaseTooltipProps;
options?: Array<MenuOption>;
optionsVariant?: MenuOptionsVariant;
allowSearch?: boolean;
selectedKeys?: Array<string>;
menuVirtualization?: Virtualization;
header?: React.ReactNode;
footer?: React.ReactNode;
menuClassNames?: MenuClassNames;
showLabelTooltip?: MenuLabelTooltip;
allowWrap?: boolean;
onOptionSelect?: (option: MenuOption, arg2?: React.SyntheticEvent<HTMLElement> | null | undefined) => unknown;
onMenuOpen?: () => unknown;
onMenuClose?: () => unknown;
resolveLabel?: (option: MenuOption) => string | React.ReactNode;
resolveSecondaryLabel?: (option: MenuOption) => string | React.ReactNode;
clickAwayRef?: ClickAwayRefType;
};
export declare const SimpleButtonDropdown: Flow.AbstractComponent<SimpleButtonDropdownProps, SimpleButtonDropdownRef>;
export {};
//# sourceMappingURL=SimpleButtonDropdown.d.ts.map