@interface NUViewGeometry : NSObject @property (nonatomic) double backingScale; @property (nonatomic) struct CGSize { double width; double height; } imageSize; @property (readonly, nonatomic) struct CGSize { double x0; double x1; } viewImageSize; @property (nonatomic) struct UIEdgeInsets { double top; double left; double bottom; double right; } contentInsets; @property (nonatomic, getter=isFlipped) BOOL flipped; @property (nonatomic) double angle; @property (nonatomic) struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } cropRect; @property (nonatomic) struct CGPoint { double x; double y; } origin; @property (nonatomic) double maximumScale; @property (readonly, nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } imageBounds; @property (readonly, nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } boundingCropRect; - (id)init; - (struct UIEdgeInsets { double x0; double x1; double x2; double x3; })contentInsetsWithScale:(double)a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })insetBoundsForCrop:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0 inBounds:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 inFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a2; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })proposedBoundsForBounds:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0 inFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1; @end