import { JsonObject } from '../../base/json';
import { PlainVersionedObject, VersionedObject, VersionedObjectHandlers } from '../../base/versioned-object';
export interface AzureConnectionSettings extends JsonObject {
    tenantId: string;
    subscriptionId: string;
    resourceGroup: string;
    virtualMachine: string;
}
/**
 * Defines the common connection settings object that is shared throughout the connection's tools.
 */
export declare class CommonConnectionSettings extends VersionedObject {
    private static propertyNames;
    get azureInfo(): AzureConnectionSettings;
    set azureInfo(value: AzureConnectionSettings);
    /**
     * Getter for the latest version of the common application settings
     */
    get latestVersion(): number;
    constructor(objectWrapper: PlainVersionedObject, handlers: VersionedObjectHandlers);
    /**
     * Attempts to upgrade the current version of the object at least one version toward the latest version.
     * if this.currentVersion is null or undefined, then the upgrade should initialize to the latest version
     * this is called iteratively until the current version is equal to the latest version
     */
    protected upgrade(): void;
}
