UNPKG

vso-node-api

Version:

Node client for Visual Studio Online/TFS REST APIs

1,458 lines (1,457 loc) 37.3 kB
import DistributedTaskCommonInterfaces = require("../interfaces/DistributedTaskCommonInterfaces"); import FormInputInterfaces = require("../interfaces/common/FormInputInterfaces"); import VSSInterfaces = require("../interfaces/common/VSSInterfaces"); export declare enum AadLoginPromptOption { /** * Do not provide a prompt option */ NoOption = 0, /** * Force the user to login again. */ Login = 1, /** * Force the user to select which account they are logging in with instead of automatically picking the user up from the session state. NOTE: This does not work for switching bewtween the variants of a dual-homed user. */ SelectAccount = 2, /** * Force the user to login again. Ignore current authentication state and force the user to authenticate again. This option should be used instead of Login. */ FreshLogin = 3, } export interface AadOauthTokenRequest { refresh: boolean; resource: string; tenantId: string; token: string; } export interface AadOauthTokenResult { accessToken: string; refreshTokenCache: string; } export interface AgentChangeEvent { agent: TaskAgent; eventType: string; pool: TaskAgentPoolReference; poolId: number; timeStamp: Date; } export interface AgentJobRequestMessage extends JobRequestMessage { lockedUntil: Date; lockToken: string; requestId: number; tasks: TaskInstance[]; } export interface AgentMigrationMessage { accessToken: string; } export interface AgentPoolEvent { eventType: string; pool: TaskAgentPool; } export interface AgentQueueEvent { eventType: string; queue: TaskAgentQueue; } export interface AgentQueuesEvent { eventType: string; queues: TaskAgentQueue[]; } export interface AgentRefreshMessage { agentId: number; targetVersion: string; timeout: any; } export interface AgentRequestEvent { eventType: string; planId: string; poolId: number; reservedAgentId: number; result: TaskResult; timeStamp: Date; } export declare enum AuditAction { Add = 1, Update = 2, Delete = 3, } export interface AuthorizationHeader { name: string; value: string; } export interface AzureSpnOperationStatus { state: string; statusMessage: string; } export interface AzureSubscription { displayName: string; subscriptionId: string; subscriptionTenantId: string; subscriptionTenantName: string; } export interface AzureSubscriptionQueryResult { errorMessage: string; value: AzureSubscription[]; } export interface DataSource { endpointUrl: string; name: string; resultSelector: string; } export interface DataSourceBinding extends DistributedTaskCommonInterfaces.DataSourceBindingBase { } export interface DataSourceDetails { dataSourceName: string; dataSourceUrl: string; parameters: { [key: string]: string; }; resultSelector: string; } export interface DependencyBinding { key: string; value: string; } export interface DependencyData { input: string; map: { key: string; value: { key: string; value: string; }[]; }[]; } export interface DependsOn { input: string; map: DependencyBinding[]; } export interface DeploymentGroup extends DeploymentGroupReference { machineCount: number; machines: DeploymentMachine[]; } export declare enum DeploymentGroupActionFilter { None = 0, Manage = 2, Use = 16, } export declare enum DeploymentGroupExpands { None = 0, Machines = 2, } export interface DeploymentGroupReference { id: number; name: string; pool: TaskAgentPoolReference; project: ProjectReference; } export interface DeploymentMachine { agent: TaskAgentReference; tags: string[]; } export interface DeploymentMachineGroup extends DeploymentMachineGroupReference { machines: DeploymentMachine[]; size: number; } export interface DeploymentMachineGroupReference { id: number; name: string; pool: TaskAgentPoolReference; project: ProjectReference; } export interface DeploymentMachinesChangeEvent { machineGroupReference: DeploymentGroupReference; machines: DeploymentMachine[]; } export interface EndpointAuthorization { parameters: { [key: string]: string; }; scheme: string; } export interface EndpointUrl { dependsOn: DependsOn; displayName: string; helpText: string; isVisible: string; value: string; } export interface HelpLink { text: string; url: string; } export interface InputValidationItem { isValid: boolean; reason: string; type: string; value: string; } export interface InputValidationRequest { inputs: { [key: string]: InputValidationItem; }; } export interface Issue { category: string; data: { [key: string]: string; }; message: string; type: IssueType; } export declare enum IssueType { Error = 1, Warning = 2, } export interface JobAssignedEvent extends JobEvent { request: TaskAgentJobRequest; } export interface JobCancelMessage { jobId: string; timeout: any; } export interface JobCompletedEvent extends JobEvent { outputVariables: { [key: string]: VariableValue; }; requestId: number; result: TaskResult; } /** * Represents the context of variables and vectors for a job request. */ export interface JobEnvironment { endpoints: ServiceEndpoint[]; mask: MaskHint[]; options: { [key: string]: JobOption; }; secureFiles: SecureFile[]; /** * Gets or sets the endpoint used for communicating back to the calling service. */ systemConnection: ServiceEndpoint; variables: { [key: string]: string; }; } export interface JobEvent { jobId: string; name: string; } export interface JobEventConfig { timeout: string; } export interface JobEventsConfig { jobAssigned: JobEventConfig; jobCompleted: JobEventConfig; jobStarted: JobEventConfig; } /** * Represents an option that may affect the way an agent runs the job. */ export interface JobOption { data: { [key: string]: string; }; /** * Gets the id of the option. */ id: string; } export interface JobRequestMessage { environment: JobEnvironment; jobId: string; jobName: string; messageType: string; plan: TaskOrchestrationPlanReference; timeline: TimelineReference; } export interface JobStartedEvent extends JobEvent { } export declare enum MachineGroupActionFilter { None = 0, Manage = 2, Use = 16, } export interface MaskHint { type: MaskType; value: string; } export declare enum MaskType { Variable = 1, Regex = 2, } /** * Represents a downloadable package. */ export interface PackageMetadata { /** * The date the package was created */ createdOn: Date; /** * A direct link to download the package. */ downloadUrl: string; /** * The UI uses this to display instructions, i.e. "unzip MyAgent.zip" */ filename: string; /** * MD5 hash as a base64 string */ hashValue: string; /** * A link to documentation */ infoUrl: string; /** * The platform (win7, linux, etc.) */ platform: string; /** * The type of package (e.g. "agent") */ type: string; /** * The package version. */ version: PackageVersion; } export interface PackageVersion { major: number; minor: number; patch: number; } export interface PlanEnvironment { mask: MaskHint[]; options: { [key: string]: JobOption; }; variables: { [key: string]: string; }; } export declare enum PlanGroupStatusFilter { Running = 1, Queued = 2, All = 3, } export interface ProjectReference { id: string; name: string; } export interface ResultTransformationDetails { resultTemplate: string; } export interface SecureFile { createdBy: VSSInterfaces.IdentityRef; createdOn: Date; id: string; modifiedBy: VSSInterfaces.IdentityRef; modifiedOn: Date; name: string; properties: { [key: string]: string; }; ticket: string; } export declare enum SecureFileActionFilter { None = 0, Manage = 2, Use = 16, } export interface SendJobResponse { events: JobEventsConfig; variables: { [key: string]: string; }; } export interface ServerExecutionDefinition { events: JobEventsConfig; } export interface ServerJobRequestMessage extends JobRequestMessage { taskDefinition: TaskDefinition; taskInstance: TaskInstance; } /** * Represents an endpoint which may be used by an orchestration job. */ export interface ServiceEndpoint { administratorsGroup: VSSInterfaces.IdentityRef; /** * Gets or sets the authorization data for talking to the endpoint. */ authorization: EndpointAuthorization; /** * The Gets or sets Identity reference for the user who created the Service endpoint */ createdBy: VSSInterfaces.IdentityRef; data: { [key: string]: string; }; /** * Gets or Sets description of endpoint */ description: string; groupScopeId: string; /** * Gets or sets the identifier of this endpoint. */ id: string; /** * EndPoint state indictor */ isReady: boolean; /** * Gets or sets the friendly name of the endpoint. */ name: string; /** * Error message during creation/deletion of endpoint */ operationStatus: any; readersGroup: VSSInterfaces.IdentityRef; /** * Gets or sets the type of the endpoint. */ type: string; /** * Gets or sets the url of the endpoint. */ url: string; } export interface ServiceEndpointAuthenticationScheme { authorizationHeaders: AuthorizationHeader[]; displayName: string; inputDescriptors: FormInputInterfaces.InputDescriptor[]; scheme: string; } export interface ServiceEndpointDetails { authorization: EndpointAuthorization; data: { [key: string]: string; }; type: string; url: string; } export interface ServiceEndpointRequest { dataSourceDetails: DataSourceDetails; resultTransformationDetails: ResultTransformationDetails; serviceEndpointDetails: ServiceEndpointDetails; } export interface ServiceEndpointRequestResult { errorMessage: string; result: any; statusCode: string; } export interface ServiceEndpointType { authenticationSchemes: ServiceEndpointAuthenticationScheme[]; dataSources: DataSource[]; dependencyData: DependencyData[]; description: string; displayName: string; endpointUrl: EndpointUrl; helpLink: HelpLink; helpMarkDown: string; iconUrl: string; inputDescriptors: FormInputInterfaces.InputDescriptor[]; name: string; } export interface TaskAgent extends TaskAgentReference { /** * Gets the request which is currently assigned to this agent. */ assignedRequest: TaskAgentJobRequest; /** * Gets or sets the authorization information for this agent. */ authorization: TaskAgentAuthorization; /** * Gets the date on which this agent was created. */ createdOn: Date; /** * Gets or sets the maximum job parallelism allowed on this host. */ maxParallelism: number; /** * Gets the pending update for this agent. */ pendingUpdate: TaskAgentUpdate; properties: any; /** * Gets the date on which the last connectivity status change occurred. */ statusChangedOn: Date; systemCapabilities: { [key: string]: string; }; userCapabilities: { [key: string]: string; }; } /** * Provides data necessary for authorizing the agent using OAuth 2.0 authentication flows. */ export interface TaskAgentAuthorization { /** * Gets or sets the endpoint used to obtain access tokens from the configured token service. */ authorizationUrl: string; /** * Gets or sets the client identifier for this agent. */ clientId: string; /** * Gets or sets the public key used to verify the identity of this agent. */ publicKey: TaskAgentPublicKey; } export interface TaskAgentJobRequest { assignTime: Date; data: { [key: string]: string; }; definition: TaskOrchestrationOwner; demands: any[]; finishTime: Date; hostId: string; jobId: string; jobName: string; lockedUntil: Date; matchedAgents: TaskAgentReference[]; owner: TaskOrchestrationOwner; planId: string; planType: string; queueTime: Date; receiveTime: Date; requestId: number; reservedAgent: TaskAgentReference; result: TaskResult; scopeId: string; serviceOwner: string; } /** * Provides a contract for receiving messages from the task orchestrator. */ export interface TaskAgentMessage { /** * Gets or sets the body of the message. If the IV property is provided the body will need to be decrypted using the TaskAgentSession.EncryptionKey value in addition to the IV. */ body: string; /** * Gets or sets the intialization vector used to encrypt this message. */ iV: number[]; /** * Gets or sets the message identifier. */ messageId: number; /** * Gets or sets the message type, describing the data contract found in TaskAgentMessage.Body. */ messageType: string; } export interface TaskAgentPool extends TaskAgentPoolReference { /** * Gets the administrators group for this agent pool. */ administratorsGroup: VSSInterfaces.IdentityRef; /** * Gets or sets a value indicating whether or not a queue should be automatically provisioned for each project collection or not. */ autoProvision: boolean; /** * Gets the identity who created this pool. The creator of the pool is automatically added into the administrators group for the pool on creation. */ createdBy: VSSInterfaces.IdentityRef; /** * Gets the date/time of the pool creation. */ createdOn: Date; /** * Gets the scope identifier for groups/roles which are owned by this pool. */ groupScopeId: string; properties: any; /** * Gets a value indicating whether or not roles have been provisioned for this pool. */ provisioned: boolean; /** * Gets the service accounts group for this agent pool. */ serviceAccountsGroup: VSSInterfaces.IdentityRef; /** * Gets the current size of the pool. */ size: number; } export declare enum TaskAgentPoolActionFilter { None = 0, Manage = 2, Use = 16, } export interface TaskAgentPoolMaintenanceDefinition { /** * Enable maintenance */ enabled: boolean; /** * Id */ id: number; /** * Maintenance job timeout per agent */ jobTimeoutInMinutes: number; /** * Max percentage of agents within a pool running maintenance job at given time */ maxConcurrentAgentsPercentage: number; options: TaskAgentPoolMaintenanceOptions; /** * Pool reference for the maintenance definition */ pool: TaskAgentPoolReference; retentionPolicy: TaskAgentPoolMaintenanceRetentionPolicy; scheduleSetting: TaskAgentPoolMaintenanceSchedule; } export interface TaskAgentPoolMaintenanceJob { /** * The maintenance definition for the maintenance job */ definitionId: number; /** * The total error counts during the maintenance job */ errorCount: number; /** * Time that the maintenance job was completed */ finishTime: Date; /** * Id of the maintenance job */ jobId: number; /** * The log download url for the maintenance job */ logsDownloadUrl: string; /** * Orchestration/Plan Id for the maintenance job */ orchestrationId: string; /** * Pool reference for the maintenance job */ pool: TaskAgentPoolReference; /** * Time that the maintenance job was queued */ queueTime: Date; /** * The identity that queued the maintenance job */ requestedBy: VSSInterfaces.IdentityRef; /** * The maintenance job result */ result: TaskAgentPoolMaintenanceJobResult; /** * Time that the maintenance job was started */ startTime: Date; /** * Status of the maintenance job */ status: TaskAgentPoolMaintenanceJobStatus; targetAgents: TaskAgentReference[]; /** * The total warning counts during the maintenance job */ warningCount: number; } export declare enum TaskAgentPoolMaintenanceJobResult { Succeeded = 1, Failed = 2, Canceled = 4, } export declare enum TaskAgentPoolMaintenanceJobStatus { InProgress = 1, Completed = 2, Cancelling = 4, Queued = 8, } export interface TaskAgentPoolMaintenanceOptions { /** * time to consider a System.DefaultWorkingDirectory is stale */ workingDirectoryExpirationInDays: number; } export interface TaskAgentPoolMaintenanceRetentionPolicy { /** * Number of records to keep for maintenance job executed with this definition. */ numberOfHistoryRecordsToKeep: number; } export interface TaskAgentPoolMaintenanceSchedule { /** * Days for a build (flags enum for days of the week) */ daysToBuild: TaskAgentPoolMaintenanceScheduleDays; /** * The Job Id of the Scheduled job that will queue the pool maintenance job. */ scheduleJobId: string; /** * Local timezone hour to start */ startHours: number; /** * Local timezone minute to start */ startMinutes: number; /** * Time zone of the build schedule (string representation of the time zone id) */ timeZoneId: string; } export declare enum TaskAgentPoolMaintenanceScheduleDays { /** * Do not run. */ None = 0, /** * Run on Monday. */ Monday = 1, /** * Run on Tuesday. */ Tuesday = 2, /** * Run on Wednesday. */ Wednesday = 4, /** * Run on Thursday. */ Thursday = 8, /** * Run on Friday. */ Friday = 16, /** * Run on Saturday. */ Saturday = 32, /** * Run on Sunday. */ Sunday = 64, /** * Run on all days of the week. */ All = 127, } export interface TaskAgentPoolReference { id: number; /** * Gets or sets a value indicating whether or not this pool is managed by the service. */ isHosted: boolean; name: string; /** * Gets or sets the type of the pool */ poolType: TaskAgentPoolType; scope: string; } export declare enum TaskAgentPoolType { Automation = 1, Deployment = 2, } /** * Represents the public key portion of an RSA asymmetric key. */ export interface TaskAgentPublicKey { /** * Gets or sets the exponent for the public key. */ exponent: number[]; /** * Gets or sets the modulus for the public key. */ modulus: number[]; } export interface TaskAgentQueue { groupScopeId: string; id: number; name: string; pool: TaskAgentPoolReference; projectId: string; provisioned: boolean; } export declare enum TaskAgentQueueActionFilter { None = 0, Manage = 2, Use = 16, } export interface TaskAgentReference { _links: any; /** * Gets or sets a value indicating whether or not this agent should be enabled for job execution. */ enabled: boolean; /** * Gets the identifier of the agent. */ id: number; /** * Gets the name of the agent. */ name: string; /** * Gets the current connectivity status of the agent. */ status: TaskAgentStatus; /** * Gets the version of the agent. */ version: string; } /** * Represents a session for performing message exchanges from an agent. */ export interface TaskAgentSession { /** * Gets or sets the agent which is the target of the session. */ agent: TaskAgentReference; /** * Gets the key used to encrypt message traffic for this session. */ encryptionKey: TaskAgentSessionKey; /** * Gets or sets the owner name of this session. Generally this will be the machine of origination. */ ownerName: string; /** * Gets the unique identifier for this session. */ sessionId: string; systemCapabilities: { [key: string]: string; }; } /** * Represents a symmetric key used for message-level encryption for communication sent to an agent. */ export interface TaskAgentSessionKey { /** * Gets or sets a value indicating whether or not the key value is encrypted. If this value is true, the property should be decrypted using the RSA key exchanged with the server during registration. */ encrypted: boolean; /** * Gets or sets the symmetric key value. */ value: number[]; } export declare enum TaskAgentStatus { Offline = 1, Online = 2, } export interface TaskAgentUpdate { /** * The current state of this agent update */ currentState: string; /** * The identity that request the agent update */ requestedBy: VSSInterfaces.IdentityRef; /** * Gets the date on which this agent update was requested. */ requestTime: Date; /** * Gets or sets the source agent version of the agent update */ sourceVersion: PackageVersion; /** * Gets or sets the target agent version of the agent update */ targetVersion: PackageVersion; } export interface TaskAttachment { _links: any; createdOn: Date; lastChangedBy: string; lastChangedOn: Date; name: string; recordId: string; timelineId: string; type: string; } export interface TaskChangeEvent { } export interface TaskDefinition { agentExecution: TaskExecution; author: string; category: string; contentsUploaded: boolean; contributionIdentifier: string; contributionVersion: string; dataSourceBindings: DataSourceBinding[]; definitionType: string; demands: any[]; description: string; disabled: boolean; execution: { [key: string]: any; }; friendlyName: string; groups: TaskGroupDefinition[]; helpMarkDown: string; hostType: string; iconUrl: string; id: string; inputs: TaskInputDefinition[]; instanceNameFormat: string; minimumAgentVersion: string; name: string; packageLocation: string; packageType: string; preview: boolean; releaseNotes: string; runsOn: string[]; serverOwned: boolean; sourceDefinitions: TaskSourceDefinition[]; sourceLocation: string; version: TaskVersion; visibility: string[]; } export interface TaskDefinitionEndpoint { /** * An ID that identifies a service connection to be used for authenticating endpoint requests. */ connectionId: string; /** * An Json based keyselector to filter response returned by fetching the endpoint Url.A Json based keyselector must be prefixed with "jsonpath:". KeySelector can be used to specify the filter to get the keys for the values specified with Selector. The following keyselector defines an Json for extracting nodes named 'ServiceName'. endpoint.KeySelector = "jsonpath://ServiceName"; */ keySelector: string; /** * The scope as understood by Connected Services. Essentialy, a project-id for now. */ scope: string; /** * An XPath/Json based selector to filter response returned by fetching the endpoint Url. An XPath based selector must be prefixed with the string "xpath:". A Json based selector must be prefixed with "jsonpath:". The following selector defines an XPath for extracting nodes named 'ServiceName'. endpoint.Selector = "xpath://ServiceName"; */ selector: string; /** * TaskId that this endpoint belongs to. */ taskId: string; /** * URL to GET. */ url: string; } export interface TaskDefinitionReference { definitionType: string; id: string; versionSpec: string; } export declare enum TaskDefinitionStatus { Preinstalled = 1, ReceivedInstallOrUpdate = 2, Installed = 3, ReceivedUninstall = 4, Uninstalled = 5, RequestedUpdate = 6, Updated = 7, AlreadyUpToDate = 8, InlineUpdateReceived = 9, } export interface TaskExecution { /** * The utility task to run. Specifying this means that this task definition is simply a meta task to call another task. This is useful for tasks that call utility tasks like powershell and commandline */ execTask: TaskReference; /** * If a task is going to run code, then this provides the type/script etc... information by platform. For example, it might look like. net45: { typeName: "Microsoft.TeamFoundation.Automation.Tasks.PowerShellTask", assemblyName: "Microsoft.TeamFoundation.Automation.Tasks.PowerShell.dll" } net20: { typeName: "Microsoft.TeamFoundation.Automation.Tasks.PowerShellTask", assemblyName: "Microsoft.TeamFoundation.Automation.Tasks.PowerShell.dll" } java: { jar: "powershelltask.tasks.automation.teamfoundation.microsoft.com", } node: { script: "powershellhost.js", } */ platformInstructions: { [key: string]: { [key: string]: string; }; }; } export interface TaskGroup extends TaskDefinition { comment: string; createdBy: VSSInterfaces.IdentityRef; createdOn: Date; modifiedBy: VSSInterfaces.IdentityRef; modifiedOn: Date; owner: string; revision: number; tasks: TaskGroupStep[]; } export interface TaskGroupDefinition { displayName: string; isExpanded: boolean; name: string; tags: string[]; visibleRule: string; } export interface TaskGroupRevision { changedBy: VSSInterfaces.IdentityRef; changedDate: Date; changeType: AuditAction; comment: string; fileId: number; revision: number; taskGroupId: string; } export interface TaskGroupStep { alwaysRun: boolean; continueOnError: boolean; displayName: string; enabled: boolean; inputs: { [key: string]: string; }; task: TaskDefinitionReference; timeoutInMinutes: number; } export interface TaskHubLicenseDetails { enterpriseUsersCount: number; freeLicenseCount: number; hasLicenseCountEverUpdated: boolean; hostedAgentMinutesFreeCount: number; hostedAgentMinutesUsedCount: number; msdnUsersCount: number; purchasedHostedLicenseCount: number; purchasedLicenseCount: number; totalLicenseCount: number; } export interface TaskInputDefinition extends DistributedTaskCommonInterfaces.TaskInputDefinitionBase { } export interface TaskInstance extends TaskReference { alwaysRun: boolean; condition: string; continueOnError: boolean; displayName: string; enabled: boolean; instanceId: string; timeoutInMinutes: number; } export interface TaskLog extends TaskLogReference { createdOn: Date; indexLocation: string; lastChangedOn: Date; lineCount: number; path: string; } export interface TaskLogReference { id: number; location: string; } export interface TaskOrchestrationContainer extends TaskOrchestrationItem { children: TaskOrchestrationItem[]; continueOnError: boolean; data: { [key: string]: string; }; maxConcurrency: number; parallel: boolean; rollback: TaskOrchestrationContainer; } export interface TaskOrchestrationItem { itemType: TaskOrchestrationItemType; } export declare enum TaskOrchestrationItemType { Container = 0, Job = 1, } export interface TaskOrchestrationJob extends TaskOrchestrationItem { demands: any[]; executeAs: VSSInterfaces.IdentityRef; executionMode: string; executionTimeout: any; instanceId: string; name: string; tasks: TaskInstance[]; variables: { [key: string]: string; }; } export interface TaskOrchestrationOwner { _links: any; id: number; name: string; } export interface TaskOrchestrationPlan extends TaskOrchestrationPlanReference { environment: PlanEnvironment; finishTime: Date; implementation: TaskOrchestrationContainer; planGroup: string; requestedById: string; requestedForId: string; result: TaskResult; resultCode: string; startTime: Date; state: TaskOrchestrationPlanState; timeline: TimelineReference; } export interface TaskOrchestrationPlanReference { artifactLocation: string; artifactUri: string; definition: TaskOrchestrationOwner; owner: TaskOrchestrationOwner; planId: string; planType: string; scopeIdentifier: string; version: number; } export declare enum TaskOrchestrationPlanState { InProgress = 1, Queued = 2, Completed = 4, } export interface TaskOrchestrationQueuedPlan { assignTime: Date; definition: TaskOrchestrationOwner; owner: TaskOrchestrationOwner; planGroup: string; planId: string; poolId: number; queuePosition: number; queueTime: Date; scopeIdentifier: string; } export interface TaskOrchestrationQueuedPlanGroup { definition: TaskOrchestrationOwner; owner: TaskOrchestrationOwner; planGroup: string; plans: TaskOrchestrationQueuedPlan[]; project: ProjectReference; queuePosition: number; } export interface TaskPackageMetadata { /** * Gets the name of the package. */ type: string; /** * Gets the url of the package. */ url: string; /** * Gets the version of the package. */ version: string; } export interface TaskReference { id: string; inputs: { [key: string]: string; }; name: string; version: string; } export declare enum TaskResult { Succeeded = 0, SucceededWithIssues = 1, Failed = 2, Canceled = 3, Skipped = 4, Abandoned = 5, } export interface TaskSourceDefinition extends DistributedTaskCommonInterfaces.TaskSourceDefinitionBase { } export interface TaskVersion { isTest: boolean; major: number; minor: number; patch: number; } export interface Timeline extends TimelineReference { lastChangedBy: string; lastChangedOn: Date; records: TimelineRecord[]; } export interface TimelineRecord { changeId: number; currentOperation: string; details: TimelineReference; errorCount: number; finishTime: Date; id: string; issues: Issue[]; lastModified: Date; location: string; log: TaskLogReference; name: string; order: number; parentId: string; percentComplete: number; result: TaskResult; resultCode: string; startTime: Date; state: TimelineRecordState; task: TaskReference; type: string; warningCount: number; workerName: string; } export declare enum TimelineRecordState { Pending = 0, InProgress = 1, Completed = 2, } export interface TimelineReference { changeId: number; id: string; location: string; } export interface VariableGroup { createdBy: VSSInterfaces.IdentityRef; createdOn: Date; description: string; id: number; modifiedBy: VSSInterfaces.IdentityRef; modifiedOn: Date; name: string; variables: { [key: string]: VariableValue; }; } export declare enum VariableGroupActionFilter { None = 0, Manage = 2, Use = 16, } export interface VariableValue { isSecret: boolean; value: string; } export declare var TypeInfo: { AadLoginPromptOption: { enumValues: { "noOption": number; "login": number; "selectAccount": number; "freshLogin": number; }; }; AgentChangeEvent: any; AgentJobRequestMessage: any; AgentPoolEvent: any; AgentQueueEvent: any; AgentQueuesEvent: any; AgentRequestEvent: any; AuditAction: { enumValues: { "add": number; "update": number; "delete": number; }; }; DeploymentGroup: any; DeploymentGroupActionFilter: { enumValues: { "none": number; "manage": number; "use": number; }; }; DeploymentGroupExpands: { enumValues: { "none": number; "machines": number; }; }; DeploymentGroupReference: any; DeploymentMachine: any; DeploymentMachineGroup: any; DeploymentMachineGroupReference: any; DeploymentMachinesChangeEvent: any; Issue: any; IssueType: { enumValues: { "error": number; "warning": number; }; }; JobAssignedEvent: any; JobCompletedEvent: any; JobEnvironment: any; JobRequestMessage: any; MachineGroupActionFilter: { enumValues: { "none": number; "manage": number; "use": number; }; }; MaskHint: any; MaskType: { enumValues: { "variable": number; "regex": number; }; }; PackageMetadata: any; PlanEnvironment: any; PlanGroupStatusFilter: { enumValues: { "running": number; "queued": number; "all": number; }; }; SecureFile: any; SecureFileActionFilter: { enumValues: { "none": number; "manage": number; "use": number; }; }; ServerJobRequestMessage: any; ServiceEndpointAuthenticationScheme: any; ServiceEndpointRequestResult: any; ServiceEndpointType: any; TaskAgent: any; TaskAgentJobRequest: any; TaskAgentPool: any; TaskAgentPoolActionFilter: { enumValues: { "none": number; "manage": number; "use": number; }; }; TaskAgentPoolMaintenanceDefinition: any; TaskAgentPoolMaintenanceJob: any; TaskAgentPoolMaintenanceJobResult: { enumValues: { "succeeded": number; "failed": number; "canceled": number; }; }; TaskAgentPoolMaintenanceJobStatus: { enumValues: { "inProgress": number; "completed": number; "cancelling": number; "queued": number; }; }; TaskAgentPoolMaintenanceSchedule: any; TaskAgentPoolMaintenanceScheduleDays: { enumValues: { "none": number; "monday": number; "tuesday": number; "wednesday": number; "thursday": number; "friday": number; "saturday": number; "sunday": number; "all": number; }; }; TaskAgentPoolReference: any; TaskAgentPoolType: { enumValues: { "automation": number; "deployment": number; }; }; TaskAgentQueue: any; TaskAgentQueueActionFilter: { enumValues: { "none": number; "manage": number; "use": number; }; }; TaskAgentReference: any; TaskAgentSession: any; TaskAgentStatus: { enumValues: { "offline": number; "online": number; }; }; TaskAgentUpdate: any; TaskAttachment: any; TaskDefinitionStatus: { enumValues: { "preinstalled": number; "receivedInstallOrUpdate": number; "installed": number; "receivedUninstall": number; "uninstalled": number; "requestedUpdate": number; "updated": number; "alreadyUpToDate": number; "inlineUpdateReceived": number; }; }; TaskGroup: any; TaskGroupRevision: any; TaskLog: any; TaskOrchestrationContainer: any; TaskOrchestrationItem: any; TaskOrchestrationItemType: { enumValues: { "container": number; "job": number; }; }; TaskOrchestrationJob: any; TaskOrchestrationPlan: any; TaskOrchestrationPlanState: { enumValues: { "inProgress": number; "queued": number; "completed": number; }; }; TaskOrchestrationQueuedPlan: any; TaskOrchestrationQueuedPlanGroup: any; TaskResult: { enumValues: { "succeeded": number; "succeededWithIssues": number; "failed": number; "canceled": number; "skipped": number; "abandoned": number; }; }; Timeline: any; TimelineRecord: any; TimelineRecordState: { enumValues: { "pending": number; "inProgress": number; "completed": number; }; }; VariableGroup: any; VariableGroupActionFilter: { enumValues: { "none": number; "manage": number; "use": number; }; }; };