"use strict";
var __extends = (this && this.__extends) || function (d, b) {
    for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
    function __() { this.constructor = d; }
    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
var analytics_service_base_1 = require("../common/services/analytics-service-base");
var AnalyticsService = (function (_super) {
    __extends(AnalyticsService, _super);
    function AnalyticsService($logger, $options, $staticConfig, $errors, $prompter, $userSettingsService, $analyticsSettingsService, $progressIndicator, $osInfo) {
        _super.call(this, $logger, $options, $staticConfig, $errors, $prompter, $userSettingsService, $analyticsSettingsService, $progressIndicator, $osInfo);
        this.$logger = $logger;
        this.$options = $options;
    }
    AnalyticsService.prototype.checkConsentCore = function (trackFeatureUsage) {
        var _this = this;
        return (function () {
            _this.restartEqatecMonitor(AnalyticsService.ANALYTICS_FEATURE_USAGE_TRACKING_API_KEY).wait();
            _super.prototype.checkConsentCore.call(_this, trackFeatureUsage).wait();
            _this.tryStopEqatecMonitor();
        }).future()();
    };
    AnalyticsService.ANALYTICS_FEATURE_USAGE_TRACKING_API_KEY = "9912cff308334c6d9ad9c33f76a983e3";
    return AnalyticsService;
}(analytics_service_base_1.AnalyticsServiceBase));
exports.AnalyticsService = AnalyticsService;
$injector.register("analyticsService", AnalyticsService);
