import React, { PropsWithChildren } from "react"; import { PopoverPosition, IPopoverSharedProps, Menu } from "@blueprintjs/core"; import { Intent as BlueprintIntent } from "@blueprintjs/core"; import { IconName } from "@blueprintjs/icons"; export type TreeDropdownOption = { label: string; value: string; subText?: string; id?: string; intent?: BlueprintIntent; onSelect?: (value: TreeDropdownOption, setter?: Setter) => void; children?: TreeDropdownOption[]; className?: string; type?: string; icon?: IconName; isChildrenOpen?: boolean; selfIndex?: number[]; args?: Array; }; export type Setter = (value: TreeDropdownOption, defaultVal?: string, isUpdatedViaKeyboard?: boolean) => void; export type TreeDropdownProps = { optionTree: TreeDropdownOption[]; selectedValue: string; getDefaults?: (value: any) => any; defaultText: string; onSelect: Setter; selectedLabelModifier?: (option: TreeDropdownOption, displayValue?: string) => React.ReactNode; displayValue?: string; toggle?: React.ReactNode; className?: string; modifiers?: IPopoverSharedProps["modifiers"]; onMenuToggle?: (isOpen: boolean) => void; position?: PopoverPosition; menuWidth?: number; menuHeight?: number; popoverClassName?: string; usePortal?: boolean; defaultOpen?: boolean; }; export type StyledMenuProps = PropsWithChildren<{ width?: number; height?: number; }>; export declare const StyledMenu: import("styled-components").StyledComponent; export declare function calculateNext(arr: number[], max: number): number[]; export declare function calculatePrev(arr: number[], max: number): number[]; export declare function getItem(arr: TreeDropdownOption[], index: number[]): TreeDropdownOption | undefined; export declare function setItem(arr: TreeDropdownOption[], index: number[], item: TreeDropdownOption): TreeDropdownOption[] | undefined; export declare function closeAllChildren(tree: TreeDropdownOption[]): TreeDropdownOption[]; export declare function deepOpenChildren(tree: TreeDropdownOption[], index: number[]): TreeDropdownOption[]; export declare function setSelfIndex(tree: TreeDropdownOption[], prevIndex?: never[]): TreeDropdownOption[]; declare function TreeDropdown(props: TreeDropdownProps): JSX.Element; export default TreeDropdown;