import * as DistributedTaskCommon from "../DistributedTaskCommon/DistributedTaskCommon";
import * as FormInput from "../FormInput/FormInput";
import * as WebApi from "../WebApi/WebApi";
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 between 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,
/**
* Force the user to login again with mfa. \ Ignore current authentication state and force the user to authenticate again. This option should be used instead of Login, if MFA is required. \
*/
FreshLoginWithMfa = 4
}
export interface AadOauthTokenRequest {
refresh: boolean;
resource: string;
tenantId: string;
token: string;
}
export interface AadOauthTokenResult {
accessToken: string;
refreshTokenCache: string;
}
export declare enum AccessTokenRequestType {
None = 0,
Oauth = 1,
Direct = 2
}
export interface AuthConfiguration extends OAuthConfiguration {
/**
* Gets or sets parameters contained in configuration object.
*/
parameters: {
[key: string]: Parameter;
};
}
/**
* Specifies the authentication scheme to be used for authentication.
*/
export interface AuthenticationSchemeReference {
/**
* Gets or sets the key and value of the fields used for authentication.
*/
inputs: {
[key: string]: string;
};
/**
* Gets or sets the type of authentication scheme of an endpoint.
*/
type: string;
}
/**
* Represents the header of the REST request.
*/
export interface AuthorizationHeader {
/**
* Gets or sets the name of authorization header.
*/
name: string;
/**
* Gets or sets the value of authorization header.
*/
value: string;
}
export interface AzureAppService {
id: string;
name: string;
}
export interface AzureKeyVaultPermission extends AzureResourcePermission {
vault: string;
}
export interface AzureManagedIdentity {
clientId: string;
id: string;
name: string;
}
/**
* Azure Management Group
*/
export interface AzureManagementGroup {
/**
* Display name of azure management group
*/
displayName: string;
/**
* Id of azure management group
*/
id: string;
/**
* Azure management group name
*/
name: string;
/**
* Id of tenant from which azure management group belogs
*/
tenantId: string;
}
/**
* Azure management group query result
*/
export interface AzureManagementGroupQueryResult {
/**
* Error message in case of an exception
*/
errorMessage: string;
/**
* List of azure management groups
*/
value: AzureManagementGroup[];
}
export interface AzureMLWorkspace {
id: string;
location: string;
name: string;
}
export interface AzurePermission {
provisioned: boolean;
resourceProvider: string;
}
export interface AzureResourcePermission extends AzurePermission {
resourceGroup: string;
}
export interface AzureRoleAssignmentPermission extends AzurePermission {
roleAssignmentId: string;
}
export interface AzureSpnOperationStatus {
errorCode: SpnEndpointErrorCode;
severity: string;
state: string;
statusMessage: string;
}
export interface AzureSubscription {
displayName: string;
subscriptionId: string;
subscriptionTenantId: string;
subscriptionTenantName: string;
}
export interface AzureSubscriptionQueryResult {
errorMessage: string;
value: AzureSubscription[];
}
/**
* Specifies the client certificate to be used for the endpoint request.
*/
export interface ClientCertificate {
/**
* Gets or sets the value of client certificate.
*/
value: string;
}
/**
* Specifies the data sources for this endpoint.
*/
export interface DataSource {
/**
* Gets or sets the authentication scheme for the endpoint request.
*/
authenticationScheme: AuthenticationSchemeReference;
/**
* Gets or sets the pagination format supported by this data source(ContinuationToken/SkipTop).
*/
callbackContextTemplate: string;
/**
* Gets or sets the template to check if subsequent call is needed.
*/
callbackRequiredTemplate: string;
/**
* Gets or sets the endpoint url of the data source.
*/
endpointUrl: string;
/**
* Gets or sets the authorization headers of the request.
*/
headers: AuthorizationHeader[];
/**
* Gets or sets the initial value of the query params.
*/
initialContextTemplate: string;
/**
* Gets or sets the name of the data source.
*/
name: string;
/**
* Gets or sets the request content of the endpoint request.
*/
requestContent: string;
/**
* Gets or sets the request method of the endpoint request.
*/
requestVerb: string;
/**
* Gets or sets the resource url of the endpoint request.
*/
resourceUrl: string;
/**
* Gets or sets the result selector to filter the response of the endpoint request.
*/
resultSelector: string;
}
/**
* Represents the data source binding of the endpoint.
*/
export interface DataSourceBinding extends DistributedTaskCommon.DataSourceBindingBase {
}
/**
* Represents details of the service endpoint data source.
*/
export interface DataSourceDetails {
/**
* Gets or sets the data source name.
*/
dataSourceName: string;
/**
* Gets or sets the data source url.
*/
dataSourceUrl: string;
/**
* Gets or sets the request headers.
*/
headers: AuthorizationHeader[];
/**
* Gets or sets the initialization context used for the initial call to the data source
*/
initialContextTemplate: string;
/**
* Gets the parameters of data source.
*/
parameters: {
[key: string]: string;
};
/**
* Gets or sets the data source request content.
*/
requestContent: string;
/**
* Gets or sets the data source request verb. Get/Post are the only implemented types
*/
requestVerb: string;
/**
* Gets or sets the resource url of data source.
*/
resourceUrl: string;
/**
* Gets or sets the result selector.
*/
resultSelector: string;
}
/**
* Represents the details of the input on which a given input is dependent.
*/
export interface DependencyBinding {
/**
* Gets or sets the value of the field on which url is dependent.
*/
key: string;
/**
* Gets or sets the corresponding value of url.
*/
value: string;
}
/**
* Represents the dependency data for the endpoint inputs.
*/
export interface DependencyData {
/**
* Gets or sets the category of dependency data.
*/
input: string;
/**
* Gets or sets the key-value pair to specify properties and their values.
*/
map: {
key: string;
value: {
key: string;
value: string;
}[];
}[];
}
/**
* Represents the inputs on which any given input is dependent.
*/
export interface DependsOn {
/**
* Gets or sets the ID of the field on which URL's value is dependent.
*/
input: string;
/**
* Gets or sets key-value pair containing other's field value and corresponding url value.
*/
map: DependencyBinding[];
}
/**
* Represents the authorization used for service endpoint.
*/
export interface EndpointAuthorization {
/**
* Gets or sets the parameters for the selected authorization scheme.
*/
parameters: {
[key: string]: string;
};
/**
* Gets or sets the scheme used for service endpoint authentication.
*/
scheme: string;
}
export interface EndpointOperationStatus {
state: string;
statusMessage: string;
}
/**
* Represents url of the service endpoint.
*/
export interface EndpointUrl {
/**
* Gets or sets the dependency bindings.
*/
dependsOn: DependsOn;
/**
* Gets or sets the display name of service endpoint url.
*/
displayName: string;
/**
* Gets or sets the format of the url.
*/
format: string;
/**
* Gets or sets the help text of service endpoint url.
*/
helpText: string;
/**
* Gets or sets the visibility of service endpoint url.
*/
isVisible: string;
/**
* Gets or sets the value of service endpoint url.
*/
value: string;
}
/**
* Specifies the public url of the help documentation.
*/
export interface HelpLink {
/**
* Gets or sets the help text.
*/
text: string;
/**
* Gets or sets the public url of the help documentation.
*/
url: string;
}
export interface OAuth2TokenResult {
accessToken: string;
error: string;
errorDescription: string;
expiresIn: string;
issuedAt: string;
refreshToken: string;
scope: string;
}
export interface OAuthConfiguration {
/**
* Gets or sets the ClientId
*/
clientId: string;
/**
* Gets or sets the ClientSecret
*/
clientSecret: string;
/**
* Gets or sets the identity who created the config.
*/
createdBy: WebApi.IdentityRef;
/**
* Gets or sets the time when config was created.
*/
createdOn: Date;
/**
* Gets or sets the type of the endpoint.
*/
endpointType: string;
/**
* Gets or sets the unique identifier of this field
*/
id: string;
/**
* Gets or sets the identity who modified the config.
*/
modifiedBy: WebApi.IdentityRef;
/**
* Gets or sets the time when variable group was modified
*/
modifiedOn: Date;
/**
* Gets or sets the name
*/
name: string;
/**
* Gets or sets the Url
*/
url: string;
}
export declare enum OAuthConfigurationActionFilter {
None = 0,
Manage = 2,
Use = 16
}
export interface OAuthConfigurationParams {
/**
* Gets or sets the ClientId
*/
clientId: string;
/**
* Gets or sets the ClientSecret
*/
clientSecret: string;
/**
* Gets or sets the type of the endpoint.
*/
endpointType: string;
/**
* Gets or sets the name
*/
name: string;
/**
* Gets or sets the Url
*/
url: string;
}
export interface OAuthEndpointStatus {
state: string;
statusMessage: string;
}
export interface Parameter {
isSecret: boolean;
value: string;
}
export interface ProjectReference {
id: string;
name: string;
}
/**
* Specify the properties for refreshing the endpoint authentication object being queried
*/
export interface RefreshAuthenticationParameters {
/**
* EndpointId which needs new authentication params
*/
endpointId: string;
/**
* Scope of the token requested. For GitHub marketplace apps, scope contains repository Ids
*/
scope: number[];
/**
* The requested endpoint authentication should be valid for _ minutes. Authentication params will not be refreshed if the token contained in endpoint already has active token.
*/
tokenValidityInMinutes: number;
}
/**
* Represents template to transform the result data.
*/
export interface ResultTransformationDetails {
/**
* Gets or sets the template for callback parameters
*/
callbackContextTemplate: string;
/**
* Gets or sets the template to decide whether to callback or not
*/
callbackRequiredTemplate: string;
/**
* Gets or sets the template for result transformation.
*/
resultTemplate: string;
}
/**
* Represents an endpoint which may be used by an orchestration job.
*/
export interface ServiceEndpoint {
/**
* This is a deprecated field.
*/
administratorsGroup: WebApi.IdentityRef;
/**
* Gets or sets the authorization data for talking to the endpoint.
*/
authorization: EndpointAuthorization;
/**
* Gets or sets the identity reference for the user who created the Service endpoint.
*/
createdBy: WebApi.IdentityRef;
/**
* Gets or sets the date, when the Service endpoint has been created.
*/
creationDate: Date;
data: {
[key: string]: string;
};
/**
* Gets or sets the description of endpoint.
*/
description: string;
/**
* This is a deprecated field.
*/
groupScopeId: string;
/**
* Gets or sets the identifier of this endpoint.
*/
id: string;
/**
* Whether service endpoint is disabled or not.
*/
isDisabled: boolean;
/**
* Indicates whether service endpoint is outdated or not.
*/
isOutdated: boolean;
/**
* EndPoint state indicator
*/
isReady: boolean;
/**
* Indicates whether service endpoint is shared with other projects or not.
*/
isShared: boolean;
/**
* Gets or sets the date, when the Service endpoint has been modified.
*/
modificationDate: Date;
/**
* Gets or sets the identity reference for the user who did the latest modification of the Service endpoint.
*/
modifiedBy: WebApi.IdentityRef;
/**
* Gets the project-specific friendly name of the endpoint, as defined in the name field of ServiceEndpointProjectReferences.
*/
name: string;
/**
* Error message during creation/deletion of endpoint
*/
operationStatus: any;
/**
* Owner of the endpoint Supported values are "library", "agentcloud"
*/
owner: string;
/**
* Gets or sets the identity reference for the readers group of the service endpoint.
*/
readersGroup: WebApi.IdentityRef;
/**
* All other project references where the service endpoint is shared.
*/
serviceEndpointProjectReferences: ServiceEndpointProjectReference[];
/**
* Service Tree ID
*/
serviceManagementReference: string;
/**
* Gets or sets the type of the endpoint.
*/
type: string;
/**
* Gets or sets the url of the endpoint.
*/
url: string;
}
export declare enum ServiceEndpointActionFilter {
None = 0,
Manage = 2,
Use = 16,
View = 32
}
/**
* Represents the authentication scheme used to authenticate the endpoint.
*/
export interface ServiceEndpointAuthenticationScheme {
/**
* Gets or sets the authorization headers of service endpoint authentication scheme.
*/
authorizationHeaders: AuthorizationHeader[];
/**
* Gets or sets the Authorization url required to authenticate using OAuth2
*/
authorizationUrl: string;
/**
* Gets or sets the certificates of service endpoint authentication scheme.
*/
clientCertificates: ClientCertificate[];
/**
* Gets or sets the data source bindings of the endpoint.
*/
dataSourceBindings: DataSourceBinding[];
/**
* Gets or sets the display name for the service endpoint authentication scheme.
*/
displayName: string;
/**
* Gets or sets the input descriptors for the service endpoint authentication scheme.
*/
inputDescriptors: FormInput.InputDescriptor[];
/**
* Gets or sets the properties of service endpoint authentication scheme.
*/
properties: {
[key: string]: string;
};
/**
* Gets or sets whether this auth scheme requires OAuth2 configuration or not.
*/
requiresOAuth2Configuration: boolean;
/**
* Gets or sets the scheme for service endpoint authentication.
*/
scheme: string;
}
/**
* Represents details of the service endpoint.
*/
export interface ServiceEndpointDetails {
/**
* Gets or sets the authorization of service endpoint.
*/
authorization: EndpointAuthorization;
/**
* Gets or sets the data of service endpoint.
*/
data: {
[key: string]: string;
};
/**
* Gets or sets the type of service endpoint.
*/
type: string;
/**
* Gets or sets the connection url of service endpoint.
*/
url: string;
}
export interface ServiceEndpointEvent {
authorization: EndpointAuthorization;
id: string;
name: string;
projectIds: string[];
type: string;
}
/**
* Represents service endpoint execution data.
*/
export interface ServiceEndpointExecutionData {
/**
* Gets the definition of service endpoint execution owner.
*/
definition: ServiceEndpointExecutionOwner;
/**
* Gets the finish time of service endpoint execution.
*/
finishTime: Date;
/**
* Gets the Id of service endpoint execution data.
*/
id: number;
/**
* Gets the owner of service endpoint execution data.
*/
owner: ServiceEndpointExecutionOwner;
/**
* Gets the additional details about the instance that used the service endpoint.
*/
ownerDetails: string;
/**
* Gets the plan type of service endpoint execution data.
*/
planType: string;
/**
* Gets the result of service endpoint execution.
*/
result: ServiceEndpointExecutionResult;
/**
* Gets the start time of service endpoint execution.
*/
startTime: Date;
}
/**
* Represents execution owner of the service endpoint.
*/
export interface ServiceEndpointExecutionOwner {
_links: any;
/**
* Gets or sets the Id of service endpoint execution owner.
*/
id: number;
/**
* Gets or sets the name of service endpoint execution owner.
*/
name: string;
}
/**
* Represents the details of service endpoint execution.
*/
export interface ServiceEndpointExecutionRecord {
/**
* Gets the execution data of service endpoint execution.
*/
data: ServiceEndpointExecutionData;
/**
* Gets the Id of service endpoint.
*/
endpointId: string;
}
export interface ServiceEndpointExecutionRecordsInput {
data: ServiceEndpointExecutionData;
endpointIds: string[];
}
export declare enum ServiceEndpointExecutionResult {
/**
* "Service endpoint request succeeded.
*/
Succeeded = 0,
/**
* "Service endpoint request succeeded but with some issues.
*/
SucceededWithIssues = 1,
/**
* "Service endpoint request failed.
*/
Failed = 2,
/**
* "Service endpoint request was cancelled.
*/
Canceled = 3,
/**
* "Service endpoint request was skipped.
*/
Skipped = 4,
/**
* "Service endpoint request was abandoned.
*/
Abandoned = 5
}
export interface ServiceEndpointOAuthConfigurationReference {
configurationId: string;
serviceEndpointId: string;
serviceEndpointProjectId: string;
}
export interface ServiceEndpointProjectReference {
/**
* Gets or sets description of the service endpoint.
*/
description: string;
/**
* Gets or sets name of the service endpoint.
*/
name: string;
/**
* Gets or sets project reference of the service endpoint.
*/
projectReference: ProjectReference;
}
export interface ServiceEndpointRequest {
/**
* Gets or sets the data source details for the service endpoint request.
*/
dataSourceDetails: DataSourceDetails;
/**
* Gets or sets the result transformation details for the service endpoint request.
*/
resultTransformationDetails: ResultTransformationDetails;
/**
* Gets or sets the service endpoint details for the service endpoint request.
*/
serviceEndpointDetails: ServiceEndpointDetails;
}
/**
* Represents result of the service endpoint request.
*/
export interface ServiceEndpointRequestResult {
/**
* Gets or sets the activity id of the service endpoint request result.
*/
activityId: string;
/**
* Gets or sets the parameters used to make subsequent calls to the data source
*/
callbackContextParameters: {
[key: string]: string;
};
/**
* Gets or sets the flat that decides if another call to the data source is to be made
*/
callbackRequired: boolean;
/**
* Gets or sets the error message of the service endpoint request result.
*/
errorMessage: string;
/**
* Gets or sets the result of service endpoint request.
*/
result: any;
/**
* Gets or sets the status code of the service endpoint request result.
*/
statusCode: string;
}
/**
* Represents the details of service endpoint execution.
*/
export interface ServiceEndpointTokenResult {
/**
* Gets the access token
*/
accessToken: string;
}
/**
* Represents type of the service endpoint.
*/
export interface ServiceEndpointType {
/**
* Authentication scheme of service endpoint type.
*/
authenticationSchemes: ServiceEndpointAuthenticationScheme[];
/**
* Data sources of service endpoint type.
*/
dataSources: DataSource[];
/**
* Dependency data of service endpoint type.
*/
dependencyData: DependencyData[];
/**
* Gets or sets the description of service endpoint type.
*/
description: string;
/**
* Gets or sets the display name of service endpoint type.
*/
displayName: string;
/**
* Gets or sets the endpoint url of service endpoint type.
*/
endpointUrl: EndpointUrl;
/**
* Gets or sets the help link of service endpoint type.
*/
helpLink: HelpLink;
/**
* Gets or sets the help text shown at the endpoint create dialog.
*/
helpMarkDown: string;
/**
* Gets or sets the icon url of service endpoint type.
*/
iconUrl: string;
/**
* Input descriptor of service endpoint type.
*/
inputDescriptors: FormInput.InputDescriptor[];
/**
* Gets or sets visibility parameter for the list of endpoint types.
*/
isHidden: boolean;
/**
* Gets or sets the name of service endpoint type.
*/
name: string;
/**
* Trusted hosts of a service endpoint type.
*/
trustedHosts: string[];
/**
* Gets or sets the ui contribution id of service endpoint type.
*/
uiContributionId: string;
}
export declare enum SpnEndpointErrorCode {
/**
* Indicates whether user does not have required permissions to register the app in Entra or WIF is disabled.
*/
AppRegistrationFailed = 1
}