{"action":"created","issue":{"url":"https://api.github.com/repos/Microsoft/TypeScript/issues/4881","repository_url":"https://api.github.com/repos/Microsoft/TypeScript","labels_url":"https://api.github.com/repos/Microsoft/TypeScript/issues/4881/labels{/name}","comments_url":"https://api.github.com/repos/Microsoft/TypeScript/issues/4881/comments","events_url":"https://api.github.com/repos/Microsoft/TypeScript/issues/4881/events","html_url":"https://github.com/Microsoft/TypeScript/issues/4881","id":107375551,"node_id":"MDU6SXNzdWUxMDczNzU1NTE=","number":4881,"title":"Request: Class Decorator Mutation","user":{"login":"Gaelan","id":4495750,"node_id":"MDQ6VXNlcjQ0OTU3NTA=","avatar_url":"https://avatars1.githubusercontent.com/u/4495750?v=4","gravatar_id":"","url":"https://api.github.com/users/Gaelan","html_url":"https://github.com/Gaelan","followers_url":"https://api.github.com/users/Gaelan/followers","following_url":"https://api.github.com/users/Gaelan/following{/other_user}","gists_url":"https://api.github.com/users/Gaelan/gists{/gist_id}","starred_url":"https://api.github.com/users/Gaelan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Gaelan/subscriptions","organizations_url":"https://api.github.com/users/Gaelan/orgs","repos_url":"https://api.github.com/users/Gaelan/repos","events_url":"https://api.github.com/users/Gaelan/events{/privacy}","received_events_url":"https://api.github.com/users/Gaelan/received_events","type":"User","site_admin":false},"labels":[{"id":114201833,"node_id":"MDU6TGFiZWwxMTQyMDE4MzM=","url":"https://api.github.com/repos/Microsoft/TypeScript/labels/Needs%20Proposal","name":"Needs Proposal","color":"556b75","default":false},{"id":113971155,"node_id":"MDU6TGFiZWwxMTM5NzExNTU=","url":"https://api.github.com/repos/Microsoft/TypeScript/labels/Suggestion","name":"Suggestion","color":"006b75","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":195,"created_at":"2015-09-20T06:05:50Z","updated_at":"2019-01-03T08:54:56Z","closed_at":null,"author_association":"NONE","body":"If we can get this to type check properly, we would have perfect support for boilerplate-free mixins:\n\n``` typescript\ndeclare function Blah<T>(target: T): T & {foo: number}\n\n@Blah\nclass Foo {\n    bar() {\n        return this.foo; // Property 'foo' does not exist on type 'Foo'\n    }\n}\n\nnew Foo().foo; // Property 'foo' does not exist on type 'Foo'\n```\n"},"comment":{"url":"https://api.github.com/repos/Microsoft/TypeScript/issues/comments/451084582","html_url":"https://github.com/Microsoft/TypeScript/issues/4881#issuecomment-451084582","issue_url":"https://api.github.com/repos/Microsoft/TypeScript/issues/4881","id":451084582,"node_id":"MDEyOklzc3VlQ29tbWVudDQ1MTA4NDU4Mg==","user":{"login":"AllNamesRTaken","id":479546,"node_id":"MDQ6VXNlcjQ3OTU0Ng==","avatar_url":"https://avatars2.githubusercontent.com/u/479546?v=4","gravatar_id":"","url":"https://api.github.com/users/AllNamesRTaken","html_url":"https://github.com/AllNamesRTaken","followers_url":"https://api.github.com/users/AllNamesRTaken/followers","following_url":"https://api.github.com/users/AllNamesRTaken/following{/other_user}","gists_url":"https://api.github.com/users/AllNamesRTaken/gists{/gist_id}","starred_url":"https://api.github.com/users/AllNamesRTaken/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AllNamesRTaken/subscriptions","organizations_url":"https://api.github.com/users/AllNamesRTaken/orgs","repos_url":"https://api.github.com/users/AllNamesRTaken/repos","events_url":"https://api.github.com/users/AllNamesRTaken/events{/privacy}","received_events_url":"https://api.github.com/users/AllNamesRTaken/received_events","type":"User","site_admin":false},"created_at":"2019-01-03T08:54:56Z","updated_at":"2019-01-03T08:54:56Z","author_association":"NONE","body":"@hax could you elaborate?\r\nI would really really want this and find the lack of communication on the matter saddening and haven't heard about the problems unfortunately."}}
{"actor":{"display_login":"AllNamesRTaken"}}