Updated with JSDoc documentation.