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;
};