//
//     Generated by class-dump 3.5 (64 bit) (Debug version compiled Jul  6 2018 12:02:43).
//
//     class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2015 by Steve Nygard.
//

#import <objc/NSObject.h>

#import "MSAlignmentEngineDelegate-Protocol.h"
#import "MSGestureRecognizerDelegate-Protocol.h"
#import "MSVectorOverlayLayoutDelegate-Protocol.h"
#import "_TtP17SketchControllers29MSCollectionOverlayDataSource_-Protocol.h"

@class MSAlignmentEngine, MSAlignmentEngineResult, MSCanvasView, MSDragToSelectGestureRecognizer, MSOverlayItemImageCache, MSPath, MSPathController, MSShapeEditingBehavior, MSShapeEventHandler, MSVectorHandleStateDecider, MSVectorOverlay, MSVectorOverlayLayout, NSArray, NSString, _TtC17SketchControllers21MSSelectionBoxOverlay, _TtC6Sketch21MSVectorOverlayAction;
@protocol MSVectorOverlayControllerDelegate;

@interface MSVectorOverlayController : NSObject <_TtP17SketchControllers29MSCollectionOverlayDataSource_, MSVectorOverlayLayoutDelegate, MSGestureRecognizerDelegate, MSAlignmentEngineDelegate>
{
    MSShapeEventHandler *_eventHandler;
    MSVectorOverlay *_overlay;
    MSCanvasView *_view;
    MSPathController *_pathController;
    NSArray *_selectedLayers;
    NSArray *_visibleLayers;
    MSShapeEditingBehavior *_editingBehavior;
    MSAlignmentEngineResult *_snaps;
    id <MSVectorOverlayControllerDelegate> _delegate;
    MSVectorOverlayLayout *_overlayLayout;
    _TtC17SketchControllers21MSSelectionBoxOverlay *_selectionBoxOverlay;
    MSDragToSelectGestureRecognizer *_dragToSelectGestureRecognizer;
    _TtC6Sketch21MSVectorOverlayAction *_currentAction;
    MSOverlayItemImageCache *_imageCache;
    MSAlignmentEngine *_snapper;
    NSArray *_shapeCenterSnapTargets;
    MSPath *_wirePath;
    MSVectorHandleStateDecider *_handleStateDecider;
}

