message: Got Function past the compilation stage.
diff: @@ -20,6 +20,7 @@ export class MiddlewareControl {
  * @private
  * A member holding map of MiddlewareOptions
  */
  + // tslint:disable-next-line:ban-types
  private middlewareOptions: Map<Function, MiddlewareOptions>;
  /**
  @@ -30,6 +31,7 @@ export class MiddlewareControl {
  * @returns The instance of MiddlewareControl
  */
  public constructor(middlewareOptions: MiddlewareOptions[] = []) {
  + // tslint:disable-next-line:ban-types
  this.middlewareOptions = new Map<Function, MiddlewareOptions>();
  for (const option of middlewareOptions) {
  const fn = option.constructor;
  @@ -43,6 +45,7 @@ export class MiddlewareControl {
  * @param {string} name - The class name of the strongly typed option class
  * @returns The middleware option
  */
  + // tslint:disable-next-line:ban-types
  public getMiddlewareOptions(fn: Function): MiddlewareOptions {
  return this.middlewareOptions.get(fn);
  }
  @@ -54,6 +57,7 @@ export class MiddlewareControl {
  * @param {MiddlewareOptions} option - The strongly typed middleware option
  * @returns nothing
  */
  + // tslint:disable-next-line:ban-types
  public setMiddlewareOptions(fn: Function, option: MiddlewareOptions): void {
  this.middlewareOptions.set(fn, option);
  }
  