@class TSWPPadding, NSString, TSDLayout, NSMutableArray, TSWPStorage, TSPObject, TSDCanvas, NSObject; @protocol TSWPFootnoteHeightMeasurer, TSWPOffscreenColumn, TSWPStyleProvider, TSDHint, TSWPFootnoteMarkProvider, TSWPLayoutParent; @interface TSWPStorageMeasurer : NSObject <TSWPLayoutTarget, TSWPLayoutOwner, TSWPColumnMetrics> { TSWPStorage *_storage; NSObject<TSWPLayoutParent> *_layoutParent; id<TSWPStyleProvider> _styleProvider; struct CGSize { double width; double height; } _minSize; struct CGSize { double width; double height; } _maxSize; unsigned int _flags; struct CGPoint { double x; double y; } _anchor; } @property (readonly, retain, nonatomic) NSMutableArray *columns; @property (readonly, retain, nonatomic) id<TSWPOffscreenColumn> previousTargetLastColumn; @property (readonly, nonatomic) const void *previousTargetTopicNumbers; @property (readonly, retain, nonatomic) id<TSWPOffscreenColumn> nextTargetFirstColumn; @property (readonly, nonatomic) const void *nextTargetTopicNumbers; @property (readonly, nonatomic) id<TSWPFootnoteHeightMeasurer> footnoteHeightMeasurer; @property (readonly, nonatomic) id<TSWPFootnoteMarkProvider> footnoteMarkProvider; @property (readonly, nonatomic) TSPObject<TSDHint> *nextTargetFirstChildHint; @property (readonly, nonatomic) struct CGSize { double x0; double x1; } minSize; @property (readonly, nonatomic) struct CGSize { double x0; double x1; } maxSize; @property (readonly, nonatomic) struct CGSize { double x0; double x1; } currentSize; @property (readonly, nonatomic) struct CGPoint { double x0; double x1; } position; @property (readonly, nonatomic) struct CGPoint { double x0; double x1; } anchorPoint; @property (readonly, nonatomic) unsigned int autosizeFlags; @property (readonly, nonatomic) unsigned int verticalAlignment; @property (readonly, nonatomic) unsigned int naturalAlignment; @property (readonly, nonatomic) int naturalDirection; @property (readonly, nonatomic) BOOL wantsLineFragments; @property (readonly, nonatomic) unsigned long long pageNumber; @property (readonly, nonatomic) unsigned long long pageCount; @property (readonly, nonatomic) BOOL textIsVertical; @property (readonly, nonatomic) BOOL layoutIsValid; @property (readonly, nonatomic) double maxAnchorY; @property (readonly, nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } maskRect; @property (retain, nonatomic) NSMutableArray *anchoredDrawablesForRelayout; @property (readonly, nonatomic) TSDCanvas *canvas; @property (readonly, nonatomic) TSDLayout *parentLayoutForInlineAttachments; @property (readonly, nonatomic) BOOL shouldHyphenate; @property (readonly, nonatomic) struct __CFLocale { } *hyphenationLocale; @property (readonly, nonatomic) BOOL allowsLastLineTruncation; @property (readonly, nonatomic) double reservedWidthWhenTruncating; @property (readonly, nonatomic) unsigned int maxLineCount; @property (readonly, nonatomic) BOOL ignoresEquationAlignment; @property (readonly, nonatomic) BOOL allowsDescendersToClip; @property (readonly, nonatomic) BOOL pushAscendersIntoColumn; @property (readonly, nonatomic) BOOL alwaysAllowWordSplit; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; @property (readonly, nonatomic) struct CGSize { double x0; double x1; } adjustedInsets; @property (readonly, nonatomic) TSWPPadding *layoutMargins; @property (readonly, nonatomic) unsigned long long columnCount; @property (readonly, nonatomic) BOOL alwaysStartsNewTarget; @property (readonly, nonatomic) BOOL shrinkTextToFit; @property (readonly, nonatomic) BOOL columnsAreLeftToRight; @property (readonly, nonatomic) double textScaleFactor; - (void)dealloc; - (id)initWithStorage:(id)a0; - (id)styleProvider; - (void)addAttachmentLayout:(id)a0; - (id)columnMetricsForCharIndex:(unsigned long long)a0 outRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; } *)a1; - (id)currentAnchoredDrawableLayouts; - (id)currentInlineDrawableLayouts; - (double)gapForColumnIndex:(unsigned long long)a0 bodyWidth:(double)a1; - (BOOL)isLastTarget; - (BOOL)isLayoutOffscreen; - (unsigned long long)iterativeAttachmentPositioningMaxPassCount; - (id)layoutForInlineDrawable:(id)a0; - (double)positionForColumnIndex:(unsigned long long)a0 bodyWidth:(double)a1 outWidth:(double *)a2 outGap:(double *)a3; - (void)setNeedsDisplayInTargetRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (BOOL)shouldPositionAttachmentsIteratively; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })targetRectForCanvasRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (id)textWrapper; - (id)validatedLayoutForAnchoredDrawable:(id)a0; - (double)widthForColumnIndex:(unsigned long long)a0 bodyWidth:(double)a1; - (BOOL)caresAboutStorageChanges; - (void)layoutManager:(id)a0 didClearDirtyRangeWithDelta:(long long)a1 afterCharIndex:(unsigned long long)a2; - (void)layoutManagerNeedsLayout:(id)a0; - (id)lineHintsForTarget:(id)a0; - (struct CGSize { double x0; double x1; })measuredSizeWithFlags:(unsigned int)a0; - (struct CGSize { double x0; double x1; })measuredSizeWithFlags:(unsigned int)a0 maxSize:(struct CGSize { double x0; double x1; })a1 layoutParent:(id)a2 styleProvider:(id)a3; - (id)pLayoutWithMinSize:(struct CGSize { double x0; double x1; })a0 maxSize:(struct CGSize { double x0; double x1; })a1 anchor:(struct CGPoint { double x0; double x1; })a2 flags:(unsigned int)a3; @end