<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def create_typed_target (self, type, project, name, sources, requirements, default_build, usage_requirements):
 """ Creates a TypedTarget with the specified properties. The 'name', 'sources', 'requirements', 'default_build' and 'usage_requirements' are assumed to be in the form specified by the user in Jamfile corresponding to 'project'. """

        assert isinstance(type, basestring)
        assert isinstance(project, ProjectTarget)
        assert is_iterable_typed(sources, basestring)
        assert is_iterable_typed(requirements, basestring)
        assert is_iterable_typed(default_build, basestring)
        return self.main_target_alternative (TypedTarget (name, project, type,
            self.main_target_sources (sources, name),
            self.main_target_requirements (requirements, project),
            self.main_target_default_build (default_build, project),
            self.main_target_usage_requirements (usage_requirements, project)))