{"action":"created","issue":{"url":"https://api.github.com/repos/Microsoft/TypeScript/issues/6885","repository_url":"https://api.github.com/repos/Microsoft/TypeScript","labels_url":"https://api.github.com/repos/Microsoft/TypeScript/issues/6885/labels{/name}","comments_url":"https://api.github.com/repos/Microsoft/TypeScript/issues/6885/comments","events_url":"https://api.github.com/repos/Microsoft/TypeScript/issues/6885/events","html_url":"https://github.com/Microsoft/TypeScript/pull/6885","id":131182037,"number":6885,"title":"Constructor Visibility","user":{"login":"AbubakerB","id":6986076,"avatar_url":"https://avatars.githubusercontent.com/u/6986076?v=3","gravatar_id":"","url":"https://api.github.com/users/AbubakerB","html_url":"https://github.com/AbubakerB","followers_url":"https://api.github.com/users/AbubakerB/followers","following_url":"https://api.github.com/users/AbubakerB/following{/other_user}","gists_url":"https://api.github.com/users/AbubakerB/gists{/gist_id}","starred_url":"https://api.github.com/users/AbubakerB/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AbubakerB/subscriptions","organizations_url":"https://api.github.com/users/AbubakerB/orgs","repos_url":"https://api.github.com/users/AbubakerB/repos","events_url":"https://api.github.com/users/AbubakerB/events{/privacy}","received_events_url":"https://api.github.com/users/AbubakerB/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/Microsoft/TypeScript/labels/cla-already-signed","name":"cla-already-signed","color":"009800"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":12,"created_at":"2016-02-03T22:57:35Z","updated_at":"2016-02-16T22:45:45Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/Microsoft/TypeScript/pulls/6885","html_url":"https://github.com/Microsoft/TypeScript/pull/6885","diff_url":"https://github.com/Microsoft/TypeScript/pull/6885.diff","patch_url":"https://github.com/Microsoft/TypeScript/pull/6885.patch"},"body":"## Constructor Visibility\r\n(_This is a updated PR from #4174_)\r\n\r\nThere wasn't any detailed proposal, so I'm just going to list what this PR implements.\r\n\r\n#### 1) Constructor Visibility\r\n\r\n1. A constructor can now have the `private` or `protected` keyword on its signature.\r\n2. All constructor overloads must be of the same visibility (i.e. all `private`, `protected`, or `public`)\r\n\r\n#### 2) Private Constructors\r\n\r\nA class with a private constructor:\r\n\r\n1. Can only be instantiated within it's own class.\r\n2. Can only be extended within it's own class.\r\n\r\n#### 3) Protected Constructors\r\n\r\nA class with a protected constructor:\r\n\r\n1. Can only be instantiated within it's own class.\r\n2. Can be extended.\r\n\r\n#### 4) Signature Assignability \r\n\r\n- A public, protected and private signature is assignable to a private signature.\r\n- A public and protected signature is assignable to a protected signature.\r\n- A public signature is assignable to public signature."},"comment":{"url":"https://api.github.com/repos/Microsoft/TypeScript/issues/comments/184905536","html_url":"https://github.com/Microsoft/TypeScript/pull/6885#issuecomment-184905536","issue_url":"https://api.github.com/repos/Microsoft/TypeScript/issues/6885","id":184905536,"user":{"login":"mhegazy","id":8000722,"avatar_url":"https://avatars.githubusercontent.com/u/8000722?v=3","gravatar_id":"","url":"https://api.github.com/users/mhegazy","html_url":"https://github.com/mhegazy","followers_url":"https://api.github.com/users/mhegazy/followers","following_url":"https://api.github.com/users/mhegazy/following{/other_user}","gists_url":"https://api.github.com/users/mhegazy/gists{/gist_id}","starred_url":"https://api.github.com/users/mhegazy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mhegazy/subscriptions","organizations_url":"https://api.github.com/users/mhegazy/orgs","repos_url":"https://api.github.com/users/mhegazy/repos","events_url":"https://api.github.com/users/mhegazy/events{/privacy}","received_events_url":"https://api.github.com/users/mhegazy/received_events","type":"User","site_admin":false},"created_at":"2016-02-16T22:45:45Z","updated_at":"2016-02-16T22:45:45Z","body":"@AbubakerB, one last merge conflict. but we should be good to go after that. "}}