You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: shape.rb
    path of file: ./repos/thinreports-generator/lib/thinreports/basic_report/core
    
    the code of the file until where you have to start completion: # frozen_string_literal: true

module Thinreports
  modu
    
        def self.find_by_type(type)
          case type
          when TextBlock::TYPE_NAME  then TextBlock
          when ImageBlock::TYPE_NAME then ImageBlock
          when List::TYPE_NAME       then List
          when StackView::TYPE_NAME  then StackView
          when Text::TYPE_NAME       then Text
          when PageNumber::TYPE_NAME then PageNumber
          when *Basic::TYPE_NAMES    then Basic
          else
            raise Thinreports::BasicReport::Errors::UnknownShapeType
          end