Needs an @param section for the opts parameter