import * as Identities from "../Identities/Identities"; import * as WebApi from "../WebApi/WebApi"; export interface AccessMapping { accessPoint: string; displayName: string; moniker: string; /** * The service which owns this access mapping e.g. TFS, ELS, etc. */ serviceOwner: string; /** * Part of the access mapping which applies context after the access point of the server. */ virtualDirectory: string; } /** * Data transfer class that holds information needed to set up a connection with a VSS server. */ export interface ConnectionData { /** * The Id of the authenticated user who made this request. More information about the user can be obtained by passing this Id to the Identity service */ authenticatedUser: Identities.Identity; /** * The Id of the authorized user who made this request. More information about the user can be obtained by passing this Id to the Identity service */ authorizedUser: Identities.Identity; /** * The id for the server. */ deploymentId: string; /** * The type for the server Hosted/OnPremises. */ deploymentType: WebApi.DeploymentFlags; /** * The instance id for this host. */ instanceId: string; /** * The last user access for this instance. Null if not requested specifically. */ lastUserAccess: Date; /** * Data that the location service holds. */ locationServiceData: LocationServiceData; /** * The virtual directory of the host we are talking to. */ webApplicationRelativeDirectory: string; } export declare enum InheritLevel { None = 0, Deployment = 1, Account = 2, Collection = 4, All = 7 } export interface LocationMapping { accessMappingMoniker: string; location: string; } /** * Data transfer class used to transfer data about the location service data over the web service. */ export interface LocationServiceData { /** * Data about the access mappings contained by this location service. */ accessMappings: AccessMapping[]; /** * Data that the location service holds. */ clientCacheFresh: boolean; /** * The time to live on the location service cache. */ clientCacheTimeToLive: number; /** * The default access mapping moniker for the server. */ defaultAccessMappingMoniker: string; /** * The obsolete id for the last change that took place on the server (use LastChangeId64). */ lastChangeId: number; /** * The non-truncated 64-bit id for the last change that took place on the server. */ lastChangeId64: number; /** * Data about the service definitions contained by this location service. */ serviceDefinitions: ServiceDefinition[]; /** * The identifier of the deployment which is hosting this location data (e.g. SPS, TFS, ELS, Napa, etc.) */ serviceOwner: string; } export declare enum RelativeToSetting { Context = 0, WebApplication = 2, FullyQualified = 3 } export interface ResourceAreaInfo { id: string; locationUrl: string; name: string; } export interface ServiceDefinition { description: string; displayName: string; identifier: string; inheritLevel: InheritLevel; locationMappings: LocationMapping[]; /** * Maximum api version that this resource supports (current server version for this resource). Copied from \ApiResourceLocation\. */ maxVersion: string; /** * Minimum api version that this resource supports. Copied from \ApiResourceLocation\. */ minVersion: string; parentIdentifier: string; parentServiceType: string; properties: any; relativePath: string; relativeToSetting: RelativeToSetting; /** * The latest version of this resource location that is in "Release" (non-preview) mode. Copied from \ApiResourceLocation\. */ releasedVersion: string; /** * The current resource version supported by this resource location. Copied from \ApiResourceLocation\. */ resourceVersion: number; /** * The service which owns this definition e.g. TFS, ELS, etc. */ serviceOwner: string; serviceType: string; status: ServiceStatus; toolId: string; } export declare enum ServiceStatus { Assigned = 0, Active = 1, Moving = 2 }