import * as React from 'react'; import * as ReactManagedDragable from 'react-managed-draggable'; import * as DropModel from './drop-model'; import { FloatingStartOptions, FloatyManager } from './floaty-manager'; import * as RenderersModel from './renderers-model'; import * as StateModel from './state-model'; interface Props { state: StateModel.State; onStateChange: (state: StateModel.State) => void; renderers: RenderersModel.FloatyRenderers; rowMinWidth?: number; columnMinHeight?: number; } interface State { currentMousePosition: ReactManagedDragable.XY | null; dropResolutions: DropModel.DropResolution[]; rootDropArea: DropModel.DropArea | null; } export declare class Floaty extends React.PureComponent, State> implements FloatyManager { state: State; private portal; private dropResolutions; private eventTarget; private raf; componentDidMount(): void; componentWillUnmount(): void; render(): JSX.Element; private renderLayout; private renderDropResolution; private renderFloating; private getCandidateDropResolution; private registerFloatHandlers; private unregisterFloatHandlers; private updateRootDropArea; private updateState; private onLayoutChange; private onRowOrColumnUpdateFractions; registerDropResolutions: (key: unknown, dropResolutions: DropModel.DropResolution[]) => void; unregisterDropResolutions: (key: unknown) => void; private updateDropResolutions; updateColumnFractions: (rowOrColumn: StateModel.Column | StateModel.Row, index1: number, fraction1: number, index2: number, fraction2: number) => void; updateRowFractions: (rowOrColumn: StateModel.Column | StateModel.Row, index1: number, fraction1: number, index2: number, fraction2: number) => void; activateStackItem: (stackItem: StateModel.StackItem) => void; closeTab: (stackItem: StateModel.StackItem) => void; replaceItem: (stackItem: StateModel.StackItem, item: T, key?: string | undefined) => void; private handleMove; private handleUp; startFloat: (stackItem: StateModel.StackItem, options: FloatingStartOptions) => void; getRowMinWidth: () => number; getColumnMinHeight: () => number; getLayout: () => StateModel.Column | StateModel.Row | StateModel.Stack | null; findStack: (stackItem: StateModel.StackItem) => StateModel.Stack | null; private replaceInPath; private findPath; } export {};