<?xml version="1.0" encoding="UTF-8"?>

<xs:schema xmlns:mule="http://www.mulesoft.org/schema/mule/core" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" targetNamespace="http://www.mulesoft.org/schema/mule/github">
  <xs:import namespace="http://www.w3.org/XML/1998/namespace"></xs:import>
  <xs:import schemaLocation="http://www.springframework.org/schema/beans/spring-beans-3.0.xsd" namespace="http://www.springframework.org/schema/beans"></xs:import>
  <xs:import schemaLocation="http://www.mulesoft.org/schema/mule/core/current/mule.xsd" namespace="http://www.mulesoft.org/schema/mule/core"></xs:import>
  <xs:import schemaLocation="http://www.mulesoft.org/schema/mule/devkit/current/mule-devkit.xsd" namespace="http://www.mulesoft.org/schema/mule/devkit"></xs:import>
  <xs:simpleType name="integerType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:integer"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="(\#\[[^\]]+\]|\$\{[^\}]+\})"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="decimalType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:decimal"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="(\#\[[^\]]+\]|\$\{[^\}]+\})"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="floatType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:float"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="(\#\[[^\]]+\]|\$\{[^\}]+\})"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="doubleType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:double"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="(\#\[[^\]]+\]|\$\{[^\}]+\})"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="dateTimeType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:dateTime"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="(\#\[[^\]]+\]|\$\{[^\}]+\})"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="longType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:long"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="(\#\[[^\]]+\]|\$\{[^\}]+\})"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="byteType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:byte"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="(\#\[[^\]]+\]|\$\{[^\}]+\})"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="booleanType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:boolean"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="(\#\[[^\]]+\]|\$\{[^\}]+\})"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="anyUriType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:anyURI"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="(\#\[[^\]]+\]|\$\{[^\}]+\})"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="charType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"></xs:minLength>
          <xs:maxLength value="1"></xs:maxLength>
        </xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="(\#\[[^\]]+\]|\$\{[^\}]+\})"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:complexType name="XmlType">
    <xs:sequence>
      <xs:any maxOccurs="unbounded" minOccurs="0" processContents="lax"></xs:any>
    </xs:sequence>
    <xs:attribute name="ref" use="optional" type="xs:string">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:element xmlns:devkit="http://www.mulesoft.org/schema/mule/devkit" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="config" substitutionGroup="mule:abstract-extension" devkit:javaClass="org.mule.modules.github.adapters.GitHubModuleLifecycleAdapter">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mule:abstractExtensionType">
          <xs:annotation>
            <xs:documentation>Generic module</xs:documentation>
          </xs:annotation>
          <xs:attribute name="name" use="optional" type="xs:string">
            <xs:annotation>
              <xs:documentation>Give a name to this configuration so it can be later referenced by config-ref.</xs:documentation>
            </xs:annotation>
          </xs:attribute>
          <xs:attribute name="user" use="required" type="xs:string">
            <xs:annotation>
              <xs:documentation>The user name</xs:documentation>
            </xs:annotation>
          </xs:attribute>
          <xs:attribute name="password" use="required" type="xs:string">
            <xs:annotation>
              <xs:documentation>The password</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-issues" substitutionGroup="mule:abstract-message-processor" type="GetIssuesType">
    <xs:annotation>
      <xs:documentation>Get a list of  objects that match the specified filter data
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetIssuesType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element name="filter-data" maxOccurs="1" minOccurs="0">
            <xs:annotation>
              <xs:documentation>data to filter issues, if non is specified all issues will be returned</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element name="filter-datum" maxOccurs="unbounded" minOccurs="0">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute name="value-ref" use="optional" type="xs:string"></xs:attribute>
                          <xs:attribute name="key" type="xs:string"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any maxOccurs="unbounded" minOccurs="0" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute name="ref" use="optional" type="xs:string">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the repostory name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-issues-creted-after" substitutionGroup="mule:abstract-message-processor" type="GetIssuesCretedAfterType">
    <xs:annotation>
      <xs:documentation>Custom processor
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetIssuesCretedAfterType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the repository name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="minutes" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>minutes</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-issues-since-number" substitutionGroup="mule:abstract-message-processor" type="GetIssuesSinceNumberType">
    <xs:annotation>
      <xs:documentation>Custom processor
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetIssuesSinceNumberType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the repository name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="fromIssueNumber" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>from issue number</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="create-issue" substitutionGroup="mule:abstract-message-processor" type="CreateIssueType">
    <xs:annotation>
      <xs:documentation>Creates a GitHub issue
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateIssueType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the repository name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="title" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the issues's title</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="body" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the issuess's body</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="assignee" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>optionally specify a asignee for the issue</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="close-issue" substitutionGroup="mule:abstract-message-processor" type="CloseIssueType">
    <xs:annotation>
      <xs:documentation>Closes a GitHub issue
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CloseIssueType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the repository name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="issueId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the issues's id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-issue" substitutionGroup="mule:abstract-message-processor" type="GetIssueType">
    <xs:annotation>
      <xs:documentation>Get the issue represented by the given issueId
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetIssueType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the repostory name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="issueId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the id of the issue</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-comments" substitutionGroup="mule:abstract-message-processor" type="GetCommentsType">
    <xs:annotation>
      <xs:documentation>Get an issue's comments
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetCommentsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the repostory name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="issueId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the id of the issue</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="create-comment" substitutionGroup="mule:abstract-message-processor" type="CreateCommentType">
    <xs:annotation>
      <xs:documentation>Create comment on specified issue id
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateCommentType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the repostory name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="issueId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the issue id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="comment" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the text of the comment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="edit-comment" substitutionGroup="mule:abstract-message-processor" type="EditCommentType">
    <xs:annotation>
      <xs:documentation>Edits the body of the comment represented by the given comment id
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="EditCommentType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the repostory name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="commentId" use="required" type="longType">
          <xs:annotation>
            <xs:documentation>the comment id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="body" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the new text of the comment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="delete-comment" substitutionGroup="mule:abstract-message-processor" type="DeleteCommentType">
    <xs:annotation>
      <xs:documentation>Delete the issue comment with the given id
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="DeleteCommentType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the repostory name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="commentId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the id of the comment to delete</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-issue-event" substitutionGroup="mule:abstract-message-processor" type="GetIssueEventType">
    <xs:annotation>
      <xs:documentation>Get issue event for repository
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetIssueEventType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the repostory name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="eventId" use="required" type="longType">
          <xs:annotation>
            <xs:documentation>the id of the event</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-watchers" substitutionGroup="mule:abstract-message-processor" type="GetWatchersType">
    <xs:annotation>
      <xs:documentation>Get users watching given repository
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetWatchersType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-watched" substitutionGroup="mule:abstract-message-processor" type="GetWatchedType">
    <xs:annotation>
      <xs:documentation>Get repositories watched by the given user
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetWatchedType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the user for which the get the watched repositories, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="is-watching" substitutionGroup="mule:abstract-message-processor" type="IsWatchingType">
    <xs:annotation>
      <xs:documentation>Is currently authenticated user watching given repository?
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="IsWatchingType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="watch" substitutionGroup="mule:abstract-message-processor" type="WatchType">
    <xs:annotation>
      <xs:documentation>Add currently authenticated user as a watcher of the given repository
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="WatchType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="unwatch" substitutionGroup="mule:abstract-message-processor" type="UnwatchType">
    <xs:annotation>
      <xs:documentation>Remove currently authenticated user as a watcher of the given repository
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="UnwatchType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-collaborators" substitutionGroup="mule:abstract-message-processor" type="GetCollaboratorsType">
    <xs:annotation>
      <xs:documentation>Returns the list of collaborators of the given repository
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetCollaboratorsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="is-collaborator" substitutionGroup="mule:abstract-message-processor" type="IsCollaboratorType">
    <xs:annotation>
      <xs:documentation>Returns whether the user is a collaborator of the given repository
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="IsCollaboratorType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the user to consult if it's a collaborator or not, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="add-collaborator" substitutionGroup="mule:abstract-message-processor" type="AddCollaboratorType">
    <xs:annotation>
      <xs:documentation>Adds a collaborator to the given repository
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="AddCollaboratorType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the user that's going to be added as a collaborator to the given repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="remove-collaborator" substitutionGroup="mule:abstract-message-processor" type="RemoveCollaboratorType">
    <xs:annotation>
      <xs:documentation>Removes a collaborator from the given repository
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RemoveCollaboratorType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the user that's going to be removed as a collaborator from the given repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-commits" substitutionGroup="mule:abstract-message-processor" type="GetCommitsType">
    <xs:annotation>
      <xs:documentation>Returns a list of the commits for a given repository
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetCommitsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-commits-by-sha" substitutionGroup="mule:abstract-message-processor" type="GetCommitsByShaType">
    <xs:annotation>
      <xs:documentation>Returns all commits in given repository beginning at an optional commit SHA-1
