/*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ 'use strict'; import { TPromise } from 'vs/base/common/winjs.base'; import { createDecorator } from 'vs/platform/instantiation/common/instantiation'; export const ITelemetryService = createDecorator('telemetryService'); export interface ITelemetryInfo { sessionId: string; machineId: string; instanceId: string; } export interface ITelemetryData { from?: string; target?: string; [key: string]: any; } export interface ITelemetryService { _serviceBrand: any; /** * Sends a telemetry event that has been privacy approved. * Do not call this unless you have been given approval. */ publicLog(eventName: string, data?: ITelemetryData, anonymizeFilePaths?: boolean): TPromise; getTelemetryInfo(): TPromise; isOptedIn: boolean; }