fix(TextBasedChannel): return a promise in startTyping and clarify count parameter (#2047)
fix(TextBasedChannel): return a promise in startTyping and clarify count parameter (#2047)

* fix(TextBasedChannel): return a promise in startTyping

This fixes #2040

Calling TextBasedChannel#startTyping now returns a promise.
This promise resolves when the bot stops typing (TextBasedChannel#stopTyping) or rejects when an error occurs.
Calling the method again returns the same promise as long the bot is still typing.

* move code into the promise' executor

* Clarify the purpose of the returned Promise

* inverse if and clarify count parameter

Drahcirius/discord.js,appellation/discord.js,robflop/discord.js,Lewdcario/discord.js,CodeMan99/discord.js,SpaceEEC/discord.js,appellation/discord.js,CodeMan99/discord.js,Lewdcario/discord.js,SpaceEEC/discord.js,Drahcirius/discord.js,hydrabolt/discord.js,CodeMan99/discord.js,Lewdcario/discord.js,Drahcirius/discord.js,SpaceEEC/discord.js,robflop/discord.js,robflop/discord.js,hydrabolt/discord.js,hydrabolt/discord.js,appellation/discord.js