mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-16 10:58:30 -05:00
data workspace extension batch 2 (#12208)
* work in progress * load projects in view and test cases * update scope * make the sql proj menu available in workspace view * add extension unit test * address comments * fix errors
This commit is contained in:
59
extensions/data-workspace/src/dataworkspace.d.ts
vendored
Normal file
59
extensions/data-workspace/src/dataworkspace.d.ts
vendored
Normal file
@@ -0,0 +1,59 @@
|
||||
/*---------------------------------------------------------------------------------------------
|
||||
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
* Licensed under the Source EULA. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
|
||||
declare module 'dataworkspace' {
|
||||
import * as vscode from 'vscode';
|
||||
export const enum extension {
|
||||
name = 'Microsoft.data-workspace'
|
||||
}
|
||||
|
||||
/**
|
||||
* dataworkspace extension
|
||||
*/
|
||||
export interface IExtension {
|
||||
/**
|
||||
* register a project provider
|
||||
* @param provider new project provider
|
||||
* @requires a disposable object, upon disposal, the provider will be unregistered.
|
||||
*/
|
||||
registerProjectProvider(provider: IProjectProvider): vscode.Disposable;
|
||||
}
|
||||
|
||||
/**
|
||||
* Defines the capabilities of project provider
|
||||
*/
|
||||
export interface IProjectProvider {
|
||||
/**
|
||||
* Gets the tree data provider for the given project file
|
||||
* @param projectFilePath The full path of the project file
|
||||
*/
|
||||
getProjectTreeDataProvider(projectFilePath: string): Promise<vscode.TreeDataProvider<any>>;
|
||||
|
||||
/**
|
||||
* Gets the supported project types
|
||||
*/
|
||||
readonly supportedProjectTypes: IProjectType[];
|
||||
}
|
||||
|
||||
/**
|
||||
* Defines the project type
|
||||
*/
|
||||
export interface IProjectType {
|
||||
/**
|
||||
* display name of the project type
|
||||
*/
|
||||
readonly displayName: string;
|
||||
|
||||
/**
|
||||
* project file extension, e.g. sqlproj
|
||||
*/
|
||||
readonly projectFileExtension: string;
|
||||
|
||||
/**
|
||||
* Gets the icon path of the project type
|
||||
*/
|
||||
readonly icon: string | vscode.Uri | { light: string | vscode.Uri, dark: string | vscode.Uri }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user