Typescript demo