@interface CHDrawing : NSObject { struct CHDrawingStrokes { struct vector, std::allocator>> { void *__begin_; void *__end_; struct __compressed_pair *, std::allocator>> { void *__value_; } __end_cap_; } strokeBounds; struct vector> { unsigned long long *__begin_; unsigned long long __size_; struct __compressed_pair> { unsigned long long __value_; } __cap_alloc_; } strokeBoundsValidity; struct vector> { double *__begin_; double *__end_; struct __compressed_pair> { double *__value_; } __end_cap_; } startTimes; struct vector> { double *__begin_; double *__end_; struct __compressed_pair> { double *__value_; } __end_cap_; } endTimes; struct vector, std::allocator>> { void *__begin_; void *__end_; struct __compressed_pair *, std::allocator>> { void *__value_; } __end_cap_; } strokes; long long currentStrokeIndex; unsigned int mSize; struct Matrix { void /* function */ **_vptr$Matrix; double *_data; unsigned int _w; unsigned int _h; } bitmap; double lineHeight; struct vector> { int *__begin_; int *__end_; struct __compressed_pair> { int *__value_; } __end_cap_; } sparseBitmap; } _drawing; } @property (class, readonly) BOOL supportsSecureCoding; - (void)clear; - (unsigned long long)hash; - (id)initWithContentsOfFile:(id)a0; - (void)encodeWithCoder:(id)a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })bounds; - (id).cxx_construct; - (id)description; - (void).cxx_destruct; - (void)addPoint:(struct CGPoint { double x0; double x1; })a0; - (BOOL)isEqual:(id)a0; - (void)writeToFile; - (id)initWithCoder:(id)a0; - (id)copyWithZone:(struct _NSZone { } *)a0; - (void)endStroke; - (void)setLineHeight:(double)a0; - (unsigned long long)pointCount; - (unsigned long long)strokeCount; - (struct CGPoint { double x0; double x1; })pointForStrokeIndex:(unsigned long long)a0 pointIndex:(unsigned long long)a1; - (id)drawingWithStrokesFromIndexSet:(id)a0; - (void)addEndTime:(double)a0; - (void)addStartTime:(double)a0; - (void)appendDrawing:(id)a0; - (void)appendSegment:(id)a0 fromDrawing:(id)a1; - (double)averageCharacterHeightEstimation:(double)a0 minChunkHeight:(double)a1; - (struct Matrix { void /* function */ **x0; float *x1; unsigned int x2; unsigned int x3; })bitmapRepresentationForSize:(struct CGSize { double x0; double x1; })a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })boundsForStrokeIndex:(unsigned long long)a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })boundsForStrokeIndexes:(id)a0; - (struct CGPoint { double x0; double x1; })centroidForStrokeIndexes:(id)a0; - (float)cumulativePointToPointDistance; - (float)distanceBetweenFirstAndLastPoint; - (id)drawingByRemovingUnnaturalHorizontalGaps:(double)a0; - (id)drawingScaledByFactor:(double)a0; - (id)drawingSpatiallyResampled:(double)a0 maxPointsPerStroke:(long long)a1; - (id)drawingSpatiallyResampled:(double)a0 outputPointMap:(void *)a1; - (id)drawingTransformedWithTranslation:(struct CGVector { double x0; double x1; })a0 scaleFactor:(double)a1; - (id)drawingWithStrokesFromIndexArray:(id)a0; - (double)endTimeForStroke:(unsigned long long)a0; - (id)indexesOfStrokesSmallerThanSize:(struct CGSize { double x0; double x1; })a0; - (id)initWithContentsOfJSONDictionary:(id)a0; - (id)initWithContentsOfXYString:(id)a0; - (BOOL)isEqualToDrawing:(id)a0; - (BOOL)isPrefixForDrawing:(id)a0; - (id)jsonRepresentationWithContext:(id)a0; - (struct _NSRange { unsigned long long x0; unsigned long long x1; })matchingStrokePrefixRangeForDrawing:(id)a0; - (id)newDrawingWithAffineTransform:(struct CGAffineTransform { double x0; double x1; double x2; double x3; double x4; double x5; })a0; - (id)newDrawingWithTransform:(id /* block */)a0; - (struct Matrix { void /* function */ **x0; float *x1; unsigned int x2; unsigned int x3; })orientationRepresentationForSampling:(unsigned long long)a0 convolutionWidth:(unsigned long long)a1; - (unsigned long long)pointCountForStrokeIndex:(unsigned long long)a0; - (id)sortedDrawingUsingMinXCoordinate; - (id)sortedDrawingUsingStrokeMidPoint:(id *)a0; - (id)sortedDrawingUsingStrokeMidPointHorizontalOverlapAware:(id *)a0 shouldSortRTL:(BOOL)a1; - (double)startTimeForStroke:(unsigned long long)a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })strokeBoundsAtIndex:(unsigned long long)a0; - (struct vector> { long long *x0; long long *x1; struct __compressed_pair> { long long *x0; } x2; })strokeIndicesSortedByMinXCoordinate; - (void)writeToFileWithContext:(id)a0 folder:(id)a1 basename:(id)a2; - (id)xyRepresentation; @end