Use the new fancy => arrow functions for anonymous functions and get rid self = this.
Expose then on the WebAPI method return values so promise callbacks can be added.