Seems Xcode reference the wrong type of attribute, use the type of OC header definition instead of Swift definition

When I make an extension of UITextField, and add func like this

    @discardableResult public func typingAttributes(_ typingAttributes: [NSAttributedString.Key : Any]?) -> StyleObject {
        base.typingAttributes = typingAttributes
        return self
    }

compile error occur

(93, 33) Cannot assign value of type '[NSAttributedString.Key : Any]?' to type '[String : Any]?'

and when I use Jump To Definition, Xcode jump to the OC header of UITextField, not UITextField.swift

I see the Swift definition in the file


    @available(iOS 7.0, *)
    open var defaultTextAttributes: [NSAttributedString.Key : Any] // applies attributes to the full range of text. Unset attributes act like default values.

why did this happen?

I'm using Xcode 13.2.1, macOS 12.0.1

Xcode 13.4.1 have the same issue.