Typescript Extend Or Implement Abstract Method