first attempt at using typescript.