OK, I'm pretty sure that the only thing that can display in the list are types where Workflow has a datahandler.
What you can try is the following:
1. Create a User Defined type integration library that "mirrors" the SearchResultCollection output. Creating this type will also generate a datahandler. Import this integration library into your project.
2. Select the type you just created as your output. If you don't see the type, try reloading the project.
3. At the end of your code for the Code(Script) component, after you have your SearchResultCollection, create a new empty list of your user-defined types. Loop through the SearchResultCollection and "map" into a new user-defined type, adding it to the list of types as you go through. Then return the array of user-defined types. Something similar to below (untested):
//
List<mytype> types = new List<mytype>();
foreach(SearchResult blah in mySearchResultCollection)
{
mytype t = new mytype();
t.field1 = blah.field1;
// etc.
types.Add(t);
}
return types.ToArray();
EDIT: I think you need to include the namespace of the user-defined comp you created to make this work as well... I haven't tested any of this out, but it's worth a shot.