import { FeatureItem, FeatureRefTarget, InitialWidthsForToolsMenu, ToolsMenuState } from '../types'; import { ControlBlockButtonProps } from '../control-block-button.types'; import { default as React } from 'react'; type MeasurementsParams = { leftSideInner: ControlBlockButtonProps[] | undefined; rightButtons: ControlBlockButtonProps[]; featureLeftButtons: ControlBlockButtonProps[]; icons: FeatureItem[]; }; export type ControlBlockMeasurements = ReturnType; export declare const useControlBlockMeasurements: ({ leftSideInner, rightButtons, featureLeftButtons, icons, }: MeasurementsParams) => { mergedWidths: InitialWidthsForToolsMenu; registerFeaturesRef: (el: HTMLDivElement | null, index: number, target: FeatureRefTarget) => void; measureAll: (vis: ToolsMenuState, iconsList: FeatureItem[]) => void; logDomZones: (container: HTMLDivElement | null) => void; inlineTitleRef: React.RefObject; editModeLeftSlotRef: React.RefObject; overflowTriggerRef: React.RefObject; leftSideInnerBlockRef: React.RefObject; }; type MeasurementEffectsParams = MeasurementsParams & { visibilityState: ToolsMenuState; containerRef: React.RefObject; fullScreened: boolean; editModeEnabled: boolean; isCollapsed: boolean; }; export declare const useMeasurementEffects: (measurements: ControlBlockMeasurements, { visibilityState, containerRef, leftSideInner, rightButtons, featureLeftButtons, icons, fullScreened, editModeEnabled, isCollapsed, }: MeasurementEffectsParams) => void; export {};