import type { HTMLProps, JSX } from 'react'; export type TDropdownPosition = 'bottom-center' | 'bottom-left' | 'bottom-right' | 'left-bottom' | 'left-center' | 'left-top' | 'right-bottom' | 'right-center' | 'right-top' | 'top-center' | 'top-left' | 'top-right'; export type TDropdownDialogueProps = HTMLProps; export type TDropdownProps = { /** Set Dropdown's position */ position?: TDropdownPosition; /** Set Dropdown's trigger. It should be a single element */ trigger: JSX.Element; } & TDropdownDialogueProps; export type TDropdownOpenState = { isOpen: boolean; isShow: boolean; }; export type TDropdownStyle = { height: number | string; left: number; top: number; }; export type TGetDropdownPositionParams = { position: TDropdownPosition; dropdownHeight: number; dropdownWidth: number; triggerHeight: number; triggerWidth: number; triggerTop: number; triggerLeft: number; }; export type TGetDropdownPosition = (params: TGetDropdownPositionParams) => { top: number; left: number; };