added type docs