1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# NoteSections::Section and ::Split are Data classes, whose members
# the inline parser cannot read (see sig/pro_tacts/contact.rbs). The
# module's own methods carry their types inline in note_sections.rb.
module ProTacts
  module NoteSections
    class Section
      attr_reader label: String
      attr_reader text: String

      def self.new: (label: String, text: String) -> instance
    end

    class Split
      attr_reader member: String
      attr_reader sections: Array[Section]

      def self.new: (member: String, sections: Array[Section]) -> instance
    end
  end
end