- (void).cxx_destruct;
@property(readonly, nonatomic) MSVectorHandleStateDecider *handleStateDecider; // @synthesize handleStateDecider=_handleStateDecider;
@property(retain, nonatomic) MSPath *wirePath; // @synthesize wirePath=_wirePath;
@property(copy, nonatomic) NSArray *shapeCenterSnapTargets; // @synthesize shapeCenterSnapTargets=_shapeCenterSnapTargets;
@property(retain, nonatomic) MSAlignmentEngine *snapper; // @synthesize snapper=_snapper;
@property(retain, nonatomic) MSOverlayItemImageCache *imageCache; // @synthesize imageCache=_imageCache;
@property(retain, nonatomic) _TtC6Sketch21MSVectorOverlayAction *currentAction; // @synthesize currentAction=_currentAction;
@property(readonly, nonatomic) MSDragToSelectGestureRecognizer *dragToSelectGestureRecognizer; // @synthesize dragToSelectGestureRecognizer=_dragToSelectGestureRecognizer;
@property(readonly, nonatomic) _TtC17SketchControllers21MSSelectionBoxOverlay *selectionBoxOverlay; // @synthesize selectionBoxOverlay=_selectionBoxOverlay;
@property(readonly, nonatomic) MSVectorOverlayLayout *overlayLayout; // @synthesize overlayLayout=_overlayLayout;
@property(nonatomic) __weak id <MSVectorOverlayControllerDelegate> delegate; // @synthesize delegate=_delegate;
@property(copy, nonatomic) MSAlignmentEngineResult *snaps; // @synthesize snaps=_snaps;
@property(retain, nonatomic) MSShapeEditingBehavior *editingBehavior; // @synthesize editingBehavior=_editingBehavior;
@property(readonly, copy, nonatomic) NSArray *visibleLayers; // @synthesize visibleLayers=_visibleLayers;
@property(copy, nonatomic) NSArray *selectedLayers; // @synthesize selectedLayers=_selectedLayers;
@property(retain, nonatomic) MSPathController *pathController; // @synthesize pathController=_pathController;
@property(nonatomic) MSCanvasView *view; // @synthesize view=_view;
@property(readonly, nonatomic) MSVectorOverlay *overlay; // @synthesize overlay=_overlay;
@property(nonatomic) __weak MSShapeEventHandler *eventHandler; // @synthesize eventHandler=_eventHandler;
- (struct CGPoint)alignmentEngine:(id)arg1 roundPoint:(struct CGPoint)arg2;
- (void)collectionOverlay:(id)arg1 didDeselectItemAtIndexPath:(id)arg2;
- (BOOL)collectionOverlay:(id)arg1 shouldDeselectItemsAtIndexPaths:(id)arg2;
- (void)collectionOverlay:(id)arg1 didSelectItemAtIndexPath:(id)arg2;
- (BOOL)collectionOverlay:(id)arg1 shouldDeferSelectionAtIndexPath:(id)arg2;
- (BOOL)gestureRecognizer:(id)arg1 shouldAttemptToRecognizeAtPoint:(struct CGPoint)arg2 modifierFlags:(unsigned long long)arg3;
- (void)setNeedsUpdateCursor;
- (void)updateCursor;
- (void)trackMouse:(id)arg1;
- (void)handleOverlay:(id)arg1 didClickAtPoint:(struct CGPoint)arg2;
- (void)dragSegmentToPoint:(struct CGPoint)arg1;
- (id)prepareToDragSegmentWithMouseLocation:(struct CGPoint)arg1 modiferFlags:(unsigned long long)arg2;
- (id)locationForAddingPoint:(struct CGPoint)arg1 modifierFlags:(unsigned long long)arg2;
- (id)insertPointWithModifierFlags:(unsigned long long)arg1;
- (void)moveCurveAdjustmentHandleToPoint:(struct CGPoint)arg1 modifierFlags:(unsigned long long)arg2 didChangeCurveMode:(char *)arg3;
- (void)vectorOverlay:(id)arg1 toggleCurveModeAt:(id)arg2 modifierFlags:(unsigned long long)arg3;
- (struct CGPoint)determineLocationAndSnappingOfDrag:(id)arg1;
- (void)handleOverlay:(id)arg1 updateDragWithLocation:(struct CGPoint)arg2 modifierFlags:(unsigned long long)arg3;
- (void)flagsChanged:(id)arg1;
- (void)dragToSelect:(id)arg1;
- (void)mouseUpAtPoint:(struct CGPoint)arg1;
- (id)segmentAtIndexPath:(id)arg1;
- (BOOL)collectionOverlay:(id)arg1 selectItemAtPoint:(struct CGPoint)arg2 modifierFlags:(unsigned long long)arg3;
- (void)pathDidOpenOrClose;
- (void)delete:(id)arg1;
- (void)adjustHandle:(id)arg1 toValue:(double)arg2 onAxis:(unsigned long long)arg3;
- (void)adjustHandlesToValue:(double)arg1 onAxis:(unsigned long long)arg2;
- (void)distributeVectorPointsToAxis:(unsigned long long)arg1;
- (void)alignVectorPointsToKey:(id)arg1;
- (void)changeToCurveMode:(long long)arg1;
- (id)indexPathsForHandlesInRect:(struct CGRect)arg1;
- (id)indexPathOfSegmentAtPoint:(struct CGPoint)arg1;
- (id)overlayItemsForPathForSection:(unsigned long long)arg1;
- (id)hairlinePathForSection:(long long)arg1;
- (void)handleOverlayDidFinishDrag:(id)arg1;
- (struct CGPoint)vectorOverlay:(id)arg1 layout:(id)arg2 locationForInsertionPointAtIndexPath:(id)arg3;
- (id)handleOverlay:(id)arg1 layout:(id)arg2 pathForConnectingHandlesInSection:(long long)arg3;
- (struct CGPoint)vectorOverlay:(id)arg1 layout:(id)arg2 locationOfCurveFromHandleAtIndexPath:(id)arg3;
- (BOOL)vectorOverlay:(id)arg1 layout:(id)arg2 wantsCurveFromHandleAtIndexPath:(id)arg3;
- (struct CGPoint)vectorOverlay:(id)arg1 layout:(id)arg2 locationOfCurveToHandleAtIndexPath:(id)arg3;
- (BOOL)vectorOverlay:(id)arg1 layout:(id)arg2 wantsCurveToHandleAtIndexPath:(id)arg3;
- (BOOL)handleOverlay:(id)arg1 prepareForDragAtPoint:(struct CGPoint)arg2 modifierFlags:(unsigned long long)arg3;
- (struct CGPoint)handleOverlay:(id)arg1 layout:(id)arg2 locationOfHandleAtIndexPath:(id)arg3;
- (id)overlayItemsForInsertionPointWithLayoutAttributes:(id)arg1;
- (id)overlayItemsForSupplementaryHandleOfKind:(id)arg1 layoutAttributes:(id)arg2;
- (id)collectionOverlay:(id)arg1 overlayItemContainerForSupplementaryElementOfKind:(id)arg2 layoutAttributes:(id)arg3 parameters:(struct MSRenderingParameters)arg4;
- (id)collectionOverlay:(id)arg1 overlayItemContainerForItemAtIndexPath:(id)arg2 layoutAttributes:(id)arg3 parameters:(struct MSRenderingParameters)arg4;
- (id)collectionOverlay:(id)arg1 overlayItemImagesForColorSpace:(struct CGColorSpace *)arg2 backingScale:(double)arg3;
- (long long)collectionOverlay:(id)arg1 numberOfItemsInSection:(long long)arg2;
- (long long)numberOfSectionsInCollectionOverlay:(id)arg1;
- (id)makeWirePathForClosingPath:(BOOL)arg1 indexPathForSelectedHandle:(id)arg2;
- (void)updateWire;
- (void)addGuidesToSnapper:(id)arg1;
- (void)addOtherLayersToSnapper:(id)arg1;
- (void)includePointForSnapping:(struct CGPoint)arg1 inPathLayer:(id)arg2;
- (void)addHandlesToSnapperForDragging:(BOOL)arg1;
- (void)addTargetsToSnapperForDragging:(BOOL)arg1;
- (void)prepareSnapper;
- (void)ensureCurrentSelectionIsValid;
- (id)changeContext;
@property(readonly, nonatomic, getter=isInteractivelySelecting) BOOL interactivelySelecting;
- (void)didChangeSelection;
- (void)selectHandles:(id)arg1 notifyDelegate:(BOOL)arg2;
- (void)selectHandles:(id)arg1;
- (id)selectHandle:(id)arg1 extendSelection:(BOOL)arg2 notifyDelegate:(BOOL)arg3;
- (void)selectHandle:(id)arg1 extendSelection:(BOOL)arg2;
@property(readonly, copy, nonatomic) NSArray *selectedHandles;
- (void)didChangeAllowSelectionOnly;
- (void)updateStateWithMouseLocation:(struct CGPoint)arg1 modifierFlags:(unsigned long long)arg2;
- (void)selectLayers:(id)arg1 extendSelection:(BOOL)arg2;
- (id)pathLayersForLayer:(id)arg1;
- (void)rebuildVisibleLayersMaintainingSelection:(BOOL)arg1;
- (void)setVisibleLayers:(id)arg1;
- (void)registerWithEventHandler:(id)arg1;
- (id)init;

// Remaining properties
@property(readonly, copy) NSString *debugDescription;
@property(readonly, copy) NSString *description;
@property(readonly) unsigned long long hash;
@property(readonly) Class superclass;

@end

