/*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the Source EULA. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ import { NotificationType, RequestType } from 'vscode-languageclient'; import * as telemetry from '@microsoft/ads-extension-telemetry'; import * as azdata from 'azdata'; // ------------------------------- < Telemetry Sent Event > ------------------------------------ /** * Event sent when the language service send a telemetry event */ export namespace TelemetryNotification { export const type = new NotificationType('telemetry/sqlevent'); } /** * Update event parameters */ export class TelemetryParams { public params!: { eventName: string; properties: telemetry.TelemetryEventProperties; measures: telemetry.TelemetryEventMeasures; }; } // ------------------------------- ---------------------------------- // ------------------------------- < Security Token Request > ------------------------------------------ export interface RequestSecurityTokenParams { authority: string; provider: string; resource: string; accountId: string; } export interface RequestSecurityTokenResponse { accountKey: string; token: string; } export namespace SecurityTokenRequest { export const type = new RequestType('account/securityTokenRequest'); } // ------------------------------- ------------------------------------------ // ------------------------------- ----------------------------- export namespace SerializeDataStartRequest { export const type = new RequestType('serialize/start'); } export namespace SerializeDataContinueRequest { export const type = new RequestType('serialize/continue'); } // ------------------------------- ----------------------------- // ------------------------------- < Load Completion Extension Request > ------------------------------------ /** * Completion extension load parameters */ export class CompletionExtensionParams { /// /// Absolute path for the assembly containing the completion extension /// public assemblyPath?: string; /// /// The type name for the completion extension /// public typeName?: string; /// /// Property bag for initializing the completion extension /// public properties?: {}; } export namespace CompletionExtLoadRequest { export const type = new RequestType('completion/extLoad'); }