search: Use proper typing for search suggestions
Created by: camdencheek
Since search suggestions store all the resolver types in a nameless interface{}
type, and panic if an unsupported type is used, making a change to those types isn't validated by static analysis. We can add some tests to help with this, but ideally, we'd refactor a bit to make the search result resolver more statically typed. This contributed to the issues fixed by #18619