and affecting an optional path.
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetCommitsByShaType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="sha" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>an optional Sha or branch to start listing commits from</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="path" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>optional Only commits containing this file path will be returned</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-commit" substitutionGroup="mule:abstract-message-processor" type="GetCommitType">
    <xs:annotation>
      <xs:documentation>Returns a commit with given SHA-1 from given repository
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetCommitType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="sha" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>Sha from comment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-commmit-comments" substitutionGroup="mule:abstract-message-processor" type="GetCommmitCommentsType">
    <xs:annotation>
      <xs:documentation>Returns all comments on commit with given Sha
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetCommmitCommentsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="sha" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>Sha or branch to start listing commits comments from</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-comment" substitutionGroup="mule:abstract-message-processor" type="GetCommentType">
    <xs:annotation>
      <xs:documentation>Returns a comment from commit with the given id
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetCommentType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="commentId" use="required" type="longType">
          <xs:annotation>
            <xs:documentation>id from the comment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="add-comment" substitutionGroup="mule:abstract-message-processor" type="AddCommentType">
    <xs:annotation>
      <xs:documentation>Creates a commit comment
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="AddCommentType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="body" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>Body of the commit comment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="commitId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>Sha of the commit to comment on</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="line" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>line number in the file to comment on</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="path" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>relative path of the file to comment on</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="position" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>line index in the diff to comment on</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="edit-commit-comment" substitutionGroup="mule:abstract-message-processor" type="EditCommitCommentType">
    <xs:annotation>
      <xs:documentation>Edits a given comment
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="EditCommitCommentType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="body" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>Body of the commit comment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="commitId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>Sha of the commit to comment on</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="line" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>line number in the file to comment on</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="path" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>relative path of the file to comment on</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="position" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>line index in the diff to comment on</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="delete-commit-comment" substitutionGroup="mule:abstract-message-processor" type="DeleteCommitCommentType">
    <xs:annotation>
      <xs:documentation>Deletes the given comment
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="DeleteCommitCommentType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="commentId" use="required" type="longType">
          <xs:annotation>
            <xs:documentation>id from the comment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-deploy-keys" substitutionGroup="mule:abstract-message-processor" type="GetDeployKeysType">
    <xs:annotation>
      <xs:documentation>Returns all deploys keys associated with the given repository
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetDeployKeysType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-deploy-key" substitutionGroup="mule:abstract-message-processor" type="GetDeployKeyType">
    <xs:annotation>
      <xs:documentation>Returns the key that corresponds to the given id
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetDeployKeyType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the id of the key</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="create-deploy-key" substitutionGroup="mule:abstract-message-processor" type="CreateDeployKeyType">
    <xs:annotation>
      <xs:documentation>Returns a new deploy key
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateDeployKeyType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="title" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the title of the key</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="key" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>ssh key</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="edit-deploy-key" substitutionGroup="mule:abstract-message-processor" type="EditDeployKeyType">
    <xs:annotation>
      <xs:documentation>Edits a given deploy key
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="EditDeployKeyType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="title" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the title of the key</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="key" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>ssh key</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="delete-deploy-key" substitutionGroup="mule:abstract-message-processor" type="DeleteDeployKeyType">
    <xs:annotation>
      <xs:documentation>Deletes a deploy key given the given id
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="DeleteDeployKeyType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the id of the deploy key</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-download" substitutionGroup="mule:abstract-message-processor" type="GetDownloadType">
    <xs:annotation>
      <xs:documentation>Returns a single download given the provided id
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetDownloadType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the id of the download</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="delete-download" substitutionGroup="mule:abstract-message-processor" type="DeleteDownloadType">
    <xs:annotation>
      <xs:documentation>Deletes a download given the provided id
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="DeleteDownloadType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the id of the download</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="create-resource" substitutionGroup="mule:abstract-message-processor" type="CreateResourceType">
    <xs:annotation>
      <xs:documentation>Creates a new download resource
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateResourceType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="resourceName" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the resource</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="size" use="required" type="longType">
          <xs:annotation>
            <xs:documentation>Size of file in bytes.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="description" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>an optional description</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="contentType" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>an optional content type</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-gist" substitutionGroup="mule:abstract-message-processor" type="GetGistType">
    <xs:annotation>
      <xs:documentation>Returns the gist according to the given id
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetGistType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="id" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>id of the wanted gist</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-starred-gist" substitutionGroup="mule:abstract-message-processor" type="GetStarredGistType">
    <xs:annotation>
      <xs:documentation>Returns the starred gists for the currently authenticated user
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetStarredGistType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-gists" substitutionGroup="mule:abstract-message-processor" type="GetGistsType">
    <xs:annotation>
      <xs:documentation>Returns a list of gists for the specified user
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetGistsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>user of the gists, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="create-gist-comment" substitutionGroup="mule:abstract-message-processor" type="CreateGistCommentType">
    <xs:annotation>
      <xs:documentation>Creates a comment on the specified gist id
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateGistCommentType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="gistId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>id of the gist</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="comment" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>comment to create in the gist</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-gist-comments" substitutionGroup="mule:abstract-message-processor" type="GetGistCommentsType">
    <xs:annotation>
      <xs:documentation>Returns a list of comments for the given gist
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetGistCommentsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="gistId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>id of the gist</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="delete-gist" substitutionGroup="mule:abstract-message-processor" type="DeleteGistType">
    <xs:annotation>
      <xs:documentation>Deletes the given gist
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="DeleteGistType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="gistId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>id of the gist</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-gist-comment" substitutionGroup="mule:abstract-message-processor" type="GetGistCommentType">
    <xs:annotation>
      <xs:documentation>Returns the comment according to the given id
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetGistCommentType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="commentId" use="required" type="longType">
          <xs:annotation>
            <xs:documentation>id of the comment to be retrieved</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="delete-gist-comment" substitutionGroup="mule:abstract-message-processor" type="DeleteGistCommentType">
    <xs:annotation>
      <xs:documentation>Deletes the given comment
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="DeleteGistCommentType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="commentId" use="required" type="longType">
          <xs:annotation>
            <xs:documentation>id of the comment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="edit-gist-comment" substitutionGroup="mule:abstract-message-processor" type="EditGistCommentType">
    <xs:annotation>
      <xs:documentation>Updates the given comment
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="EditGistCommentType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="commentId" use="required" type="longType">
          <xs:annotation>
            <xs:documentation>id of the comment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="body" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>new body of the comment</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="star-gist" substitutionGroup="mule:abstract-message-processor" type="StarGistType">
    <xs:annotation>
      <xs:documentation>&lt;/p&gt;

