mirror of
https://github.com/microsoft/vscode.git
synced 2025-12-24 12:19:20 +00:00
39 lines
1.6 KiB
TypeScript
39 lines
1.6 KiB
TypeScript
/*---------------------------------------------------------------------------------------------
|
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
*--------------------------------------------------------------------------------------------*/
|
|
|
|
declare module 'vscode' {
|
|
|
|
// https://github.com/microsoft/vscode/issues/84899
|
|
|
|
/**
|
|
* The contiguous set of modified lines in a diff.
|
|
*/
|
|
export interface LineChange {
|
|
readonly originalStartLineNumber: number;
|
|
readonly originalEndLineNumber: number;
|
|
readonly modifiedStartLineNumber: number;
|
|
readonly modifiedEndLineNumber: number;
|
|
}
|
|
|
|
export namespace commands {
|
|
|
|
/**
|
|
* Registers a diff information command that can be invoked via a keyboard shortcut,
|
|
* a menu item, an action, or directly.
|
|
*
|
|
* Diff information commands are different from ordinary {@link commands.registerCommand commands} as
|
|
* they only execute when there is an active diff editor when the command is called, and the diff
|
|
* information has been computed. Also, the command handler of an editor command has access to
|
|
* the diff information.
|
|
*
|
|
* @param command A unique identifier for the command.
|
|
* @param callback A command handler function with access to the {@link LineChange diff information}.
|
|
* @param thisArg The `this` context used when invoking the handler function.
|
|
* @return Disposable which unregisters this command on disposal.
|
|
*/
|
|
export function registerDiffInformationCommand(command: string, callback: (diff: LineChange[], ...args: any[]) => any, thisArg?: any): Disposable;
|
|
}
|
|
}
|