fix jsdoc, add @readonly