&lt;p/&gt;
Star the gist with the given id</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="StarGistType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="gistId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>id of the gist to be starred</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="unstar-gist" substitutionGroup="mule:abstract-message-processor" type="UnstarGistType">
    <xs:annotation>
      <xs:documentation>&lt;/p&gt;

&lt;p/&gt;
Unstar the gist with the given id</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="UnstarGistType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="gistId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>id of the gist to be unstarred</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="is-starred" substitutionGroup="mule:abstract-message-processor" type="IsStarredType">
    <xs:annotation>
      <xs:documentation>Returns whether the gist is starred or not
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="IsStarredType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="gistId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>id of the gist</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="fork-gist" substitutionGroup="mule:abstract-message-processor" type="ForkGistType">
    <xs:annotation>
      <xs:documentation>Forks the given gist
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ForkGistType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="gistId" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>id of the gist to be forked</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-labels" substitutionGroup="mule:abstract-message-processor" type="GetLabelsType">
    <xs:annotation>
      <xs:documentation>Returns a list of labels for the given repository and user
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetLabelsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-label" substitutionGroup="mule:abstract-message-processor" type="GetLabelType">
    <xs:annotation>
      <xs:documentation>Returns a single label
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetLabelType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="label" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the label id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="delete-label" substitutionGroup="mule:abstract-message-processor" type="DeleteLabelType">
    <xs:annotation>
      <xs:documentation>Deletes the given label
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="DeleteLabelType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="label" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the label id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="create-label" substitutionGroup="mule:abstract-message-processor" type="CreateLabelType">
    <xs:annotation>
      <xs:documentation>Creates a new label
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateLabelType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the label</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="color" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the color of the label, a 6 character hex code, without a leading #</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-milestones" substitutionGroup="mule:abstract-message-processor" type="GetMilestonesType">
    <xs:annotation>
      <xs:documentation>Returns a list of milestones for the given repository
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetMilestonesType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="state" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>state of the milestone, open or closed</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-milestone" substitutionGroup="mule:abstract-message-processor" type="GetMilestoneType">
    <xs:annotation>
      <xs:documentation>Returns a single milestone
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetMilestoneType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="number" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>milestone number</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="delete-milestone" substitutionGroup="mule:abstract-message-processor" type="DeleteMilestoneType">
    <xs:annotation>
      <xs:documentation>Deletes a given milestone
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="DeleteMilestoneType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="number" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>number of the milestone</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="create-milestone" substitutionGroup="mule:abstract-message-processor" type="CreateMilestoneType">
    <xs:annotation>
      <xs:documentation>Creates a new milestone
