@sussudio/platform
Version:
Internal APIs for VS Code's service injection the base services.
65 lines (63 loc) • 3.2 kB
text/typescript
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { IConfigurationService } from '../../configuration/common/configuration.mjs';
import { IProductService } from '../../product/common/productService.mjs';
import { ClassifiedEvent, IGDPRProperty, OmitMetadata, StrictPropertyCheck } from './gdprTypings.mjs';
import { ITelemetryData, ITelemetryService, TelemetryLevel } from './telemetry.mjs';
import { ITelemetryServiceConfig, TelemetryService } from './telemetryService.mjs';
export interface IServerTelemetryService extends ITelemetryService {
updateInjectedTelemetryLevel(telemetryLevel: TelemetryLevel): Promise<void>;
}
export declare class ServerTelemetryService extends TelemetryService implements IServerTelemetryService {
private _injectedTelemetryLevel;
constructor(
config: ITelemetryServiceConfig,
injectedTelemetryLevel: TelemetryLevel,
_configurationService: IConfigurationService,
_productService: IProductService,
);
publicLog(eventName: string, data?: ITelemetryData): Promise<void>;
publicLog2<E extends ClassifiedEvent<OmitMetadata<T>> = never, T extends IGDPRProperty = never>(
eventName: string,
data?: StrictPropertyCheck<T, E>,
): Promise<void>;
publicLogError(errorEventName: string, data?: ITelemetryData): Promise<void>;
publicLogError2<E extends ClassifiedEvent<OmitMetadata<T>> = never, T extends IGDPRProperty = never>(
eventName: string,
data?: StrictPropertyCheck<T, E>,
): Promise<void>;
updateInjectedTelemetryLevel(telemetryLevel: TelemetryLevel): Promise<void>;
}
export declare const ServerNullTelemetryService: {
updateInjectedTelemetryLevel(): Promise<void>;
readonly _serviceBrand: undefined;
readonly sendErrorTelemetry: false;
publicLog(eventName: string, data?: ITelemetryData | undefined): Promise<undefined>;
publicLog2<E extends ClassifiedEvent<OmitMetadata<T>> = never, T extends IGDPRProperty = never>(
eventName: string,
data?:
| import('./gdprTypings.mjs').StrictPropertyChecker<
E,
ClassifiedEvent<OmitMetadata<T>>,
import('vs/platform/telemetry/common/gdprTypings').StrictPropertyCheckError
>
| undefined,
): Promise<undefined>;
publicLogError(eventName: string, data?: ITelemetryData | undefined): Promise<undefined>;
publicLogError2<E_1 extends ClassifiedEvent<OmitMetadata<T_1>> = never, T_1 extends IGDPRProperty = never>(
eventName: string,
data?:
| import('./gdprTypings.mjs').StrictPropertyChecker<
E_1,
ClassifiedEvent<OmitMetadata<T_1>>,
import('vs/platform/telemetry/common/gdprTypings').StrictPropertyCheckError
>
| undefined,
): Promise<undefined>;
setExperimentProperty(): void;
telemetryLevel: TelemetryLevel;
getTelemetryInfo(): Promise<import('./telemetry.mjs').ITelemetryInfo>;
};
export declare const IServerTelemetryService: import('../../instantiation/common/instantiation.mjs').ServiceIdentifier<IServerTelemetryService>;