added return types to make autocomplete and docs easier to use