&lt;/p&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateMilestoneType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository, leave empty to use</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="repository" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="title" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the title of the milestone</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="state" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the state of the milestone, open or closed,  by default is open</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="description" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the description of the milestone</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="dueOn" use="optional" type="dateTimeType">
          <xs:annotation>
            <xs:documentation>when the milestone is due</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-user-by-login-name" substitutionGroup="mule:abstract-message-processor" type="GetUserByLoginNameType">
    <xs:annotation>
      <xs:documentation>Get user with given login name
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetUserByLoginNameType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="loginName" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the login name of the user to look up</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-current-user" substitutionGroup="mule:abstract-message-processor" type="GetCurrentUserType">
    <xs:annotation>
      <xs:documentation>Get the currently authenticated user
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetCurrentUserType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="update-current-user" substitutionGroup="mule:abstract-message-processor" type="UpdateCurrentUserType">
    <xs:annotation>
      <xs:documentation>Updates the currently authenticated user using the given attributes. Only provide values for the attributes
you want to change.
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="UpdateCurrentUserType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>a the name for the current user</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="email" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>a publicly visibile email address for the current user</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="blog" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>a blog for the current user</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="company" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>a company for the current user</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="location" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>a location for the current user</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="hireable" use="optional" type="booleanType">
          <xs:annotation>
            <xs:documentation>whether the current user is hireable</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-followers" substitutionGroup="mule:abstract-message-processor" type="GetFollowersType">
    <xs:annotation>
      <xs:documentation>Returns a list of followers for given user, if no one is provided the current authenticated user will be used
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetFollowersType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the user for which to get the followers, leave empty to use current user</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-following" substitutionGroup="mule:abstract-message-processor" type="GetFollowingType">
    <xs:annotation>
      <xs:documentation>Returns a list users following the given user, if no one is provided the current authenticated user will be used
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetFollowingType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the user for which to get who is following, leave empty to use current user</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="is-following" substitutionGroup="mule:abstract-message-processor" type="IsFollowingType">
    <xs:annotation>
      <xs:documentation>Returns wether the authenticated user is following the given user
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="IsFollowingType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the user to check</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="follow" substitutionGroup="mule:abstract-message-processor" type="FollowType">
    <xs:annotation>
      <xs:documentation>Make the currently authenticated user follow the given user
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="FollowType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the user to follow</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="unfollow" substitutionGroup="mule:abstract-message-processor" type="UnfollowType">
    <xs:annotation>
      <xs:documentation>Make the currently authenticated user unfollow the given user
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="UnfollowType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the user to unfollow</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-emails" substitutionGroup="mule:abstract-message-processor" type="GetEmailsType">
    <xs:annotation>
      <xs:documentation>Get all e-mail addresses for the currently authenticated user
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetEmailsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="add-emails" substitutionGroup="mule:abstract-message-processor" type="AddEmailsType">
    <xs:annotation>
      <xs:documentation>Add one or more e-mail addresses to the currently authenticated user's account
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="AddEmailsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element name="emails" maxOccurs="1" minOccurs="1">
            <xs:annotation>
              <xs:documentation>the email addresses to add</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:sequence>
                <xs:element name="email" maxOccurs="unbounded" minOccurs="0">
                  <xs:complexType>
                    <xs:simpleContent>
                      <xs:extension base="xs:string">
                        <xs:attribute name="value-ref" use="optional" type="xs:string"></xs:attribute>
                      </xs:extension>
                    </xs:simpleContent>
                  </xs:complexType>
                </xs:element>
              </xs:sequence>
              <xs:attribute name="ref" use="optional" type="xs:string">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="remove-emails" substitutionGroup="mule:abstract-message-processor" type="RemoveEmailsType">
    <xs:annotation>
      <xs:documentation>Removes one or more e-mail addresses to the currently authenticated user's account
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RemoveEmailsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element name="emails" maxOccurs="1" minOccurs="1">
            <xs:annotation>
              <xs:documentation>the email addresses to add</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:sequence>
                <xs:element name="email" maxOccurs="unbounded" minOccurs="0">
                  <xs:complexType>
                    <xs:simpleContent>
                      <xs:extension base="xs:string">
                        <xs:attribute name="value-ref" use="optional" type="xs:string"></xs:attribute>
                      </xs:extension>
                    </xs:simpleContent>
                  </xs:complexType>
                </xs:element>
              </xs:sequence>
              <xs:attribute name="ref" use="optional" type="xs:string">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-keys" substitutionGroup="mule:abstract-message-processor" type="GetKeysType">
    <xs:annotation>
      <xs:documentation>Get all public keys for currently authenticated user
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetKeysType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-key" substitutionGroup="mule:abstract-message-processor" type="GetKeyType">
    <xs:annotation>
      <xs:documentation>Get key with given id
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetKeyType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the id of the key of obtain</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="create-key" substitutionGroup="mule:abstract-message-processor" type="CreateKeyType">
    <xs:annotation>
      <xs:documentation>Create key for currently authenticated user
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateKeyType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="title" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the title of the new key</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="key" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the new key</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="edit-key" substitutionGroup="mule:abstract-message-processor" type="EditKeyType">
    <xs:annotation>
      <xs:documentation>Edit key for currently authenticated user
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="EditKeyType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="keyId" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the id of the key to edit</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="title" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>a new title for the key</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="key" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>a new key</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="delete-key" substitutionGroup="mule:abstract-message-processor" type="DeleteKeyType">
    <xs:annotation>
      <xs:documentation>Delete key with given id
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="DeleteKeyType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the id of the key to delete</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-team" substitutionGroup="mule:abstract-message-processor" type="GetTeamType">
    <xs:annotation>
      <xs:documentation>Get team with given id
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetTeamType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the id of the team</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-teams-for-org" substitutionGroup="mule:abstract-message-processor" type="GetTeamsForOrgType">
    <xs:annotation>
      <xs:documentation>Get all teams in the given organization
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetTeamsForOrgType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="organization" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the organization for which te get the teams associated with</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="create-team" substitutionGroup="mule:abstract-message-processor" type="CreateTeamType">
    <xs:annotation>
      <xs:documentation>Create the given team
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateTeamType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element name="repo-names" maxOccurs="1" minOccurs="0">
            <xs:annotation>
              <xs:documentation>the associated repository names</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:sequence>
                <xs:element name="repo-name" maxOccurs="unbounded" minOccurs="0">
                  <xs:complexType>
                    <xs:simpleContent>
                      <xs:extension base="xs:string">
                        <xs:attribute name="value-ref" use="optional" type="xs:string"></xs:attribute>
                      </xs:extension>
                    </xs:simpleContent>
                  </xs:complexType>
                </xs:element>
              </xs:sequence>
              <xs:attribute name="ref" use="optional" type="xs:string">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="organization" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the organization</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="teamName" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the team name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="teamPermission" default="PULL" use="optional" type="TeamPermissionEnumType">
          <xs:annotation>
            <xs:documentation>the team's</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="edit-team" substitutionGroup="mule:abstract-message-processor" type="EditTeamType">
    <xs:annotation>
      <xs:documentation>Edit the given team. Only provide values for the attributes you want to update.
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="EditTeamType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the id of the team to edit</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>the new name of the team</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="teamPermission" use="optional" type="TeamPermissionEnumType">
          <xs:annotation>
            <xs:documentation>the new  for the team</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="delete-team" substitutionGroup="mule:abstract-message-processor" type="DeleteTeamType">
    <xs:annotation>
      <xs:documentation>Delete the team with the given id
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="DeleteTeamType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the id of the team to delete.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-team-members" substitutionGroup="mule:abstract-message-processor" type="GetTeamMembersType">
    <xs:annotation>
      <xs:documentation>Get members of team with given id
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetTeamMembersType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the team id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="is-team-member" substitutionGroup="mule:abstract-message-processor" type="IsTeamMemberType">
    <xs:annotation>
      <xs:documentation>Is the given user a member of the team with the given id
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="IsTeamMemberType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the team id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the user name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="add-team-member" substitutionGroup="mule:abstract-message-processor" type="AddTeamMemberType">
    <xs:annotation>
      <xs:documentation>Add given user to team with given id
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="AddTeamMemberType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the team id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the user name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="remove-team-member" substitutionGroup="mule:abstract-message-processor" type="RemoveTeamMemberType">
    <xs:annotation>
      <xs:documentation>Remove given user from team with given id
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RemoveTeamMemberType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the team id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the user name</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-team-repositories" substitutionGroup="mule:abstract-message-processor" type="GetTeamRepositoriesType">
    <xs:annotation>
      <xs:documentation>Get all repositories for given team
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetTeamRepositoriesType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the team id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="add-team-repository" substitutionGroup="mule:abstract-message-processor" type="AddTeamRepositoryType">
    <xs:annotation>
      <xs:documentation>Add repository to team
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="AddTeamRepositoryType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the team id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="remove-team-repository" substitutionGroup="mule:abstract-message-processor" type="RemoveTeamRepositoryType">
    <xs:annotation>
      <xs:documentation>Remove repository from team
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RemoveTeamRepositoryType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="id" use="required" type="integerType">
          <xs:annotation>
            <xs:documentation>the team id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-repositories" substitutionGroup="mule:abstract-message-processor" type="GetRepositoriesType">
    <xs:annotation>
      <xs:documentation>Get repositories for the currently authenticated user
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetRepositoriesType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element name="filter-data" maxOccurs="1" minOccurs="0">
            <xs:annotation>
              <xs:documentation>data to filter repos, if non is specified all repos will be returned</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element name="filter-datum" maxOccurs="unbounded" minOccurs="0">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute name="value-ref" use="optional" type="xs:string"></xs:attribute>
                          <xs:attribute name="key" type="xs:string"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any maxOccurs="unbounded" minOccurs="0" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute name="ref" use="optional" type="xs:string">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-repositories-for-user" substitutionGroup="mule:abstract-message-processor" type="GetRepositoriesForUserType">
    <xs:annotation>
      <xs:documentation>Get repositories for the given user
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetRepositoriesForUserType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="user" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the user for which to get the repositories for</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-org-repositories" substitutionGroup="mule:abstract-message-processor" type="GetOrgRepositoriesType">
    <xs:annotation>
      <xs:documentation>Get organization repositories for the given organization
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetOrgRepositoriesType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element name="filter-data" maxOccurs="1" minOccurs="0">
            <xs:annotation>
              <xs:documentation>data to filter repos, if non is specified all repos will be returned</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element name="filter-datum" maxOccurs="unbounded" minOccurs="0">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute name="value-ref" use="optional" type="xs:string"></xs:attribute>
                          <xs:attribute name="key" type="xs:string"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any maxOccurs="unbounded" minOccurs="0" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute name="ref" use="optional" type="xs:string">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="organization" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the organization for which to get the repositories for</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="create-repository" substitutionGroup="mule:abstract-message-processor" type="CreateRepositoryType">
    <xs:annotation>
      <xs:documentation>Create a new repository
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateRepositoryType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the new repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="description" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>a description for the new repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="isPrivate" default="false" use="optional" type="booleanType">
          <xs:annotation>
            <xs:documentation>true to create a private repository, false to create a public one. Creating private repositories requires a paid GitHub account. Default is false.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="hasIssues" default="true" use="optional" type="booleanType">
          <xs:annotation>
            <xs:documentation>true to enable issues for this repository, false to disable them. Default is true.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="hasWiki" default="true" use="optional" type="booleanType">
          <xs:annotation>
            <xs:documentation>true to enable the wiki for this repository, false to disable it. Default is true.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="hasDownloads" default="true" use="optional" type="booleanType">
          <xs:annotation>
            <xs:documentation>true to enable downloads for this repository, false to disable them. Default is true.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="create-repository-for-org" substitutionGroup="mule:abstract-message-processor" type="CreateRepositoryForOrgType">
    <xs:annotation>
      <xs:documentation>Create a new repository for the given organization
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateRepositoryForOrgType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="organization" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the organization for the new repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the new repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="description" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>a description for the new repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="isPrivate" default="false" use="optional" type="booleanType">
          <xs:annotation>
            <xs:documentation>true to create a private repository, false to create a public one. Creating private repositories requires a paid GitHub account. Default is false.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="hasIssues" default="true" use="optional" type="booleanType">
          <xs:annotation>
            <xs:documentation>true to enable issues for this repository, false to disable them. Default is true.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="hasWiki" default="true" use="optional" type="booleanType">
          <xs:annotation>
            <xs:documentation>true to enable the wiki for this repository, false to disable it. Default is true.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="hasDownloads" default="true" use="optional" type="booleanType">
          <xs:annotation>
            <xs:documentation>true to enable downloads for this repository, false to disable them. Default is true.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-repository" substitutionGroup="mule:abstract-message-processor" type="GetRepositoryType">
    <xs:annotation>
      <xs:documentation>Get repository
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetRepositoryType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the user that owns the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="edit-repository" substitutionGroup="mule:abstract-message-processor" type="EditRepositoryType">
    <xs:annotation>
      <xs:documentation>Edit given repository. Only provide values for the attributes you need to change.
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="EditRepositoryType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="description" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>a new description for the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="isPrivate" use="optional" type="booleanType">
          <xs:annotation>
            <xs:documentation>true to turn it into a private repository, false to make it public. Private repositories require a paid GitHub account.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="hasIssues" use="optional" type="booleanType">
          <xs:annotation>
            <xs:documentation>true to enable issues for this repository, false to disable them.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="hasWiki" use="optional" type="booleanType">
          <xs:annotation>
            <xs:documentation>true to enable the wiki for this repository, false to disable it.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="hasDownloads" use="optional" type="booleanType">
          <xs:annotation>
            <xs:documentation>true to enable downloads for this repository, false to disable them.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-forks" substitutionGroup="mule:abstract-message-processor" type="GetForksType">
    <xs:annotation>
      <xs:documentation>Get all the forks of the given repository
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetForksType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="fork-repository" substitutionGroup="mule:abstract-message-processor" type="ForkRepositoryType">
    <xs:annotation>
      <xs:documentation>Fork given repository into new repository under the currently
