typescript example