@spotify/backstage-plugin-soundcheck-backend-module-github 0.1.2 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,27 @@
1
1
  # @spotify/backstage-plugin-soundcheck-backend-module-github
2
2
 
3
+ ## 0.2.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Added support for Soundcheck's No-Code UI.
8
+
9
+ ### Patch Changes
10
+
11
+ - Upgraded Backstage to `v1.16.0`
12
+ - Updated dependencies
13
+ - @spotify/backstage-plugin-soundcheck-common@0.7.0
14
+ - @spotify/backstage-plugin-soundcheck-node@0.3.0
15
+
16
+ ## 0.1.3
17
+
18
+ ### Patch Changes
19
+
20
+ - Upgraded to Backstage `v1.15.0`
21
+ - Updated dependencies
22
+ - @spotify/backstage-plugin-soundcheck-common@0.6.0
23
+ - @spotify/backstage-plugin-soundcheck-node@0.2.3
24
+
3
25
  ## 0.1.2
4
26
 
5
27
  ### Patch Changes
package/dist/index.cjs.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var o=require("@spotify/backstage-plugin-soundcheck-common"),me=require("@backstage/catalog-model"),ge=require("@octokit/request-error"),_e=require("@octokit/rest"),K=require("@backstage/integration"),u=require("zod"),he=require("@backstage/errors"),ye=require("git-url-parse");function de(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var be=de(ye),fe=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)},b=(e,t,r)=>(fe(e,t,"read from private field"),r?r.call(e):t.get(e)),xe=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r)},c;function Z(e){return`Extractor with type '${e}' is not allowed. You may need to update collectors configuration at 'soundcheck.collectors.github'`}class ve{constructor(){xe(this,c,[])}register(t){b(this,c).push(t)}async extract(t,r,s){for(const{predicate:i,extractor:p}of b(this,c))if(i(t))return p.extract(t,r,s);throw new Error(Z(t.type))}getDataSchema(t){for(const{predicate:r,extractor:s}of b(this,c))if(r(t))return s.getDataSchema(t);throw new Error(Z(t.type))}toString(){return`predicateMux{extractors=${b(this,c).map(t=>t.extractor).join(",")}`}}c=new WeakMap;class we{static create(t){const{logger:r,branchHelper:s,factories:i}=t,p=new ve;for(const q of i!=null?i:[]){const k=q({logger:r,branchHelper:s});p.register(k)}return p}}var Te="Branch Protection",We="Branch Protection",Ee="object",He={url:{type:"string"},enabled:{type:"boolean"},required_status_checks:{title:"Protected Branch Required Status Check",description:"Protected Branch Required Status Check",type:"object",properties:{url:{type:"string"},enforcement_level:{type:"string"},contexts:{type:"array",items:{type:"string"}},checks:{type:"array",items:{type:"object",properties:{context:{type:"string"},app_id:{type:["integer","null"]}},required:["context","app_id"]}},contexts_url:{type:"string"},strict:{type:"boolean"}},required:["contexts","checks"]},enforce_admins:{title:"Protected Branch Admin Enforced",description:"Protected Branch Admin Enforced",type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World/branches/master/protection/enforce_admins"]},enabled:{type:"boolean",examples:[!0]}},required:["url","enabled"]},required_pull_request_reviews:{title:"Protected Branch Pull Request Review",description:"Protected Branch Pull Request Review",type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World/branches/master/protection/dismissal_restrictions"]},dismissal_restrictions:{type:"object",properties:{users:{description:"The list of users with review dismissal access.",type:"array",items:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}},teams:{description:"The list of teams with review dismissal access.",type:"array",items:{title:"Team",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},slug:{type:"string"},description:{type:["string","null"]},privacy:{type:"string"},notification_setting:{type:"string"},permission:{type:"string"},permissions:{type:"object",properties:{pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"},admin:{type:"boolean"}},required:["pull","triage","push","maintain","admin"]},url:{type:"string",format:"uri"},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},members_url:{type:"string"},repositories_url:{type:"string",format:"uri"},parent:{anyOf:[{type:"null"},{title:"Team Simple",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{description:"Unique identifier of the team",type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VGVhbTE="]},url:{description:"URL for the team",type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1"]},members_url:{type:"string",examples:["https://api.github.com/organizations/1/team/1/members{/member}"]},name:{description:"Name of the team",type:"string",examples:["Justice League"]},description:{description:"Description of the team",type:["string","null"],examples:["A great team."]},permission:{description:"Permission that the team will have for its repositories",type:"string",examples:["admin"]},privacy:{description:"The level of privacy this team should have",type:"string",examples:["closed"]},notification_setting:{description:"The notification setting the team has set",type:"string",examples:["notifications_enabled"]},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},repositories_url:{type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1/repos"]},slug:{type:"string",examples:["justice-league"]},ldap_dn:{description:"Distinguished Name (DN) that team maps to within LDAP environment",type:"string",examples:["uid=example,ou=users,dc=github,dc=com"]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug"]}]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug","parent"]}},apps:{description:"The list of apps with review dismissal access.",type:"array",items:{title:"GitHub app",description:"GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.",type:"object",properties:{id:{description:"Unique identifier of the GitHub app",type:"integer",examples:[37]},slug:{description:"The slug name of the GitHub app",type:"string",examples:["probot-owners"]},node_id:{type:"string",examples:["MDExOkludGVncmF0aW9uMQ=="]},owner:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},name:{description:"The name of the GitHub app",type:"string",examples:["Probot Owners"]},description:{type:["string","null"],examples:["The description of the app."]},external_url:{type:"string",format:"uri",examples:["https://example.com"]},html_url:{type:"string",format:"uri",examples:["https://github.com/apps/super-ci"]},created_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},updated_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},permissions:{description:"The set of permissions for the GitHub app",type:"object",properties:{issues:{type:"string"},checks:{type:"string"},metadata:{type:"string"},contents:{type:"string"},deployments:{type:"string"}},additionalProperties:{type:"string"},example:{issues:"read",deployments:"write"}},events:{description:"The list of events for the GitHub app",type:"array",items:{type:"string"},examples:["label","deployment"]},installations_count:{description:"The number of installations associated with the GitHub app",type:"integer",examples:[5]},client_id:{type:"string",examples:['"Iv1.25b5d1e65ffc4022"']},client_secret:{type:"string",examples:['"1d4b2097ac622ba702d19de498f005747a8b21d3"']},webhook_secret:{type:["string","null"],examples:['"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b"']},pem:{type:"string",examples:['"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n"']}},required:["id","node_id","owner","name","description","external_url","html_url","created_at","updated_at","permissions","events"]}},url:{type:"string",examples:['"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions"']},users_url:{type:"string",examples:['"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/users"']},teams_url:{type:"string",examples:['"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/teams"']}}},bypass_pull_request_allowances:{type:"object",description:"Allow specific users, teams, or apps to bypass pull request requirements.",properties:{users:{description:"The list of users allowed to bypass pull request requirements.",type:"array",items:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}},teams:{description:"The list of teams allowed to bypass pull request requirements.",type:"array",items:{title:"Team",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},slug:{type:"string"},description:{type:["string","null"]},privacy:{type:"string"},notification_setting:{type:"string"},permission:{type:"string"},permissions:{type:"object",properties:{pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"},admin:{type:"boolean"}},required:["pull","triage","push","maintain","admin"]},url:{type:"string",format:"uri"},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},members_url:{type:"string"},repositories_url:{type:"string",format:"uri"},parent:{anyOf:[{type:"null"},{title:"Team Simple",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{description:"Unique identifier of the team",type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VGVhbTE="]},url:{description:"URL for the team",type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1"]},members_url:{type:"string",examples:["https://api.github.com/organizations/1/team/1/members{/member}"]},name:{description:"Name of the team",type:"string",examples:["Justice League"]},description:{description:"Description of the team",type:["string","null"],examples:["A great team."]},permission:{description:"Permission that the team will have for its repositories",type:"string",examples:["admin"]},privacy:{description:"The level of privacy this team should have",type:"string",examples:["closed"]},notification_setting:{description:"The notification setting the team has set",type:"string",examples:["notifications_enabled"]},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},repositories_url:{type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1/repos"]},slug:{type:"string",examples:["justice-league"]},ldap_dn:{description:"Distinguished Name (DN) that team maps to within LDAP environment",type:"string",examples:["uid=example,ou=users,dc=github,dc=com"]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug"]}]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug","parent"]}},apps:{description:"The list of apps allowed to bypass pull request requirements.",type:"array",items:{title:"GitHub app",description:"GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.",type:"object",properties:{id:{description:"Unique identifier of the GitHub app",type:"integer",examples:[37]},slug:{description:"The slug name of the GitHub app",type:"string",examples:["probot-owners"]},node_id:{type:"string",examples:["MDExOkludGVncmF0aW9uMQ=="]},owner:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},name:{description:"The name of the GitHub app",type:"string",examples:["Probot Owners"]},description:{type:["string","null"],examples:["The description of the app."]},external_url:{type:"string",format:"uri",examples:["https://example.com"]},html_url:{type:"string",format:"uri",examples:["https://github.com/apps/super-ci"]},created_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},updated_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},permissions:{description:"The set of permissions for the GitHub app",type:"object",properties:{issues:{type:"string"},checks:{type:"string"},metadata:{type:"string"},contents:{type:"string"},deployments:{type:"string"}},additionalProperties:{type:"string"},example:{issues:"read",deployments:"write"}},events:{description:"The list of events for the GitHub app",type:"array",items:{type:"string"},examples:["label","deployment"]},installations_count:{description:"The number of installations associated with the GitHub app",type:"integer",examples:[5]},client_id:{type:"string",examples:['"Iv1.25b5d1e65ffc4022"']},client_secret:{type:"string",examples:['"1d4b2097ac622ba702d19de498f005747a8b21d3"']},webhook_secret:{type:["string","null"],examples:['"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b"']},pem:{type:"string",examples:['"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n"']}},required:["id","node_id","owner","name","description","external_url","html_url","created_at","updated_at","permissions","events"]}}}},dismiss_stale_reviews:{type:"boolean",examples:[!0]},require_code_owner_reviews:{type:"boolean",examples:[!0]},required_approving_review_count:{type:"integer",minimum:0,maximum:6,examples:[2]},require_last_push_approval:{description:"Whether the most recent push must be approved by someone other than the person who pushed it.",type:"boolean",default:!1,examples:[!0]}},required:["dismiss_stale_reviews","require_code_owner_reviews"]},restrictions:{title:"Branch Restriction Policy",description:"Branch Restriction Policy",type:"object",properties:{url:{type:"string",format:"uri"},users_url:{type:"string",format:"uri"},teams_url:{type:"string",format:"uri"},apps_url:{type:"string",format:"uri"},users:{type:"array",items:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}}},teams:{type:"array",items:{type:"object",properties:{id:{type:"integer"},node_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},name:{type:"string"},slug:{type:"string"},description:{type:["string","null"]},privacy:{type:"string"},notification_setting:{type:"string"},permission:{type:"string"},members_url:{type:"string"},repositories_url:{type:"string"},parent:{type:["string","null"]}}}},apps:{type:"array",items:{type:"object",properties:{id:{type:"integer"},slug:{type:"string"},node_id:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},hooks_url:{type:"string"},issues_url:{type:"string"},members_url:{type:"string"},public_members_url:{type:"string"},avatar_url:{type:"string"},description:{type:"string"},gravatar_id:{type:"string",examples:['""']},html_url:{type:"string",examples:['"https://github.com/testorg-ea8ec76d71c3af4b"']},followers_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers"']},following_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}"']},gists_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}"']},starred_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}"']},subscriptions_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions"']},organizations_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs"']},received_events_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events"']},type:{type:"string",examples:['"Organization"']},site_admin:{type:"boolean",examples:[!1]}}},name:{type:"string"},description:{type:"string"},external_url:{type:"string"},html_url:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{metadata:{type:"string"},contents:{type:"string"},issues:{type:"string"},single_file:{type:"string"}}},events:{type:"array",items:{type:"string"}}}}}},required:["url","users_url","teams_url","apps_url","users","teams","apps"]},required_linear_history:{type:"object",properties:{enabled:{type:"boolean"}}},allow_force_pushes:{type:"object",properties:{enabled:{type:"boolean"}}},allow_deletions:{type:"object",properties:{enabled:{type:"boolean"}}},block_creations:{type:"object",properties:{enabled:{type:"boolean"}}},required_conversation_resolution:{type:"object",properties:{enabled:{type:"boolean"}}},name:{type:"string",examples:['"branch/with/protection"']},protection_url:{type:"string",examples:['"https://api.github.com/repos/owner-79e94e2d36b3fd06a32bb213/AAA_Public_Repo/branches/branch/with/protection/protection"']},required_signatures:{type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures"]},enabled:{type:"boolean",examples:[!0]}},required:["url","enabled"]},lock_branch:{type:"object",description:"Whether to set the branch as read-only. If this is true, users will not be able to push to the branch.",properties:{enabled:{default:!1,type:"boolean"}}},allow_fork_syncing:{type:"object",description:"Whether users can pull changes from upstream when the branch is locked. Set to `true` to allow fork syncing. Set to `false` to prevent fork syncing.",properties:{enabled:{default:!1,type:"boolean"}}}},qe={title:Te,description:We,type:Ee,properties:He},R=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)},U=(e,t,r)=>(R(e,t,"read from private field"),r?r.call(e):t.get(e)),M=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r)},Y=(e,t,r,s)=>(R(e,t,"write to private field"),s?s.call(e,r):t.set(e,r),r),ke=(e,t,r)=>(R(e,t,"access private method"),r),f,x,S,Q;const J=class{constructor(e,t){M(this,S),M(this,f,void 0),M(this,x,void 0),Y(this,f,e),Y(this,x,t)}async extract(e,t,r){const s={owner:t.owner,repo:t.name,branch:await ke(this,S,Q).call(this,e,t,r)};try{return(await r.rest.repos.getBranchProtection(s)).data}catch(i){if(i instanceof ge.RequestError&&i.status===404)return{};U(this,f).error(`[BranchProtections] fact extraction failed with: ${i}. Request parameters: ${JSON.stringify(s)}`);return}}getDataSchema(e){return JSON.stringify(qe)}};let V=J;f=new WeakMap,x=new WeakMap,S=new WeakSet,Q=async function(e,t,r){return e.branch?e.branch:U(this,x).getDefaultBranch(t,r)},V.factory=({logger:e,branchHelper:t})=>{const r=new J(e,t);return{predicate:s=>s.type==="BranchProtections",extractor:r}};var Re="Full Repository",Me="Full Repository",Se="object",Pe={id:{type:"integer",examples:[1296269]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{type:"string",examples:["Hello-World"]},full_name:{type:"string",examples:["octocat/Hello-World"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"},examples:["octocat","atom","electron","API"]},has_issues:{type:"boolean",examples:[!0]},has_projects:{type:"boolean",examples:[!0]},has_wiki:{type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{type:"boolean",examples:[!0]},has_discussions:{type:"boolean",examples:[!0]},archived:{type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",type:"string",examples:["public"]},pushed_at:{type:"string",format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:"string",format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:"string",format:"date-time",examples:["2011-01-26T19:14:43Z"]},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}},required:["admin","pull","push"]},allow_rebase_merge:{type:"boolean",examples:[!0]},template_repository:{anyOf:[{type:"null"},{title:"Repository",description:"A repository on GitHub.",type:"object",properties:{id:{description:"Unique identifier of the repository",type:"integer",examples:[42]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{description:"The name of the repository.",type:"string",examples:["Team Environment"]},full_name:{type:"string",examples:["octocat/Hello-World"]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},forks:{type:"integer"},permissions:{type:"object",properties:{admin:{type:"boolean"},pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"}},required:["admin","pull","push"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{description:"Whether the repository is private or public.",default:!1,type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{description:"The default branch of the repository.",type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{description:"Whether this repository acts as a template that can be used to generate new repositories.",default:!1,type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"}},has_issues:{description:"Whether issues are enabled.",default:!0,type:"boolean",examples:[!0]},has_projects:{description:"Whether projects are enabled.",default:!0,type:"boolean",examples:[!0]},has_wiki:{description:"Whether the wiki is enabled.",default:!0,type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{description:"Whether downloads are enabled.",default:!0,type:"boolean",examples:[!0]},has_discussions:{description:"Whether discussions are enabled.",default:!1,type:"boolean",examples:[!0]},archived:{description:"Whether the repository is archived.",default:!1,type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",default:"public",type:"string"},pushed_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:14:43Z"]},allow_rebase_merge:{description:"Whether to allow rebase merges for pull requests.",default:!0,type:"boolean",examples:[!0]},template_repository:{type:["object","null"],properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},full_name:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}},private:{type:"boolean"},html_url:{type:"string"},description:{type:"string"},fork:{type:"boolean"},url:{type:"string"},archive_url:{type:"string"},assignees_url:{type:"string"},blobs_url:{type:"string"},branches_url:{type:"string"},collaborators_url:{type:"string"},comments_url:{type:"string"},commits_url:{type:"string"},compare_url:{type:"string"},contents_url:{type:"string"},contributors_url:{type:"string"},deployments_url:{type:"string"},downloads_url:{type:"string"},events_url:{type:"string"},forks_url:{type:"string"},git_commits_url:{type:"string"},git_refs_url:{type:"string"},git_tags_url:{type:"string"},git_url:{type:"string"},issue_comment_url:{type:"string"},issue_events_url:{type:"string"},issues_url:{type:"string"},keys_url:{type:"string"},labels_url:{type:"string"},languages_url:{type:"string"},merges_url:{type:"string"},milestones_url:{type:"string"},notifications_url:{type:"string"},pulls_url:{type:"string"},releases_url:{type:"string"},ssh_url:{type:"string"},stargazers_url:{type:"string"},statuses_url:{type:"string"},subscribers_url:{type:"string"},subscription_url:{type:"string"},tags_url:{type:"string"},teams_url:{type:"string"},trees_url:{type:"string"},clone_url:{type:"string"},mirror_url:{type:"string"},hooks_url:{type:"string"},svn_url:{type:"string"},homepage:{type:"string"},language:{type:"string"},forks_count:{type:"integer"},stargazers_count:{type:"integer"},watchers_count:{type:"integer"},size:{type:"integer"},default_branch:{type:"string"},open_issues_count:{type:"integer"},is_template:{type:"boolean"},topics:{type:"array",items:{type:"string"}},has_issues:{type:"boolean"},has_projects:{type:"boolean"},has_wiki:{type:"boolean"},has_pages:{type:"boolean"},has_downloads:{type:"boolean"},archived:{type:"boolean"},disabled:{type:"boolean"},visibility:{type:"string"},pushed_at:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}}},allow_rebase_merge:{type:"boolean"},temp_clone_token:{type:"string"},allow_squash_merge:{type:"boolean"},allow_auto_merge:{type:"boolean"},delete_branch_on_merge:{type:"boolean"},allow_update_branch:{type:"boolean"},use_squash_pr_title_as_default:{type:"boolean"},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"}}},temp_clone_token:{type:"string"},allow_squash_merge:{description:"Whether to allow squash merges for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_auto_merge:{description:"Whether to allow Auto-merge to be used on pull requests.",default:!1,type:"boolean",examples:[!1]},delete_branch_on_merge:{description:"Whether to delete head branches when pull requests are merged",default:!1,type:"boolean",examples:[!1]},allow_update_branch:{description:"Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.",default:!1,type:"boolean",examples:[!1]},use_squash_pr_title_as_default:{type:"boolean",description:"Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.",default:!1,deprecated:!0},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{description:"Whether to allow merge commits for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_forking:{description:"Whether to allow forking this repo",type:"boolean"},web_commit_signoff_required:{description:"Whether to require contributors to sign off on web-based commits",default:!1,type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"},open_issues:{type:"integer"},watchers:{type:"integer"},master_branch:{type:"string"},starred_at:{type:"string",examples:['"2020-07-09T00:17:42Z"']},anonymous_access_enabled:{type:"boolean",description:"Whether anonymous git access is enabled for this repository"}},required:["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at"]}]},temp_clone_token:{type:["string","null"]},allow_squash_merge:{type:"boolean",examples:[!0]},allow_auto_merge:{type:"boolean",examples:[!1]},delete_branch_on_merge:{type:"boolean",examples:[!1]},allow_merge_commit:{type:"boolean",examples:[!0]},allow_update_branch:{type:"boolean",examples:[!0]},use_squash_pr_title_as_default:{type:"boolean",examples:[!1]},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit).",examples:["PR_TITLE"]},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message.",examples:["PR_BODY"]},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n - `PR_TITLE` - default to the pull request's title.\n - `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).",examples:["PR_TITLE"]},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message.",examples:["PR_BODY"]},allow_forking:{type:"boolean",examples:[!0]},web_commit_signoff_required:{type:"boolean",examples:[!1]},subscribers_count:{type:"integer",examples:[42]},network_count:{type:"integer",examples:[0]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},parent:{title:"Repository",description:"A repository on GitHub.",type:"object",properties:{id:{description:"Unique identifier of the repository",type:"integer",examples:[42]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{description:"The name of the repository.",type:"string",examples:["Team Environment"]},full_name:{type:"string",examples:["octocat/Hello-World"]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},forks:{type:"integer"},permissions:{type:"object",properties:{admin:{type:"boolean"},pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"}},required:["admin","pull","push"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{description:"Whether the repository is private or public.",default:!1,type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{description:"The default branch of the repository.",type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{description:"Whether this repository acts as a template that can be used to generate new repositories.",default:!1,type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"}},has_issues:{description:"Whether issues are enabled.",default:!0,type:"boolean",examples:[!0]},has_projects:{description:"Whether projects are enabled.",default:!0,type:"boolean",examples:[!0]},has_wiki:{description:"Whether the wiki is enabled.",default:!0,type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{description:"Whether downloads are enabled.",default:!0,type:"boolean",examples:[!0]},has_discussions:{description:"Whether discussions are enabled.",default:!1,type:"boolean",examples:[!0]},archived:{description:"Whether the repository is archived.",default:!1,type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",default:"public",type:"string"},pushed_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:14:43Z"]},allow_rebase_merge:{description:"Whether to allow rebase merges for pull requests.",default:!0,type:"boolean",examples:[!0]},template_repository:{type:["object","null"],properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},full_name:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}},private:{type:"boolean"},html_url:{type:"string"},description:{type:"string"},fork:{type:"boolean"},url:{type:"string"},archive_url:{type:"string"},assignees_url:{type:"string"},blobs_url:{type:"string"},branches_url:{type:"string"},collaborators_url:{type:"string"},comments_url:{type:"string"},commits_url:{type:"string"},compare_url:{type:"string"},contents_url:{type:"string"},contributors_url:{type:"string"},deployments_url:{type:"string"},downloads_url:{type:"string"},events_url:{type:"string"},forks_url:{type:"string"},git_commits_url:{type:"string"},git_refs_url:{type:"string"},git_tags_url:{type:"string"},git_url:{type:"string"},issue_comment_url:{type:"string"},issue_events_url:{type:"string"},issues_url:{type:"string"},keys_url:{type:"string"},labels_url:{type:"string"},languages_url:{type:"string"},merges_url:{type:"string"},milestones_url:{type:"string"},notifications_url:{type:"string"},pulls_url:{type:"string"},releases_url:{type:"string"},ssh_url:{type:"string"},stargazers_url:{type:"string"},statuses_url:{type:"string"},subscribers_url:{type:"string"},subscription_url:{type:"string"},tags_url:{type:"string"},teams_url:{type:"string"},trees_url:{type:"string"},clone_url:{type:"string"},mirror_url:{type:"string"},hooks_url:{type:"string"},svn_url:{type:"string"},homepage:{type:"string"},language:{type:"string"},forks_count:{type:"integer"},stargazers_count:{type:"integer"},watchers_count:{type:"integer"},size:{type:"integer"},default_branch:{type:"string"},open_issues_count:{type:"integer"},is_template:{type:"boolean"},topics:{type:"array",items:{type:"string"}},has_issues:{type:"boolean"},has_projects:{type:"boolean"},has_wiki:{type:"boolean"},has_pages:{type:"boolean"},has_downloads:{type:"boolean"},archived:{type:"boolean"},disabled:{type:"boolean"},visibility:{type:"string"},pushed_at:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}}},allow_rebase_merge:{type:"boolean"},temp_clone_token:{type:"string"},allow_squash_merge:{type:"boolean"},allow_auto_merge:{type:"boolean"},delete_branch_on_merge:{type:"boolean"},allow_update_branch:{type:"boolean"},use_squash_pr_title_as_default:{type:"boolean"},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"}}},temp_clone_token:{type:"string"},allow_squash_merge:{description:"Whether to allow squash merges for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_auto_merge:{description:"Whether to allow Auto-merge to be used on pull requests.",default:!1,type:"boolean",examples:[!1]},delete_branch_on_merge:{description:"Whether to delete head branches when pull requests are merged",default:!1,type:"boolean",examples:[!1]},allow_update_branch:{description:"Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.",default:!1,type:"boolean",examples:[!1]},use_squash_pr_title_as_default:{type:"boolean",description:"Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.",default:!1,deprecated:!0},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{description:"Whether to allow merge commits for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_forking:{description:"Whether to allow forking this repo",type:"boolean"},web_commit_signoff_required:{description:"Whether to require contributors to sign off on web-based commits",default:!1,type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"},open_issues:{type:"integer"},watchers:{type:"integer"},master_branch:{type:"string"},starred_at:{type:"string",examples:['"2020-07-09T00:17:42Z"']},anonymous_access_enabled:{type:"boolean",description:"Whether anonymous git access is enabled for this repository"}},required:["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at"]},source:{title:"Repository",description:"A repository on GitHub.",type:"object",properties:{id:{description:"Unique identifier of the repository",type:"integer",examples:[42]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{description:"The name of the repository.",type:"string",examples:["Team Environment"]},full_name:{type:"string",examples:["octocat/Hello-World"]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},forks:{type:"integer"},permissions:{type:"object",properties:{admin:{type:"boolean"},pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"}},required:["admin","pull","push"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{description:"Whether the repository is private or public.",default:!1,type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{description:"The default branch of the repository.",type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{description:"Whether this repository acts as a template that can be used to generate new repositories.",default:!1,type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"}},has_issues:{description:"Whether issues are enabled.",default:!0,type:"boolean",examples:[!0]},has_projects:{description:"Whether projects are enabled.",default:!0,type:"boolean",examples:[!0]},has_wiki:{description:"Whether the wiki is enabled.",default:!0,type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{description:"Whether downloads are enabled.",default:!0,type:"boolean",examples:[!0]},has_discussions:{description:"Whether discussions are enabled.",default:!1,type:"boolean",examples:[!0]},archived:{description:"Whether the repository is archived.",default:!1,type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",default:"public",type:"string"},pushed_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:14:43Z"]},allow_rebase_merge:{description:"Whether to allow rebase merges for pull requests.",default:!0,type:"boolean",examples:[!0]},template_repository:{type:["object","null"],properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},full_name:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}},private:{type:"boolean"},html_url:{type:"string"},description:{type:"string"},fork:{type:"boolean"},url:{type:"string"},archive_url:{type:"string"},assignees_url:{type:"string"},blobs_url:{type:"string"},branches_url:{type:"string"},collaborators_url:{type:"string"},comments_url:{type:"string"},commits_url:{type:"string"},compare_url:{type:"string"},contents_url:{type:"string"},contributors_url:{type:"string"},deployments_url:{type:"string"},downloads_url:{type:"string"},events_url:{type:"string"},forks_url:{type:"string"},git_commits_url:{type:"string"},git_refs_url:{type:"string"},git_tags_url:{type:"string"},git_url:{type:"string"},issue_comment_url:{type:"string"},issue_events_url:{type:"string"},issues_url:{type:"string"},keys_url:{type:"string"},labels_url:{type:"string"},languages_url:{type:"string"},merges_url:{type:"string"},milestones_url:{type:"string"},notifications_url:{type:"string"},pulls_url:{type:"string"},releases_url:{type:"string"},ssh_url:{type:"string"},stargazers_url:{type:"string"},statuses_url:{type:"string"},subscribers_url:{type:"string"},subscription_url:{type:"string"},tags_url:{type:"string"},teams_url:{type:"string"},trees_url:{type:"string"},clone_url:{type:"string"},mirror_url:{type:"string"},hooks_url:{type:"string"},svn_url:{type:"string"},homepage:{type:"string"},language:{type:"string"},forks_count:{type:"integer"},stargazers_count:{type:"integer"},watchers_count:{type:"integer"},size:{type:"integer"},default_branch:{type:"string"},open_issues_count:{type:"integer"},is_template:{type:"boolean"},topics:{type:"array",items:{type:"string"}},has_issues:{type:"boolean"},has_projects:{type:"boolean"},has_wiki:{type:"boolean"},has_pages:{type:"boolean"},has_downloads:{type:"boolean"},archived:{type:"boolean"},disabled:{type:"boolean"},visibility:{type:"string"},pushed_at:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}}},allow_rebase_merge:{type:"boolean"},temp_clone_token:{type:"string"},allow_squash_merge:{type:"boolean"},allow_auto_merge:{type:"boolean"},delete_branch_on_merge:{type:"boolean"},allow_update_branch:{type:"boolean"},use_squash_pr_title_as_default:{type:"boolean"},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"}}},temp_clone_token:{type:"string"},allow_squash_merge:{description:"Whether to allow squash merges for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_auto_merge:{description:"Whether to allow Auto-merge to be used on pull requests.",default:!1,type:"boolean",examples:[!1]},delete_branch_on_merge:{description:"Whether to delete head branches when pull requests are merged",default:!1,type:"boolean",examples:[!1]},allow_update_branch:{description:"Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.",default:!1,type:"boolean",examples:[!1]},use_squash_pr_title_as_default:{type:"boolean",description:"Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.",default:!1,deprecated:!0},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{description:"Whether to allow merge commits for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_forking:{description:"Whether to allow forking this repo",type:"boolean"},web_commit_signoff_required:{description:"Whether to require contributors to sign off on web-based commits",default:!1,type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"},open_issues:{type:"integer"},watchers:{type:"integer"},master_branch:{type:"string"},starred_at:{type:"string",examples:['"2020-07-09T00:17:42Z"']},anonymous_access_enabled:{type:"boolean",description:"Whether anonymous git access is enabled for this repository"}},required:["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at"]},forks:{type:"integer"},master_branch:{type:"string"},open_issues:{type:"integer"},watchers:{type:"integer"},anonymous_access_enabled:{description:"Whether anonymous git access is allowed.",default:!0,type:"boolean"},code_of_conduct:{title:"Code Of Conduct Simple",description:"Code of Conduct Simple",type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/github/docs/community/code_of_conduct"]},key:{type:"string",examples:["citizen_code_of_conduct"]},name:{type:"string",examples:["Citizen Code of Conduct"]},html_url:{type:["string","null"],format:"uri",examples:["https://github.com/github/docs/blob/main/CODE_OF_CONDUCT.md"]}},required:["url","key","name","html_url"]},security_and_analysis:{type:["object","null"],properties:{advanced_security:{type:"object",properties:{status:{type:"string",enum:["enabled","disabled"]}}},secret_scanning:{type:"object",properties:{status:{type:"string",enum:["enabled","disabled"]}}},secret_scanning_push_protection:{type:"object",properties:{status:{type:"string",enum:["enabled","disabled"]}}}}}},Ie=["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","has_discussions","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at","network_count","subscribers_count"],ze={title:Re,description:Me,type:Se,properties:Pe,required:Ie},$=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)},Ge=(e,t,r)=>($(e,t,"read from private field"),r?r.call(e):t.get(e)),Ae=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r)},je=(e,t,r,s)=>($(e,t,"write to private field"),s?s.call(e,r):t.set(e,r),r),v;const F=class{constructor(e){Ae(this,v,void 0),je(this,v,e)}async extract(e,t,r){const s={owner:t.owner,repo:t.name};try{return(await r.rest.repos.get(s)).data}catch(i){Ge(this,v).error(`[RepositoryDetails] fact extraction failed with: ${i}. Request parameters: ${JSON.stringify(s)}`);return}}getDataSchema(e){return JSON.stringify(ze)}};let X=F;v=new WeakMap,X.factory=({logger:e})=>{const t=new F(e);return{predicate:r=>r.type==="RepositoryDetails",extractor:t}};const Oe=o.BaseFactExtractorSchema.and(u.z.object({type:u.z.string().regex(new RegExp("BranchProtections"))})),Be=o.BaseFactExtractorSchema.and(u.z.object({type:u.z.string().regex(new RegExp("RepositoryDetails"))})),De=o.BaseFactExtractorSchema.and(u.z.object({type:u.z.string().regex(new RegExp("RepositoryLanguages"))})),Le=Oe.or(Be).or(De),Ce=o.buildFactCollectorSchema(Le);var P=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)},I=(e,t,r)=>(P(e,t,"read from private field"),r?r.call(e):t.get(e)),z=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r)},G=(e,t,r,s)=>(P(e,t,"write to private field"),s?s.call(e,r):t.set(e,r),r),ee=(e,t,r)=>(P(e,t,"access private method"),r),m,w,T,A;const te=class{constructor(e,t){z(this,T),z(this,m,void 0),z(this,w,void 0);var r;G(this,w,e),G(this,m,ee(this,T,A).call(this,t)),(r=t.subscribe)==null||r.call(t,()=>{G(this,m,ee(this,T,A).call(this,t))})}static create(e,t){return new te(e,t)}getExtractorConfig(e){return I(this,m)[e]}getExtractorConfigs(){return Object.values(I(this,m))}};let Ne=te;m=new WeakMap,w=new WeakMap,T=new WeakSet,A=function(e){const t=e.getOptional("soundcheck.collectors.github");if(!t)return{};const r=Ce.safeParse(t);if(!r.success)throw I(this,w).error("Failed to parse GithubFactCollector from schema."),new he.InputError(r.error.message);return o.buildExtractorConfigMap(r.data)};var re=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)},j=(e,t,r)=>(re(e,t,"read from private field"),r?r.call(e):t.get(e)),se=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r)},ie=(e,t,r,s)=>(re(e,t,"write to private field"),s?s.call(e,r):t.set(e,r),r),W,_;const oe=class{constructor(e,t){se(this,W,void 0),se(this,_,void 0),ie(this,W,e),ie(this,_,t)}static create(e,t){return new oe(e,t)}async getDefaultBranch(e,t){let r=await j(this,_).get(e.full_name);if(r!==void 0)return r;const s={owner:e.owner,repo:e.name};try{r=(await t.rest.repos.get(s)).data.default_branch,await j(this,_).set(e.full_name,r)}catch(i){e.ref?r=e.ref:r="main",j(this,W).error(`Failed to get default branch name with: ${i}. Request parameters: ${JSON.stringify(s)}. Falling back to using [${r}] as default branch`)}return r}};let Ke=oe;W=new WeakMap,_=new WeakMap;var Ze="Language",Ue="Language",Ye="object",Qe={type:"integer"},Je={title:Ze,description:Ue,type:Ye,additionalProperties:Qe},ae=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)},Ve=(e,t,r)=>(ae(e,t,"read from private field"),r?r.call(e):t.get(e)),$e=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r)},Fe=(e,t,r,s)=>(ae(e,t,"write to private field"),s?s.call(e,r):t.set(e,r),r),E;const le=class{constructor(e){$e(this,E,void 0),Fe(this,E,e)}async extract(e,t,r){const s={owner:t.owner,repo:t.name};try{return(await r.rest.repos.listLanguages(s)).data}catch(i){Ve(this,E).error(`[RepositoryLanguages] fact extraction failed with: ${i}. Request parameters: ${JSON.stringify(s)}`);return}}getDataSchema(e){return JSON.stringify(Je)}};let pe=le;E=new WeakMap,pe.factory=({logger:e})=>{const t=new le(e);return{predicate:r=>r.type==="RepositoryLanguages",extractor:t}};var O=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)},a=(e,t,r)=>(O(e,t,"read from private field"),r?r.call(e):t.get(e)),g=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r)},h=(e,t,r,s)=>(O(e,t,"write to private field"),s?s.call(e,r):t.set(e,r),r),Xe=(e,t,r)=>(O(e,t,"access private method"),r),n,y,H,d,l,B,ne;const D=class{constructor(e,t,r){g(this,B),g(this,n,void 0),g(this,y,void 0),g(this,H,void 0),g(this,d,void 0),g(this,l,void 0),this.id=D.ID,h(this,n,t.child({target:this.id})),h(this,y,K.ScmIntegrations.fromConfig(e)),h(this,H,K.DefaultGithubCredentialsProvider.fromIntegrations(a(this,y))),h(this,d,we.create({logger:a(this,n),branchHelper:Ke.create(a(this,n),r.getClient({defaultTtl:60*60*1e3})),factories:[V.factory,X.factory,pe.factory]})),h(this,l,Ne.create(a(this,n),e))}static create(e,t,r){return new D(e,t,r)}async collect(e,t){const r=Xe(this,B,ne).call(this,t);return Promise.all(e.filter(s=>o.isScmEntity(s)).map(async s=>{const i=me.stringifyEntityRef(s),p=o.getEntityScmUrl(s),q=be.default(p),k=await this.getOctokit(p);return Promise.all(r.map(async L=>{const C=o.getFactRef(this.id,L),N=await a(this,d).extract(L,q,k).catch(ce=>{a(this,n).error(`Failed to collect ${C} fact data for ${i} entity: ${ce}`)});if(N!==void 0)return o.buildFact(i,C,N)}))})).then(s=>s.flat().filter(i=>!!i))}async getOctokit(e){const{token:t}=await a(this,H).getCredentials({url:e}),r=a(this,y).github.byUrl(e);return new _e.Octokit({auth:t,baseUrl:r==null?void 0:r.config.apiBaseUrl})}async getCollectionConfigs(){return o.buildCollectionConfigs(this.id,a(this,l).getExtractorConfigs())}async getFactNames(){return a(this,l).getExtractorConfigs().map(e=>e.factName)}async getDataSchema(e){const t=o.parseFactRef(e,{defaultSource:this.id,defaultScope:o.DEFAULT_SCOPE}),r=a(this,l).getExtractorConfigs().find(s=>o.stringifyFactRef(t)===o.getFactRef(this.id,s));if(r)return a(this,d).getDataSchema(r)}};let ue=D;n=new WeakMap,y=new WeakMap,H=new WeakMap,d=new WeakMap,l=new WeakMap,B=new WeakSet,ne=function(e){return e!=null&&e.factRefs?a(this,l).getExtractorConfigs().filter(t=>{var r,s;return(s=(r=e==null?void 0:e.factRefs)==null?void 0:r.map(o.stringifyFactRef))==null?void 0:s.includes(o.getFactRef(this.id,t))}):a(this,l).getExtractorConfigs()},ue.ID="github",exports.GithubFactCollector=ue;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var a=require("@spotify/backstage-plugin-soundcheck-common"),ge=require("@backstage/catalog-model"),he=require("@octokit/request-error"),_e=require("@octokit/rest"),Q=require("@backstage/integration"),h=require("zod"),ye=require("@backstage/errors"),de=require("git-url-parse"),be=require("zod-to-json-schema");function $(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var fe=$(de),xe=$(be),ve=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},w=(t,e,r)=>(ve(t,e,"read from private field"),r?r.call(t):e.get(t)),we=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},_;function J(t){return`Extractor with type '${t}' is not allowed. You may need to update collectors configuration at 'soundcheck.collectors.github'`}class Te{constructor(){we(this,_,[])}register(e){w(this,_).push(e)}async extract(e,r,s){for(const{predicate:i,extractor:o}of w(this,_))if(i(e))return o.extract(e,r,s);throw new Error(J(e.type))}getDataSchema(e){for(const{predicate:r,extractor:s}of w(this,_))if(r(e))return s.getDataSchema(e);throw new Error(J(e.type))}toString(){return`predicateMux{extractors=${w(this,_).map(e=>e.extractor).join(",")}`}}_=new WeakMap;class We{static create(e){const{logger:r,branchHelper:s,factories:i}=e,o=new Te;for(const n of i!=null?i:[]){const m=n({logger:r,branchHelper:s});o.register(m)}return o}}var Ee="Branch Protection",He="Branch Protection",qe="object",ke={url:{type:"string"},enabled:{type:"boolean"},required_status_checks:{title:"Protected Branch Required Status Check",description:"Protected Branch Required Status Check",type:"object",properties:{url:{type:"string"},enforcement_level:{type:"string"},contexts:{type:"array",items:{type:"string"}},checks:{type:"array",items:{type:"object",properties:{context:{type:"string"},app_id:{type:["integer","null"]}},required:["context","app_id"]}},contexts_url:{type:"string"},strict:{type:"boolean"}},required:["contexts","checks"]},enforce_admins:{title:"Protected Branch Admin Enforced",description:"Protected Branch Admin Enforced",type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World/branches/master/protection/enforce_admins"]},enabled:{type:"boolean",examples:[!0]}},required:["url","enabled"]},required_pull_request_reviews:{title:"Protected Branch Pull Request Review",description:"Protected Branch Pull Request Review",type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World/branches/master/protection/dismissal_restrictions"]},dismissal_restrictions:{type:"object",properties:{users:{description:"The list of users with review dismissal access.",type:"array",items:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}},teams:{description:"The list of teams with review dismissal access.",type:"array",items:{title:"Team",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},slug:{type:"string"},description:{type:["string","null"]},privacy:{type:"string"},notification_setting:{type:"string"},permission:{type:"string"},permissions:{type:"object",properties:{pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"},admin:{type:"boolean"}},required:["pull","triage","push","maintain","admin"]},url:{type:"string",format:"uri"},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},members_url:{type:"string"},repositories_url:{type:"string",format:"uri"},parent:{anyOf:[{type:"null"},{title:"Team Simple",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{description:"Unique identifier of the team",type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VGVhbTE="]},url:{description:"URL for the team",type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1"]},members_url:{type:"string",examples:["https://api.github.com/organizations/1/team/1/members{/member}"]},name:{description:"Name of the team",type:"string",examples:["Justice League"]},description:{description:"Description of the team",type:["string","null"],examples:["A great team."]},permission:{description:"Permission that the team will have for its repositories",type:"string",examples:["admin"]},privacy:{description:"The level of privacy this team should have",type:"string",examples:["closed"]},notification_setting:{description:"The notification setting the team has set",type:"string",examples:["notifications_enabled"]},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},repositories_url:{type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1/repos"]},slug:{type:"string",examples:["justice-league"]},ldap_dn:{description:"Distinguished Name (DN) that team maps to within LDAP environment",type:"string",examples:["uid=example,ou=users,dc=github,dc=com"]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug"]}]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug","parent"]}},apps:{description:"The list of apps with review dismissal access.",type:"array",items:{title:"GitHub app",description:"GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.",type:"object",properties:{id:{description:"Unique identifier of the GitHub app",type:"integer",examples:[37]},slug:{description:"The slug name of the GitHub app",type:"string",examples:["probot-owners"]},node_id:{type:"string",examples:["MDExOkludGVncmF0aW9uMQ=="]},owner:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},name:{description:"The name of the GitHub app",type:"string",examples:["Probot Owners"]},description:{type:["string","null"],examples:["The description of the app."]},external_url:{type:"string",format:"uri",examples:["https://example.com"]},html_url:{type:"string",format:"uri",examples:["https://github.com/apps/super-ci"]},created_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},updated_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},permissions:{description:"The set of permissions for the GitHub app",type:"object",properties:{issues:{type:"string"},checks:{type:"string"},metadata:{type:"string"},contents:{type:"string"},deployments:{type:"string"}},additionalProperties:{type:"string"},example:{issues:"read",deployments:"write"}},events:{description:"The list of events for the GitHub app",type:"array",items:{type:"string"},examples:["label","deployment"]},installations_count:{description:"The number of installations associated with the GitHub app",type:"integer",examples:[5]},client_id:{type:"string",examples:['"Iv1.25b5d1e65ffc4022"']},client_secret:{type:"string",examples:['"1d4b2097ac622ba702d19de498f005747a8b21d3"']},webhook_secret:{type:["string","null"],examples:['"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b"']},pem:{type:"string",examples:['"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n"']}},required:["id","node_id","owner","name","description","external_url","html_url","created_at","updated_at","permissions","events"]}},url:{type:"string",examples:['"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions"']},users_url:{type:"string",examples:['"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/users"']},teams_url:{type:"string",examples:['"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/teams"']}}},bypass_pull_request_allowances:{type:"object",description:"Allow specific users, teams, or apps to bypass pull request requirements.",properties:{users:{description:"The list of users allowed to bypass pull request requirements.",type:"array",items:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}},teams:{description:"The list of teams allowed to bypass pull request requirements.",type:"array",items:{title:"Team",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},slug:{type:"string"},description:{type:["string","null"]},privacy:{type:"string"},notification_setting:{type:"string"},permission:{type:"string"},permissions:{type:"object",properties:{pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"},admin:{type:"boolean"}},required:["pull","triage","push","maintain","admin"]},url:{type:"string",format:"uri"},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},members_url:{type:"string"},repositories_url:{type:"string",format:"uri"},parent:{anyOf:[{type:"null"},{title:"Team Simple",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{description:"Unique identifier of the team",type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VGVhbTE="]},url:{description:"URL for the team",type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1"]},members_url:{type:"string",examples:["https://api.github.com/organizations/1/team/1/members{/member}"]},name:{description:"Name of the team",type:"string",examples:["Justice League"]},description:{description:"Description of the team",type:["string","null"],examples:["A great team."]},permission:{description:"Permission that the team will have for its repositories",type:"string",examples:["admin"]},privacy:{description:"The level of privacy this team should have",type:"string",examples:["closed"]},notification_setting:{description:"The notification setting the team has set",type:"string",examples:["notifications_enabled"]},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},repositories_url:{type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1/repos"]},slug:{type:"string",examples:["justice-league"]},ldap_dn:{description:"Distinguished Name (DN) that team maps to within LDAP environment",type:"string",examples:["uid=example,ou=users,dc=github,dc=com"]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug"]}]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug","parent"]}},apps:{description:"The list of apps allowed to bypass pull request requirements.",type:"array",items:{title:"GitHub app",description:"GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.",type:"object",properties:{id:{description:"Unique identifier of the GitHub app",type:"integer",examples:[37]},slug:{description:"The slug name of the GitHub app",type:"string",examples:["probot-owners"]},node_id:{type:"string",examples:["MDExOkludGVncmF0aW9uMQ=="]},owner:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},name:{description:"The name of the GitHub app",type:"string",examples:["Probot Owners"]},description:{type:["string","null"],examples:["The description of the app."]},external_url:{type:"string",format:"uri",examples:["https://example.com"]},html_url:{type:"string",format:"uri",examples:["https://github.com/apps/super-ci"]},created_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},updated_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},permissions:{description:"The set of permissions for the GitHub app",type:"object",properties:{issues:{type:"string"},checks:{type:"string"},metadata:{type:"string"},contents:{type:"string"},deployments:{type:"string"}},additionalProperties:{type:"string"},example:{issues:"read",deployments:"write"}},events:{description:"The list of events for the GitHub app",type:"array",items:{type:"string"},examples:["label","deployment"]},installations_count:{description:"The number of installations associated with the GitHub app",type:"integer",examples:[5]},client_id:{type:"string",examples:['"Iv1.25b5d1e65ffc4022"']},client_secret:{type:"string",examples:['"1d4b2097ac622ba702d19de498f005747a8b21d3"']},webhook_secret:{type:["string","null"],examples:['"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b"']},pem:{type:"string",examples:['"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n"']}},required:["id","node_id","owner","name","description","external_url","html_url","created_at","updated_at","permissions","events"]}}}},dismiss_stale_reviews:{type:"boolean",examples:[!0]},require_code_owner_reviews:{type:"boolean",examples:[!0]},required_approving_review_count:{type:"integer",minimum:0,maximum:6,examples:[2]},require_last_push_approval:{description:"Whether the most recent push must be approved by someone other than the person who pushed it.",type:"boolean",default:!1,examples:[!0]}},required:["dismiss_stale_reviews","require_code_owner_reviews"]},restrictions:{title:"Branch Restriction Policy",description:"Branch Restriction Policy",type:"object",properties:{url:{type:"string",format:"uri"},users_url:{type:"string",format:"uri"},teams_url:{type:"string",format:"uri"},apps_url:{type:"string",format:"uri"},users:{type:"array",items:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}}},teams:{type:"array",items:{type:"object",properties:{id:{type:"integer"},node_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},name:{type:"string"},slug:{type:"string"},description:{type:["string","null"]},privacy:{type:"string"},notification_setting:{type:"string"},permission:{type:"string"},members_url:{type:"string"},repositories_url:{type:"string"},parent:{type:["string","null"]}}}},apps:{type:"array",items:{type:"object",properties:{id:{type:"integer"},slug:{type:"string"},node_id:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},hooks_url:{type:"string"},issues_url:{type:"string"},members_url:{type:"string"},public_members_url:{type:"string"},avatar_url:{type:"string"},description:{type:"string"},gravatar_id:{type:"string",examples:['""']},html_url:{type:"string",examples:['"https://github.com/testorg-ea8ec76d71c3af4b"']},followers_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers"']},following_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}"']},gists_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}"']},starred_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}"']},subscriptions_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions"']},organizations_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs"']},received_events_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events"']},type:{type:"string",examples:['"Organization"']},site_admin:{type:"boolean",examples:[!1]}}},name:{type:"string"},description:{type:"string"},external_url:{type:"string"},html_url:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{metadata:{type:"string"},contents:{type:"string"},issues:{type:"string"},single_file:{type:"string"}}},events:{type:"array",items:{type:"string"}}}}}},required:["url","users_url","teams_url","apps_url","users","teams","apps"]},required_linear_history:{type:"object",properties:{enabled:{type:"boolean"}}},allow_force_pushes:{type:"object",properties:{enabled:{type:"boolean"}}},allow_deletions:{type:"object",properties:{enabled:{type:"boolean"}}},block_creations:{type:"object",properties:{enabled:{type:"boolean"}}},required_conversation_resolution:{type:"object",properties:{enabled:{type:"boolean"}}},name:{type:"string",examples:['"branch/with/protection"']},protection_url:{type:"string",examples:['"https://api.github.com/repos/owner-79e94e2d36b3fd06a32bb213/AAA_Public_Repo/branches/branch/with/protection/protection"']},required_signatures:{type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures"]},enabled:{type:"boolean",examples:[!0]}},required:["url","enabled"]},lock_branch:{type:"object",description:"Whether to set the branch as read-only. If this is true, users will not be able to push to the branch.",properties:{enabled:{default:!1,type:"boolean"}}},allow_fork_syncing:{type:"object",description:"Whether users can pull changes from upstream when the branch is locked. Set to `true` to allow fork syncing. Set to `false` to prevent fork syncing.",properties:{enabled:{default:!1,type:"boolean"}}}},Re={title:Ee,description:He,type:qe,properties:ke},Me=Object.defineProperty,Se=(t,e,r)=>e in t?Me(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Pe=(t,e,r)=>(Se(t,typeof e!="symbol"?e+"":e,r),r),I=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},V=(t,e,r)=>(I(t,e,"read from private field"),r?r.call(t):e.get(t)),z=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},F=(t,e,r,s)=>(I(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),Ie=(t,e,r)=>(I(t,e,"access private method"),r),T,W,j,X;const G=class{constructor(e,r){z(this,j),z(this,T,void 0),z(this,W,void 0),F(this,T,e),F(this,W,r)}async extract(e,r,s){const i={owner:r.owner,repo:r.name,branch:await Ie(this,j,X).call(this,e,r,s)};try{return(await s.rest.repos.getBranchProtection(i)).data}catch(o){if(o instanceof he.RequestError&&o.status===404)return{};V(this,T).error(`[BranchProtections] fact extraction failed with: ${o}. Request parameters: ${JSON.stringify(i)}`);return}}getDataSchema(e){return JSON.stringify(Re)}};T=new WeakMap,W=new WeakMap,j=new WeakSet,X=async function(t,e,r){return t.branch?t.branch:V(this,W).getDefaultBranch(e,r)},Pe(G,"factory",({logger:t,branchHelper:e})=>{const r=new G(t,e);return{predicate:s=>s.type==="BranchProtections",extractor:r}});let ze=G;var je="Full Repository",Ge="Full Repository",Ae="object",Oe={id:{type:"integer",examples:[1296269]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{type:"string",examples:["Hello-World"]},full_name:{type:"string",examples:["octocat/Hello-World"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"},examples:["octocat","atom","electron","API"]},has_issues:{type:"boolean",examples:[!0]},has_projects:{type:"boolean",examples:[!0]},has_wiki:{type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{type:"boolean",examples:[!0]},has_discussions:{type:"boolean",examples:[!0]},archived:{type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",type:"string",examples:["public"]},pushed_at:{type:"string",format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:"string",format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:"string",format:"date-time",examples:["2011-01-26T19:14:43Z"]},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}},required:["admin","pull","push"]},allow_rebase_merge:{type:"boolean",examples:[!0]},template_repository:{anyOf:[{type:"null"},{title:"Repository",description:"A repository on GitHub.",type:"object",properties:{id:{description:"Unique identifier of the repository",type:"integer",examples:[42]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{description:"The name of the repository.",type:"string",examples:["Team Environment"]},full_name:{type:"string",examples:["octocat/Hello-World"]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},forks:{type:"integer"},permissions:{type:"object",properties:{admin:{type:"boolean"},pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"}},required:["admin","pull","push"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{description:"Whether the repository is private or public.",default:!1,type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{description:"The default branch of the repository.",type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{description:"Whether this repository acts as a template that can be used to generate new repositories.",default:!1,type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"}},has_issues:{description:"Whether issues are enabled.",default:!0,type:"boolean",examples:[!0]},has_projects:{description:"Whether projects are enabled.",default:!0,type:"boolean",examples:[!0]},has_wiki:{description:"Whether the wiki is enabled.",default:!0,type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{description:"Whether downloads are enabled.",default:!0,type:"boolean",examples:[!0]},has_discussions:{description:"Whether discussions are enabled.",default:!1,type:"boolean",examples:[!0]},archived:{description:"Whether the repository is archived.",default:!1,type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",default:"public",type:"string"},pushed_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:14:43Z"]},allow_rebase_merge:{description:"Whether to allow rebase merges for pull requests.",default:!0,type:"boolean",examples:[!0]},template_repository:{type:["object","null"],properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},full_name:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}},private:{type:"boolean"},html_url:{type:"string"},description:{type:"string"},fork:{type:"boolean"},url:{type:"string"},archive_url:{type:"string"},assignees_url:{type:"string"},blobs_url:{type:"string"},branches_url:{type:"string"},collaborators_url:{type:"string"},comments_url:{type:"string"},commits_url:{type:"string"},compare_url:{type:"string"},contents_url:{type:"string"},contributors_url:{type:"string"},deployments_url:{type:"string"},downloads_url:{type:"string"},events_url:{type:"string"},forks_url:{type:"string"},git_commits_url:{type:"string"},git_refs_url:{type:"string"},git_tags_url:{type:"string"},git_url:{type:"string"},issue_comment_url:{type:"string"},issue_events_url:{type:"string"},issues_url:{type:"string"},keys_url:{type:"string"},labels_url:{type:"string"},languages_url:{type:"string"},merges_url:{type:"string"},milestones_url:{type:"string"},notifications_url:{type:"string"},pulls_url:{type:"string"},releases_url:{type:"string"},ssh_url:{type:"string"},stargazers_url:{type:"string"},statuses_url:{type:"string"},subscribers_url:{type:"string"},subscription_url:{type:"string"},tags_url:{type:"string"},teams_url:{type:"string"},trees_url:{type:"string"},clone_url:{type:"string"},mirror_url:{type:"string"},hooks_url:{type:"string"},svn_url:{type:"string"},homepage:{type:"string"},language:{type:"string"},forks_count:{type:"integer"},stargazers_count:{type:"integer"},watchers_count:{type:"integer"},size:{type:"integer"},default_branch:{type:"string"},open_issues_count:{type:"integer"},is_template:{type:"boolean"},topics:{type:"array",items:{type:"string"}},has_issues:{type:"boolean"},has_projects:{type:"boolean"},has_wiki:{type:"boolean"},has_pages:{type:"boolean"},has_downloads:{type:"boolean"},archived:{type:"boolean"},disabled:{type:"boolean"},visibility:{type:"string"},pushed_at:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}}},allow_rebase_merge:{type:"boolean"},temp_clone_token:{type:"string"},allow_squash_merge:{type:"boolean"},allow_auto_merge:{type:"boolean"},delete_branch_on_merge:{type:"boolean"},allow_update_branch:{type:"boolean"},use_squash_pr_title_as_default:{type:"boolean"},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"}}},temp_clone_token:{type:"string"},allow_squash_merge:{description:"Whether to allow squash merges for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_auto_merge:{description:"Whether to allow Auto-merge to be used on pull requests.",default:!1,type:"boolean",examples:[!1]},delete_branch_on_merge:{description:"Whether to delete head branches when pull requests are merged",default:!1,type:"boolean",examples:[!1]},allow_update_branch:{description:"Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.",default:!1,type:"boolean",examples:[!1]},use_squash_pr_title_as_default:{type:"boolean",description:"Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.",default:!1,deprecated:!0},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{description:"Whether to allow merge commits for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_forking:{description:"Whether to allow forking this repo",type:"boolean"},web_commit_signoff_required:{description:"Whether to require contributors to sign off on web-based commits",default:!1,type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"},open_issues:{type:"integer"},watchers:{type:"integer"},master_branch:{type:"string"},starred_at:{type:"string",examples:['"2020-07-09T00:17:42Z"']},anonymous_access_enabled:{type:"boolean",description:"Whether anonymous git access is enabled for this repository"}},required:["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at"]}]},temp_clone_token:{type:["string","null"]},allow_squash_merge:{type:"boolean",examples:[!0]},allow_auto_merge:{type:"boolean",examples:[!1]},delete_branch_on_merge:{type:"boolean",examples:[!1]},allow_merge_commit:{type:"boolean",examples:[!0]},allow_update_branch:{type:"boolean",examples:[!0]},use_squash_pr_title_as_default:{type:"boolean",examples:[!1]},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit).",examples:["PR_TITLE"]},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message.",examples:["PR_BODY"]},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n - `PR_TITLE` - default to the pull request's title.\n - `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).",examples:["PR_TITLE"]},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message.",examples:["PR_BODY"]},allow_forking:{type:"boolean",examples:[!0]},web_commit_signoff_required:{type:"boolean",examples:[!1]},subscribers_count:{type:"integer",examples:[42]},network_count:{type:"integer",examples:[0]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},parent:{title:"Repository",description:"A repository on GitHub.",type:"object",properties:{id:{description:"Unique identifier of the repository",type:"integer",examples:[42]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{description:"The name of the repository.",type:"string",examples:["Team Environment"]},full_name:{type:"string",examples:["octocat/Hello-World"]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},forks:{type:"integer"},permissions:{type:"object",properties:{admin:{type:"boolean"},pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"}},required:["admin","pull","push"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{description:"Whether the repository is private or public.",default:!1,type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{description:"The default branch of the repository.",type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{description:"Whether this repository acts as a template that can be used to generate new repositories.",default:!1,type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"}},has_issues:{description:"Whether issues are enabled.",default:!0,type:"boolean",examples:[!0]},has_projects:{description:"Whether projects are enabled.",default:!0,type:"boolean",examples:[!0]},has_wiki:{description:"Whether the wiki is enabled.",default:!0,type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{description:"Whether downloads are enabled.",default:!0,type:"boolean",examples:[!0]},has_discussions:{description:"Whether discussions are enabled.",default:!1,type:"boolean",examples:[!0]},archived:{description:"Whether the repository is archived.",default:!1,type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",default:"public",type:"string"},pushed_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:14:43Z"]},allow_rebase_merge:{description:"Whether to allow rebase merges for pull requests.",default:!0,type:"boolean",examples:[!0]},template_repository:{type:["object","null"],properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},full_name:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}},private:{type:"boolean"},html_url:{type:"string"},description:{type:"string"},fork:{type:"boolean"},url:{type:"string"},archive_url:{type:"string"},assignees_url:{type:"string"},blobs_url:{type:"string"},branches_url:{type:"string"},collaborators_url:{type:"string"},comments_url:{type:"string"},commits_url:{type:"string"},compare_url:{type:"string"},contents_url:{type:"string"},contributors_url:{type:"string"},deployments_url:{type:"string"},downloads_url:{type:"string"},events_url:{type:"string"},forks_url:{type:"string"},git_commits_url:{type:"string"},git_refs_url:{type:"string"},git_tags_url:{type:"string"},git_url:{type:"string"},issue_comment_url:{type:"string"},issue_events_url:{type:"string"},issues_url:{type:"string"},keys_url:{type:"string"},labels_url:{type:"string"},languages_url:{type:"string"},merges_url:{type:"string"},milestones_url:{type:"string"},notifications_url:{type:"string"},pulls_url:{type:"string"},releases_url:{type:"string"},ssh_url:{type:"string"},stargazers_url:{type:"string"},statuses_url:{type:"string"},subscribers_url:{type:"string"},subscription_url:{type:"string"},tags_url:{type:"string"},teams_url:{type:"string"},trees_url:{type:"string"},clone_url:{type:"string"},mirror_url:{type:"string"},hooks_url:{type:"string"},svn_url:{type:"string"},homepage:{type:"string"},language:{type:"string"},forks_count:{type:"integer"},stargazers_count:{type:"integer"},watchers_count:{type:"integer"},size:{type:"integer"},default_branch:{type:"string"},open_issues_count:{type:"integer"},is_template:{type:"boolean"},topics:{type:"array",items:{type:"string"}},has_issues:{type:"boolean"},has_projects:{type:"boolean"},has_wiki:{type:"boolean"},has_pages:{type:"boolean"},has_downloads:{type:"boolean"},archived:{type:"boolean"},disabled:{type:"boolean"},visibility:{type:"string"},pushed_at:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}}},allow_rebase_merge:{type:"boolean"},temp_clone_token:{type:"string"},allow_squash_merge:{type:"boolean"},allow_auto_merge:{type:"boolean"},delete_branch_on_merge:{type:"boolean"},allow_update_branch:{type:"boolean"},use_squash_pr_title_as_default:{type:"boolean"},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"}}},temp_clone_token:{type:"string"},allow_squash_merge:{description:"Whether to allow squash merges for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_auto_merge:{description:"Whether to allow Auto-merge to be used on pull requests.",default:!1,type:"boolean",examples:[!1]},delete_branch_on_merge:{description:"Whether to delete head branches when pull requests are merged",default:!1,type:"boolean",examples:[!1]},allow_update_branch:{description:"Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.",default:!1,type:"boolean",examples:[!1]},use_squash_pr_title_as_default:{type:"boolean",description:"Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.",default:!1,deprecated:!0},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{description:"Whether to allow merge commits for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_forking:{description:"Whether to allow forking this repo",type:"boolean"},web_commit_signoff_required:{description:"Whether to require contributors to sign off on web-based commits",default:!1,type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"},open_issues:{type:"integer"},watchers:{type:"integer"},master_branch:{type:"string"},starred_at:{type:"string",examples:['"2020-07-09T00:17:42Z"']},anonymous_access_enabled:{type:"boolean",description:"Whether anonymous git access is enabled for this repository"}},required:["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at"]},source:{title:"Repository",description:"A repository on GitHub.",type:"object",properties:{id:{description:"Unique identifier of the repository",type:"integer",examples:[42]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{description:"The name of the repository.",type:"string",examples:["Team Environment"]},full_name:{type:"string",examples:["octocat/Hello-World"]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},forks:{type:"integer"},permissions:{type:"object",properties:{admin:{type:"boolean"},pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"}},required:["admin","pull","push"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{description:"Whether the repository is private or public.",default:!1,type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{description:"The default branch of the repository.",type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{description:"Whether this repository acts as a template that can be used to generate new repositories.",default:!1,type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"}},has_issues:{description:"Whether issues are enabled.",default:!0,type:"boolean",examples:[!0]},has_projects:{description:"Whether projects are enabled.",default:!0,type:"boolean",examples:[!0]},has_wiki:{description:"Whether the wiki is enabled.",default:!0,type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{description:"Whether downloads are enabled.",default:!0,type:"boolean",examples:[!0]},has_discussions:{description:"Whether discussions are enabled.",default:!1,type:"boolean",examples:[!0]},archived:{description:"Whether the repository is archived.",default:!1,type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",default:"public",type:"string"},pushed_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:14:43Z"]},allow_rebase_merge:{description:"Whether to allow rebase merges for pull requests.",default:!0,type:"boolean",examples:[!0]},template_repository:{type:["object","null"],properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},full_name:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}},private:{type:"boolean"},html_url:{type:"string"},description:{type:"string"},fork:{type:"boolean"},url:{type:"string"},archive_url:{type:"string"},assignees_url:{type:"string"},blobs_url:{type:"string"},branches_url:{type:"string"},collaborators_url:{type:"string"},comments_url:{type:"string"},commits_url:{type:"string"},compare_url:{type:"string"},contents_url:{type:"string"},contributors_url:{type:"string"},deployments_url:{type:"string"},downloads_url:{type:"string"},events_url:{type:"string"},forks_url:{type:"string"},git_commits_url:{type:"string"},git_refs_url:{type:"string"},git_tags_url:{type:"string"},git_url:{type:"string"},issue_comment_url:{type:"string"},issue_events_url:{type:"string"},issues_url:{type:"string"},keys_url:{type:"string"},labels_url:{type:"string"},languages_url:{type:"string"},merges_url:{type:"string"},milestones_url:{type:"string"},notifications_url:{type:"string"},pulls_url:{type:"string"},releases_url:{type:"string"},ssh_url:{type:"string"},stargazers_url:{type:"string"},statuses_url:{type:"string"},subscribers_url:{type:"string"},subscription_url:{type:"string"},tags_url:{type:"string"},teams_url:{type:"string"},trees_url:{type:"string"},clone_url:{type:"string"},mirror_url:{type:"string"},hooks_url:{type:"string"},svn_url:{type:"string"},homepage:{type:"string"},language:{type:"string"},forks_count:{type:"integer"},stargazers_count:{type:"integer"},watchers_count:{type:"integer"},size:{type:"integer"},default_branch:{type:"string"},open_issues_count:{type:"integer"},is_template:{type:"boolean"},topics:{type:"array",items:{type:"string"}},has_issues:{type:"boolean"},has_projects:{type:"boolean"},has_wiki:{type:"boolean"},has_pages:{type:"boolean"},has_downloads:{type:"boolean"},archived:{type:"boolean"},disabled:{type:"boolean"},visibility:{type:"string"},pushed_at:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}}},allow_rebase_merge:{type:"boolean"},temp_clone_token:{type:"string"},allow_squash_merge:{type:"boolean"},allow_auto_merge:{type:"boolean"},delete_branch_on_merge:{type:"boolean"},allow_update_branch:{type:"boolean"},use_squash_pr_title_as_default:{type:"boolean"},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"}}},temp_clone_token:{type:"string"},allow_squash_merge:{description:"Whether to allow squash merges for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_auto_merge:{description:"Whether to allow Auto-merge to be used on pull requests.",default:!1,type:"boolean",examples:[!1]},delete_branch_on_merge:{description:"Whether to delete head branches when pull requests are merged",default:!1,type:"boolean",examples:[!1]},allow_update_branch:{description:"Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.",default:!1,type:"boolean",examples:[!1]},use_squash_pr_title_as_default:{type:"boolean",description:"Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.",default:!1,deprecated:!0},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{description:"Whether to allow merge commits for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_forking:{description:"Whether to allow forking this repo",type:"boolean"},web_commit_signoff_required:{description:"Whether to require contributors to sign off on web-based commits",default:!1,type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"},open_issues:{type:"integer"},watchers:{type:"integer"},master_branch:{type:"string"},starred_at:{type:"string",examples:['"2020-07-09T00:17:42Z"']},anonymous_access_enabled:{type:"boolean",description:"Whether anonymous git access is enabled for this repository"}},required:["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at"]},forks:{type:"integer"},master_branch:{type:"string"},open_issues:{type:"integer"},watchers:{type:"integer"},anonymous_access_enabled:{description:"Whether anonymous git access is allowed.",default:!0,type:"boolean"},code_of_conduct:{title:"Code Of Conduct Simple",description:"Code of Conduct Simple",type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/github/docs/community/code_of_conduct"]},key:{type:"string",examples:["citizen_code_of_conduct"]},name:{type:"string",examples:["Citizen Code of Conduct"]},html_url:{type:["string","null"],format:"uri",examples:["https://github.com/github/docs/blob/main/CODE_OF_CONDUCT.md"]}},required:["url","key","name","html_url"]},security_and_analysis:{type:["object","null"],properties:{advanced_security:{type:"object",properties:{status:{type:"string",enum:["enabled","disabled"]}}},secret_scanning:{type:"object",properties:{status:{type:"string",enum:["enabled","disabled"]}}},secret_scanning_push_protection:{type:"object",properties:{status:{type:"string",enum:["enabled","disabled"]}}}}}},Be=["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","has_discussions","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at","network_count","subscribers_count"],De={title:je,description:Ge,type:Ae,properties:Oe,required:Be},Le=Object.defineProperty,Ce=(t,e,r)=>e in t?Le(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ne=(t,e,r)=>(Ce(t,typeof e!="symbol"?e+"":e,r),r),ee=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},Ke=(t,e,r)=>(ee(t,e,"read from private field"),r?r.call(t):e.get(t)),Ze=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},Ue=(t,e,r,s)=>(ee(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),E;const A=class{constructor(e){Ze(this,E,void 0),Ue(this,E,e)}async extract(e,r,s){const i={owner:r.owner,repo:r.name};try{return(await s.rest.repos.get(i)).data}catch(o){Ke(this,E).error(`[RepositoryDetails] fact extraction failed with: ${o}. Request parameters: ${JSON.stringify(i)}`);return}}getDataSchema(e){return JSON.stringify(De)}};E=new WeakMap,Ne(A,"factory",({logger:t})=>{const e=new A(t);return{predicate:r=>r.type==="RepositoryDetails",extractor:e}});let Ye=A;const Qe=a.BaseFactExtractorSchema.and(h.z.object({type:h.z.string().regex(new RegExp("BranchProtections"))})),$e=a.BaseFactExtractorSchema.and(h.z.object({type:h.z.string().regex(new RegExp("RepositoryDetails"))})),Je=a.BaseFactExtractorSchema.and(h.z.object({type:h.z.string().regex(new RegExp("RepositoryLanguages"))})),Ve=Qe.or($e).or(Je),te=a.buildFactCollectorSchema(Ve);var O=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},H=(t,e,r)=>(O(t,e,"read from private field"),r?r.call(t):e.get(t)),q=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},B=(t,e,r,s)=>(O(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),Fe=(t,e,r)=>(O(t,e,"access private method"),r),k,d,R,D,re;const Xe=class ue{constructor(e){q(this,D),q(this,k,void 0),q(this,d,{}),q(this,R,void 0),B(this,R,e)}static create(e){return new ue(e)}getConfig(){return H(this,k)}setConfig(e){B(this,k,e),B(this,d,Fe(this,D,re).call(this,e))}getExtractorConfig(e){return H(this,d)[e]}getExtractorConfigs(){return Object.values(H(this,d))}};k=new WeakMap,d=new WeakMap,R=new WeakMap,D=new WeakSet,re=function(t){const e=te.safeParse(t);if(!e.success)throw H(this,R).error("Failed to parse GithubFactCollector from schema."),new ye.InputError(e.error.message);return a.buildExtractorConfigMap(e.data)};let et=Xe;var se=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},L=(t,e,r)=>(se(t,e,"read from private field"),r?r.call(t):e.get(t)),ie=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},oe=(t,e,r,s)=>(se(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),M,b;const tt=class ce{constructor(e,r){ie(this,M,void 0),ie(this,b,void 0),oe(this,M,e),oe(this,b,r)}static create(e,r){return new ce(e,r)}async getDefaultBranch(e,r){let s=await L(this,b).get(e.full_name);if(s!==void 0)return s;const i={owner:e.owner,repo:e.name};try{s=(await r.rest.repos.get(i)).data.default_branch,await L(this,b).set(e.full_name,s)}catch(o){e.ref?s=e.ref:s="main",L(this,M).error(`Failed to get default branch name with: ${o}. Request parameters: ${JSON.stringify(i)}. Falling back to using [${s}] as default branch`)}return s}};M=new WeakMap,b=new WeakMap;let rt=tt;var st="Language",it="Language",ot="object",at={type:"integer"},lt={title:st,description:it,type:ot,additionalProperties:at},pt=Object.defineProperty,nt=(t,e,r)=>e in t?pt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,ut=(t,e,r)=>(nt(t,typeof e!="symbol"?e+"":e,r),r),ae=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},ct=(t,e,r)=>(ae(t,e,"read from private field"),r?r.call(t):e.get(t)),mt=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},gt=(t,e,r,s)=>(ae(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),S;const C=class{constructor(e){mt(this,S,void 0),gt(this,S,e)}async extract(e,r,s){const i={owner:r.owner,repo:r.name};try{return(await s.rest.repos.listLanguages(i)).data}catch(o){ct(this,S).error(`[RepositoryLanguages] fact extraction failed with: ${o}. Request parameters: ${JSON.stringify(i)}`);return}}getDataSchema(e){return JSON.stringify(lt)}};S=new WeakMap,ut(C,"factory",({logger:t})=>{const e=new C(t);return{predicate:r=>r.type==="RepositoryLanguages",extractor:e}});let ht=C;var _t=Object.defineProperty,yt=(t,e,r)=>e in t?_t(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,le=(t,e,r)=>(yt(t,typeof e!="symbol"?e+"":e,r),r),N=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},l=(t,e,r)=>(N(t,e,"read from private field"),r?r.call(t):e.get(t)),y=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},f=(t,e,r,s)=>(N(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),dt=(t,e,r)=>(N(t,e,"access private method"),r),c,x,P,v,p,K,pe;const ne=class Z{constructor(e,r,s){y(this,K),y(this,c,void 0),y(this,x,void 0),y(this,P,void 0),y(this,v,void 0),y(this,p,void 0),le(this,"id",Z.ID),f(this,c,r.child({target:this.id})),f(this,x,Q.ScmIntegrations.fromConfig(e)),f(this,P,Q.DefaultGithubCredentialsProvider.fromIntegrations(l(this,x))),f(this,v,We.create({logger:l(this,c),branchHelper:rt.create(l(this,c),s.getClient({defaultTtl:60*60*1e3})),factories:[ze.factory,Ye.factory,ht.factory]})),f(this,p,et.create(l(this,c)))}static create(e,r,s){return new Z(e,r,s)}async collect(e,r){const s=dt(this,K,pe).call(this,r);return Promise.all(e.filter(i=>a.isScmEntity(i)).map(async i=>{const o=ge.stringifyEntityRef(i),n=a.getEntityScmUrl(i),m=fe.default(n),g=await this.getOctokit(n);return Promise.all(s.map(async u=>{const U=a.getFactRef(this.id,u),Y=await l(this,v).extract(u,m,g).catch(me=>{l(this,c).error(`Failed to collect ${U} fact data for ${o} entity: ${me}`)});if(Y!==void 0)return a.buildFact(o,U,Y)}))})).then(i=>i.flat().filter(o=>!!o))}async getOctokit(e){const{token:r}=await l(this,P).getCredentials({url:e}),s=l(this,x).github.byUrl(e);return new _e.Octokit({auth:r,baseUrl:s==null?void 0:s.config.apiBaseUrl})}async getCollectionConfigs(){return a.buildCollectionConfigs(this.id,l(this,p).getExtractorConfigs())}async getFactNames(){return l(this,p).getExtractorConfigs().map(e=>e.factName)}async getDataSchema(e){const r=a.parseFactRef(e,{defaultSource:this.id,defaultScope:a.DEFAULT_SCOPE}),s=l(this,p).getExtractorConfigs().find(i=>{const o="^(\\w+):(\\w+)\\/(\\w+)$",n=a.stringifyFactRef(r),m=a.getFactRef(this.id,i),g=n.match(o),u=m.match(o);return g&&g.length===4&&u&&u.length===4&&g[1]===u[1]&&g[3]===u[3]?!0:n===m});if(s)return l(this,v).getDataSchema(s)}async getConfig(){return l(this,p).getConfig()}async setConfig(e){l(this,p).setConfig(e)}async getConfigSchema(){return JSON.stringify(xe.default(te))}};c=new WeakMap,x=new WeakMap,P=new WeakMap,v=new WeakMap,p=new WeakMap,K=new WeakSet,pe=function(t){return t!=null&&t.factRefs?l(this,p).getExtractorConfigs().filter(e=>{var r,s;return(s=(r=t==null?void 0:t.factRefs)==null?void 0:r.map(a.stringifyFactRef))==null?void 0:s.includes(a.getFactRef(this.id,e))}):l(this,p).getExtractorConfigs()},le(ne,"ID","github");let bt=ne;exports.GithubFactCollector=bt;
2
2
  //# sourceMappingURL=index.cjs.js.map
package/dist/index.d.ts CHANGED
@@ -3,14 +3,15 @@ import { Entity } from '@backstage/catalog-model';
3
3
  import { Logger } from 'winston';
4
4
  import { Config } from '@backstage/config';
5
5
  import { PluginCacheManager } from '@backstage/backend-common';
6
- import { FactCollector } from '@spotify/backstage-plugin-soundcheck-node';
6
+ import { ConfigurableFactCollector } from '@spotify/backstage-plugin-soundcheck-node';
7
+ import { JsonValue } from '@backstage/types';
7
8
 
8
9
  /**
9
10
  * Soundcheck 3rd party integration - Github.
10
11
  *
11
12
  * @public
12
13
  */
13
- declare class GithubFactCollector implements FactCollector {
14
+ declare class GithubFactCollector implements ConfigurableFactCollector {
14
15
  #private;
15
16
  /**
16
17
  * Source identifier used by the {@link GithubFactCollector}.
@@ -31,6 +32,9 @@ declare class GithubFactCollector implements FactCollector {
31
32
  getFactNames(): Promise<string[]>;
32
33
  /** {@inheritDoc @spotify/backstage-plugin-soundcheck-node#FactCollector.getDataSchema} */
33
34
  getDataSchema(factRef: FactRef): Promise<string | undefined>;
35
+ getConfig(): Promise<JsonValue | undefined>;
36
+ setConfig(config: JsonValue): Promise<void>;
37
+ getConfigSchema(): Promise<string>;
34
38
  }
35
39
 
36
40
  export { GithubFactCollector };
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@spotify/backstage-plugin-soundcheck-backend-module-github",
3
3
  "description": "Soundcheck 3rd party integration with Github",
4
- "version": "0.1.2",
4
+ "version": "0.2.0",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
- "homepage": "https://backstage.spotify.com/",
6
+ "homepage": "https://backstage.spotify.com",
7
7
  "main": "dist/index.cjs.js",
8
8
  "types": "dist/index.d.ts",
9
9
  "publishConfig": {
@@ -22,24 +22,25 @@
22
22
  "postpack": "backstage-cli package postpack"
23
23
  },
24
24
  "devDependencies": {
25
- "@backstage/cli": "^0.22.7",
25
+ "@backstage/cli": "^0.22.9",
26
26
  "@types/git-url-parse": "^9.0.0"
27
27
  },
28
28
  "dependencies": {
29
- "@backstage/backend-common": "^0.18.5",
30
- "@backstage/catalog-model": "^1.3.0",
31
- "@backstage/config": "^1.0.7",
32
- "@backstage/errors": "^1.1.5",
33
- "@backstage/integration": "^1.4.5",
34
- "@backstage/types": "^1.0.2",
29
+ "@backstage/backend-common": "^0.19.1",
30
+ "@backstage/catalog-model": "^1.4.1",
31
+ "@backstage/config": "^1.0.8",
32
+ "@backstage/errors": "^1.2.1",
33
+ "@backstage/integration": "^1.5.1",
34
+ "@backstage/types": "^1.1.0",
35
35
  "@octokit/request-error": "^3.0.3",
36
36
  "@octokit/rest": "^19.0.3",
37
- "@spotify/backstage-plugin-soundcheck-common": "^0.5.0",
38
- "@spotify/backstage-plugin-soundcheck-node": "^0.2.2",
37
+ "@spotify/backstage-plugin-soundcheck-common": "^0.7.0",
38
+ "@spotify/backstage-plugin-soundcheck-node": "^0.3.0",
39
39
  "git-url-parse": "^13.0.0",
40
40
  "lodash": "^4.17.21",
41
41
  "winston": "^3.2.1",
42
- "zod": "^3.20.0"
42
+ "zod": "^3.20.0",
43
+ "zod-to-json-schema": "^3.20.2"
43
44
  },
44
45
  "files": [
45
46
  "dist",