authenticated user.
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ForkRepositoryType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="fork-repository-for-org" substitutionGroup="mule:abstract-message-processor" type="ForkRepositoryForOrgType">
    <xs:annotation>
      <xs:documentation>Fork given repository into new repository.
&lt;p/&gt;
The new repository will be under the given organization if non-null, else
it will be under the currently authenticated user.
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ForkRepositoryForOrgType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="organization" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the organization where the new repository will be</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-languages" substitutionGroup="mule:abstract-message-processor" type="GetLanguagesType">
    <xs:annotation>
      <xs:documentation>Get languages used in given repository
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetLanguagesType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-branches" substitutionGroup="mule:abstract-message-processor" type="GetBranchesType">
    <xs:annotation>
      <xs:documentation>Get branches in given repository
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetBranchesType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-tags" substitutionGroup="mule:abstract-message-processor" type="GetTagsType">
    <xs:annotation>
      <xs:documentation>Get tags in given repository
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetTagsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/github" xmlns:mule="http://www.mulesoft.org/schema/mule/core" name="get-contributors" substitutionGroup="mule:abstract-message-processor" type="GetContributorsType">
    <xs:annotation>
      <xs:documentation>Get contributors to repository
&lt;p/&gt;</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="GetContributorsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute name="config-ref" use="optional" type="xs:string">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="owner" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the owner of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="name" use="required" type="xs:string">
          <xs:annotation>
            <xs:documentation>the name of the repository</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/github" name="includeAnonymous" default="false" use="optional" type="booleanType">
          <xs:annotation>
            <xs:documentation>whether to include anonymus contributors</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:simpleType name="TeamPermissionEnumType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="PULL"></xs:enumeration>
          <xs:enumeration value="PUSH"></xs:enumeration>
          <xs:enumeration value="ADMIN"></xs:enumeration>
        </xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="\#\[[^\]]+\]"></xs:pattern>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
</xs:schema>