Path: blob/main/extensions/copilot/src/extension/inlineEdits/common/nesTriggerHint.ts
13399 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45export enum NesTriggerReason {6SelectionChange = 'selectionChange',7ActiveDocumentSwitch = 'activeDocumentSwitch',8}910interface NesChangeHintPayload {11readonly uuid: string;12readonly reason: NesTriggerReason;13}1415export interface NesChangeHint {16readonly data: NesChangeHintPayload;17}1819export namespace NesChangeHint {20export function is(obj: unknown): obj is NesChangeHint {21if (typeof obj !== 'object' || obj === null) {22return false;23}24const maybeChangeHint = obj as NesChangeHint;25return (26typeof maybeChangeHint.data === 'object' &&27maybeChangeHint.data !== null &&28typeof (maybeChangeHint.data as NesChangeHintPayload).uuid === 'string' &&29Object.values(NesTriggerReason).includes((maybeChangeHint.data as NesChangeHintPayload).reason)30);31}32}33343536