import type { NodeToolbarConfig } from './NodeToolbar.types';
import type { ProcessedToolbarItem } from './NodeToolbar.utils';
export interface UseToolbarStateProps {
    config: NodeToolbarConfig;
    expanded: boolean;
    nodeId: string;
    hidden?: boolean;
}
export type ToolbarDisplayState = 'hidden' | 'pinned' | 'expanded';
export interface UseToolbarStateReturn {
    isDropdownOpen: boolean;
    setIsDropdownOpen: (open: boolean) => void;
    dropdownRef: React.RefObject<HTMLDivElement | null>;
    buttonRef: React.RefObject<HTMLButtonElement | null>;
    displayState: ToolbarDisplayState;
    shouldShowOverflow: boolean;
    actionsToDisplay: ProcessedToolbarItem[];
    overflowActionsToDisplay: ProcessedToolbarItem[];
    separatorOrientation: 'horizontal' | 'vertical';
    toggleDropdown: (e: React.MouseEvent) => void;
}
export declare const useToolbarState: ({ config, expanded, nodeId, hidden, }: UseToolbarStateProps) => UseToolbarStateReturn;
//# sourceMappingURL=useToolbarState.d.ts.map