/*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the Source EULA. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ import { IConnectionProfile } from 'sql/platform/connection/common/interfaces'; import { IConnectionProfileGroup, ConnectionProfileGroup } from 'sql/platform/connection/common/connectionProfileGroup'; import { ConnectionProfile } from 'sql/platform/connection/common/connectionProfile'; /** * Interface for a configuration file that stores connection profiles. * * @export */ export interface IConnectionConfig { addConnection(profile: IConnectionProfile): Promise; addGroup(profileGroup: IConnectionProfileGroup): Promise; getConnections(getWorkspaceConnections: boolean): ConnectionProfile[]; getAllGroups(): IConnectionProfileGroup[]; changeGroupIdForConnectionGroup(source: ConnectionProfileGroup, target: ConnectionProfileGroup): Promise; changeGroupIdForConnection(source: ConnectionProfile, targetGroupId: string): Promise; editGroup(group: ConnectionProfileGroup): Promise; deleteConnection(profile: ConnectionProfile): Promise; deleteGroup(group: ConnectionProfileGroup): Promise; canChangeConnectionConfig(profile: ConnectionProfile, newGroupID: string): boolean; }