Return 表达式类型 Promise<T> 不能分配给类型 Promise<T>?

Return expression type Promise<T> is not assignable to a type Promise<T>?

当我为下面的函数添加 javascript 文档时,它会给我一个警告说

Return expression type Promise<T> is not assignable to a type Promise<T> 

使用下面的 return defer.promise 有什么问题还是我把 return 语句放在错误的地方?

   /**
     * 
     * @param zname
     * @returns {Promise<T>}
     */
    this.setInfoFromAPI = function (name) {
        var defer = protractor.promise.defer();
        var controlFlow = protractor.promise.controlFlow();
        httpRequestUtility.getRestfulAPIToken().then(function (accessToken) {
            console.log("Access Token is " + accessToken);
            controlFlow.wait(
                getInfoFromAPI(accessToken, name).then(function (returnData) {
                    if (String(returnData).match(httpStatusCodeClientErrorRegx)) {
                        defer.reject('Get Request Error for Zone Info\nResponse Error Code - ' + returnData);
                    } else {
                        setUpInfoFromAPI(returnData);
                        defer.fulfill();
                    }
                }), 60000, 'Get Information').then(function () {
            })
        });
        return defer.promise;
    };

尝试使用更明确的 webdriver.promise.Promise 而不是 Promise:

@returns {webdriver.promise.Promise<T>}