@staticmethod
def search_for_items(document, selection_objects):
    """

        # todo: This search is currently restricted to GSD objects only.

        Selection objects is a list of items to search for.
        Example: selection_objects = ['Point', 'Line']

        Example query string to search for all lines and points
        "('Generative Shape Design'.Point + 'Generative Shape Design'.Line),in"

        :param document:
        :param list selection_objects:
        :return Selected Automation Object:
        """
    gsd_items = ['Point', 'Line']
    query_string = str()
    for counter, item in enumerate(selection_objects):
        boolean = str()
        if counter > 0 and not counter == len(selection_objects):
            boolean = ' + '
        if item in gsd_items:
            query_string = (
                f"{query_string}{boolean}'Generative Shape Design'.{item}")
    query_string = f'({query_string}),in'
    selection = document.document.Selection
    selection.Search(query_string)
    selected = list()
    for i in range(0, selection.Count):
        selected.append(selection.Item(i + 1).Value)
    return selected
