CANT_CLOSE_NEARBY_FRAMES_TOO_SMALL
CANT_LEAVE_NO_UNDOCKED_FRAMES
CANT_LEAVE_NO_UNDOCKED_FRAMES: {}
CANT_REARRANGE_DOCKED_WITH_NON_DOCKED
CANT_REARRANGE_DOCKED_WITH_NON_DOCKED: { hoveredFrameId: string; movingFrameId: string; zoneSide: Zone["side"];} CANT_REARRANGE_TO_SAME_RELATIVE_POSITION
CANT_REARRANGE_TO_SAME_RELATIVE_POSITION: { hoveredFrameId: string; movingFrameId: string; zoneSide: Zone["side"];} CANT_REARRANGE_WITH_DOCKED_EDGES
CANT_REARRANGE_WITH_DOCKED_EDGES: { hoveredFrameId: string; movingFrameId: string; zoneSide: Zone["side"];} CANT_RESIZE
CANT_RESIZE: { size: Size } CANT_RESIZE_COLLAPSED_FRAME
CANT_SPLIT_FRAME_TOO_SMALL
CANT_SPLIT_FRAME_TOO_SMALL: { frame: LayoutFrame; minSize: number; newSize: number;} CANT_UNCOLLAPSE_NOT_COLLAPSED
CANT_UNDOCK_COLLAPSED_FRAME
CANT_UNDOCK_COLLAPSED_FRAME: { frame: string }
FRAME_ALREADY_DOCKED_ON_SIDE
FRAME_ALREADY_DOCKED_ON_SIDE: { id: string; side: EdgeSide } ID_ALREADY_EXISTS
ID_ALREADY_EXISTS: { id: string | undefined }
INVALID_ID
INVALID_ID: { id: string | undefined }
NO_ACTIVE_FRAME
NO_ACTIVE_FRAME: Record<string, never>
NO_ACTIVE_WINDOW
NO_ACTIVE_WINDOW: Record<string, never>
NO_FILL_CANDIDATES
NO_FILL_CANDIDATES: {}
NO_SPACE_TO_REDISTRIBUTE
NO_SPACE_TO_REDISTRIBUTE: { frameSizeNeeded: number; minFrameSize: number }
REDISTRIBUTE_OUT_OF_BOUNDS
REDISTRIBUTE_OUT_OF_BOUNDS: { max: number; min: number; wanted: number }
REDISTRIBUTE_WOULD_RESULT_IN_INVALID_FRAMES
REDISTRIBUTE_WOULD_RESULT_IN_INVALID_FRAMES: {
problemEdgeCoordinates: number[];
}