import Foundation struct RDEPUBTextLayoutFrame: Equatable { var contentRange: NSRange var breakReason: RDEPUBTextPageBreakReason var blockRange: NSRange? var attachmentRanges: [NSRange] var attachmentKinds: [RDEPUBTextAttachmentKind] var blockKinds: [RDEPUBTextBlockKind] var semanticHints: [RDEPUBTextSemanticHint] var attachmentPlacements: [RDEPUBTextAttachmentPlacement] var trailingFragmentID: String? var diagnostics: [String] var metadata: RDEPUBTextPageMetadata { RDEPUBTextPageMetadata( breakReason: breakReason, blockRange: blockRange, attachmentRanges: attachmentRanges, attachmentKinds: attachmentKinds, blockKinds: blockKinds, semanticHints: semanticHints, attachmentPlacements: attachmentPlacements, trailingFragmentID: trailingFragmentID, diagnostics: diagnostics ) } }