Returns the operation type ('query', 'mutation', 'subscription' or None)
        for the given operation_name.
        If no operation_name is provided (and only one operation exists) it will return the
        operation type for that operation

def get_operation_type(self, operation_name):
        # type: (Optional[str]) -> Optional[str]
        """
        Returns the operation type ('query', 'mutation', 'subscription' or None)
        for the given operation_name.
        If no operation_name is provided (and only one operation exists) it will return the
        operation type for that operation
        """
        operations_map = self.operations_map
        if not operation_name and len(operations_map) == 1:
            return next(iter(operations_map.values()))
        return operations_map.get(operation_name)