- changed description regards re-wrote in typescript (#10)