UNPKG

appcenter-cli

Version:

Command line tool for Visual Studio App Center

2,445 lines (2,273 loc) 235 kB
/* * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ import * as moment from "moment"; export interface GetInAppUpdateTokenResponse { /** * The api token generated will not be accessible again */ token: string; } export interface ApiTokensCreateResponse { /** * The unique id (UUID) of the api token */ id: string; /** * The api token generated will not be accessible again */ apiToken: string; /** * The description of the token */ description?: string; /** * The scope for this token. */ scope?: string[]; /** * The creation time */ createdAt: string; } export interface ApiTokensCreateRequest { /** * The description of the token */ description?: string; /** * The scope for this token. */ scope?: string[]; } export interface ApiTokensGetResponse { /** * The unique id (UUID) of the api token */ id: string; /** * The description of the token */ description?: string; /** * The scope for this token. */ scope?: string[]; /** * The creation time */ createdAt: string; } export interface Status { status: string; } export interface Failure { message: string; } export interface ErrorDetails { /** * Possible values include: 'BadRequest', 'Conflict', 'NotAcceptable', 'NotFound', * 'InternalServerError', 'Unauthorized', 'TooManyRequests' */ code: string; message: string; } export interface ErrorResponse { error: ErrorDetails; } export interface SuccessResponse { message: string; } export interface AADTenantAddRequest { /** * The user wanting to add this tenant to the organization, must be an admin of the organization */ userId: string; /** * The AAD tenant id */ aadTenantId: string; /** * The name of the AAD Tenant */ displayName: string; } export interface AADTenantResponse { /** * The AAD tenant id */ aadTenantId: string; /** * The name of the AAD Tenant */ displayName: string; } export interface AddAppTesterRequest { /** * The user ID of the tester that needs to be added */ userId: string; /** * The ID of the release the user was added to */ releaseId: number; } export interface AddAppTesterResponse { /** * The user ID of the tester that needs to be added */ userId: string; /** * The ID of the release the user was added to */ releaseId: number; } export interface ApiTokensPostRequest { /** * The description of the token */ description?: string; /** * An encrypted value of the token. */ encryptedToken?: string; /** * The scope for this token. An array of supported roles. */ scope?: string[]; /** * The hashed value of api token */ tokenHash?: string; /** * The token's type. public:managed by the user; in_app_update:special token for in-app update * scenario; buid:dedicated for CI usage for now; session:for CLI session management; tester_app: * used for tester mobile app; default is "public".'. Possible values include: 'public', * 'in_app_update', 'build', 'session', 'tester_app' */ tokenType?: string; } export interface AppPatchRequest { /** * A short text describing the app */ description?: string; /** * The display name of the app */ displayName?: string; /** * A one-word descriptive release type value that starts with a capital letter but is otherwise * lowercase */ releaseType?: string; /** * The name of the app used in URLs */ name?: string; /** * The string representation of the URL pointing to the app's icon */ iconUrl?: string; } export interface AppRepoPatchRequest { /** * The absolute URL of the repository */ repoUrl?: string; /** * The unique id (UUID) of the user */ userId?: string; } export interface AppRepoPostRequest { /** * The absolute URL of the repository */ repoUrl: string; /** * The provider of the repository. Possible values include: 'github', 'bitbucket', 'vsts' */ repoProvider?: string; /** * The unique id (UUID) of the user who configured the repository */ userId: string; /** * Installation id from the provider */ installationId?: string; /** * Repository id from the provider */ repoId?: string; } export interface AppRequest { /** * A short text describing the app */ description?: string; /** * A one-word descriptive release-type value that starts with a capital letter but is otherwise * lowercase */ releaseType?: string; /** * The descriptive name of the app. This can contain any characters */ displayName: string; /** * The name of the app used in URLs */ name?: string; /** * The OS the app will be running on. Possible values include: 'Android', 'iOS', 'macOS', * 'Tizen', 'tvOS', 'Windows', 'Linux' */ os: string; /** * The platform of the app. Possible values include: 'Java', 'Objective-C-Swift', 'UWP', * 'Cordova', 'React-Native', 'Xamarin', 'Unity', 'Electron' */ platform: string; } export interface AppAddRequest { /** * The name of the app to be added to the distribution group */ name: string; } export interface AppDeleteRequest { /** * The name of the app to be deleted from the distribution group */ name: string; } export interface AzureSubscriptionAddRequest { /** * The azure subscription id */ subscriptionId: string; /** * The tenant id of the azure subscription belongs to */ tenantId: string; /** * The name of the azure subscription */ subscriptionName: string; /** * If the subscription is used for billing */ isBilling?: boolean; } export interface AzureSubscriptionUpdateBillableRequest { /** * Billable status of the subscription */ isBillable: boolean; } export interface AzureSubscriptionPatchRequest { /** * If the subscription is used for billing */ isBilling: boolean; } export interface AzureSubscriptionAddToAppRequest { /** * The azure subscription id */ subscriptionId: string; } export interface DistributionGroupPatchRequest { /** * The name of the distribution group */ name?: string; /** * Whether the distribution group is public */ isPublic?: boolean; } export interface DistributionGroupRequest { /** * The name of the distribution group */ name: string; /** * The display name of the distribution group. If not specified, the name will be used. */ displayName?: string; } export interface AppDistributionGroupUsersRequest { memberIds?: string[]; } export interface DistributionGroupUserRequest { /** * The list of emails of the users */ userEmails?: string[]; } export interface DistributionGroupAppAddRequest { /** * The list of apps to add to distribution group */ apps?: AppAddRequest[]; } export interface DistributionGroupAppsDeleteRequest { /** * The list of apps to delete from the distribution group */ apps?: AppDeleteRequest[]; } export interface DistributionGroupAADGroupsDeleteRequest { /** * The list of aad group ids */ aadGroupIds?: string[]; } export interface DataDeletionRequest { /** * Type of data to delete */ dataDeletionType?: string; } export interface DistributionGroupAADGroupBase { /** * The id of the aad group */ aadGroupId?: string; /** * The display name of the aad group */ displayName?: string; } export interface DistributionGroupAADGroupRequest { /** * The list of aad group ids and names to add */ aadGroups?: DistributionGroupAADGroupBase[]; } export interface DistributionGroupIdRequest { /** * The id of the distribution group */ id: string; } export interface DistributionGroupsUserVerifyRequest { /** * An array of distribution group ids */ distributionGroupIds: DistributionGroupIdRequest[]; } export interface EmailVerificationRequest { /** * The verification token that was sent to the user */ token: string; } export interface ExternalUserRequest { /** * The token of the app invitation which lead to signup */ appInvitation?: string; /** * The token of the test invitation which lead to signup */ testerInvitation?: string; /** * The token of the organization invitation which lead to signup */ organizationInvitation?: string; /** * The avatar URL of the user */ avatarUrl?: string; /** * The full name of the user. Might for example be first and last name */ displayName?: string; /** * The email address of the user */ email: string; /** * The unique name that is used to identify the user. If no explicit value is given, a default * will be auto-generated from the `display_name` value */ name?: string; } export interface ExternalAppId { /** * The identifier for external apps that map to an App Center app */ externalId?: string; } export interface FeaturePatchRequest { /** * The friendly name of the feature */ description?: string; /** * The full (friendly) name of the feature. */ displayName?: string; /** * The state of the feature */ state?: number; } export interface FeatureCreateRequest { /** * The unique name of the feature */ name: string; /** * The full (friendly) name of the feature. */ displayName: string; /** * The state of the feature */ state?: number; /** * The friendly name of the feature */ description?: string; } export interface GrantAdminRoleRequest { /** * The new admin_role. Possible values include: 'superAdmin', 'admin', 'devOps', * 'customerSupport', 'notAdmin' */ adminRole: string; } export interface InternalBulkAppResponse { /** * The name of the app */ appName?: string; /** * The display name of the owner */ ownerDisplayName?: string; } export interface InternalHockeyAppCompatibilityResponse { /** * The owner type of the app. Possible values include: 'user', 'organization' */ ownerType?: string; /** * The OS of the app. Possible values include: 'Android', 'iOS', 'macOS', 'Windows', 'Linux', * 'Custom' */ os?: string; /** * The OS of the app. Possible values include: 'Java', 'Objective-C-Swift', 'Cordova', * 'React-Native', 'Unity', 'Electron', 'Xamarin', 'Unknown' */ platform?: string; /** * Does the HockeyApp app have crashes from within the last 90 days? */ hasCrashes?: boolean; /** * Does the HockeyApp app have feedback from within the last 90 days? */ hasFeedback?: boolean; /** * Does the HockeyApp app have metrics from within the last 30 days? */ hasMetrics?: boolean; /** * Does the HockeyApp app have any external builds? */ hasExternalBuilds?: boolean; /** * Does the HockeyApp app have any build server URLs specified? */ hasSpecifiedBuildServerUrl?: boolean; /** * Does the HockeyApp app have an associated Distribution Group that is owned by a different * owner? */ hasDistributionGroupsOutsideOfOwnership?: boolean; /** * Does the HockeyApp app's owner own any Distribution Groups? */ ownerHasDistributionGroups?: boolean; /** * Does the HockeyApp app have any bugtracker configured? Which type?. Possible values include: * 'none', 'vso', 'jira5', 'github', 'other' */ bugtrackerType?: string; /** * Does the HockeyApp app have any webhooks configured? Which types? */ webhookTypes?: string[]; } export interface InternalHockeyAppCutoverStatusResponse { /** * The ID of the app */ id: string; /** * Does the HockeyApp app have crashes from within the last 90 days?. Possible values include: * 'not_requested', 'requested', 'in_progress', 'completed' */ status?: string; } export interface InternalUserRequest { /** * The token of the app invitation which lead to signup */ appInvitation?: string; /** * The token of the test invitation which lead to signup */ testerInvitation?: string; /** * The token of the organization invitation which lead to signup */ organizationInvitation?: string; /** * The avatar URL of the user */ avatarUrl?: string; /** * The full name of the user. Might for example be first and last name */ displayName?: string; /** * The email address of the user */ email: string; /** * The unique name that is used to identify the user. */ name: string; /** * The password of the user. Needs to be at least 8 characters long and contain at least one * lower- and one uppercase letter. */ password: string; /** * The sub-domain of the portal from which this request was made. Will be used to build the * invitation link. Possible values include: 'install.' */ portalSubdomain?: string; } export interface OrganizationPatchRequest { /** * The full (friendly) name of the organization. */ displayName?: string; /** * The name of the organization used in URLs */ name?: string; } export interface OrganizationRequest { /** * The display name of the organization */ displayName?: string; /** * The name of the organization used in URLs */ name?: string; } export interface OrganizationUserPatchRequest { /** * The user's role in the organizatiion. Possible values include: 'admin', 'collaborator' */ role?: string; } export interface AddOrganizationAdminRequest { /** * The internal unique id (UUID) of the account. */ userId: string; } export interface TransferAppAdminRequest { /** * The internal unique id (UUID) of the user/org. */ newOwnerId: string; } export interface PasswordUpdateRequest { /** * The new password that will be set for the user. Needs to be at least 8 characters long and * contain at least one lower- and one uppercase letter. */ newPassword: string; /** * The old password, if needed. */ oldPassword?: string; } export interface PostRepositoryProviderMappingRequest { /** * Id of user in the external provider service */ externalAccountId: string; /** * App Center account id to link to this provider and external id */ accountId: string; } export interface GetOrCreateRepositoryProviderMappingRequest { /** * The account name given by the external provider. If provided, create an organization and the * mapping. If not, create mapping with user. */ externalAccountName?: string; } export interface ResendVerificationRequest { /** * The email or name of the user to resend verification */ name: string; } export interface ResetPasswordUsingTokenRequest { /** * The new password. Needs to be at least 8 characters long and contain at least one lower- and * one uppercase letter. */ newPassword: string; /** * The reset password token that was sent to the user */ token: string; } export interface UserAppPermissionsUpdateRequest { /** * The permissions the user has for the app */ permissions: string[]; } export interface UserInvitationPermissionsUpdateRequest { /** * The permissions the user has for the app in the invitation */ permissions: string[]; } export interface UserEmailRequest { /** * The user's email address' */ userEmail: string; } export interface UserNameUpdateRequest { /** * The new, unique name that is used to identify. */ name?: string; } export interface UserUpdateRequest { /** * The full name of the user. Might for example be first and last name */ displayName?: string; } export interface UserUpdateRequestInternal { /** * The full name of the user. Might for example be first and last name */ displayName?: string; /** * The new, unique name that is used to identify. */ name?: string; /** * The date in the future when the user should be checked again for NPS eligibility */ nextNpsSurveyDate?: string; /** * The email address for this user */ email?: string; } export interface UserSettingRequest { /** * The setting value */ value: string; } export interface AccountResponse { /** * The internal unique id (UUID) of the account. */ id: string; /** * The display name of the account */ displayName: string; /** * The slug name of the account */ name: string; /** * The account's email. For org that value might be empty. */ email?: string; /** * The creation origin of this account. Possible values include: 'appcenter', 'hockeyapp' */ origin: string; /** * The type of this account. Possible values include: 'user', 'org' */ type: string; } export interface ApiTokenDeleteResponse { /** * The unique id (UUID) of the api token */ id: string; /** * The hashed value of api token */ tokenHash: string; } export interface ApiTokenGetUserResponse { /** * The token's unique id (UUID) */ tokenId: string; /** * The token's scope. A list of allowed roles. */ tokenScope: string[]; /** * The user email */ userEmail: string; /** * The unique id (UUID) of the user */ userId: string; /** * The creation origin of the user who created this api token. Possible values include: * 'appcenter', 'hockeyapp', 'codepush' */ userOrigin: string; } export interface ApiTokenResponse { /** * The unique id (UUID) of the api token */ id: string; /** * The creation time */ createdAt: string; /** * The token's scope. A list of allowed roles. */ scope?: string[]; /** * The encrypted value of a token. This value will only be returned for token of type * in_app_update. */ encryptedToken?: string; /** * The description of the token */ description?: string; } export interface AppGroupResponse { /** * The unique ID (UUID) of the app */ id: string; /** * The unique ID (UUID) of the group that the app belongs to */ groupId: string; /** * The display name of the app */ displayName?: string; /** * A one-word descriptive release-type value that starts with a capital letter but is otherwise * lowercase */ releaseType?: string; /** * The name of the app used in URLs */ name: string; /** * The OS the app will be running on. Possible values include: 'Android', 'iOS', 'macOS', * 'Tizen', 'tvOS', 'Windows', 'Linux', 'Custom' */ os: string; /** * The platform of the app. Possible values include: 'Java', 'Objective-C-Swift', 'UWP', * 'Cordova', 'React-Native', 'Unity', 'Electron', 'Xamarin', 'Unknown' */ platform: string; } export interface AzureSubscriptionResponse { /** * The azure subscription id */ subscriptionId: string; /** * The tenant id of the azure subscription belongs to */ tenantId: string; /** * The name of the azure subscription */ subscriptionName: string; /** * If the subscription is used for billing */ isBilling?: boolean; /** * If the subscription can be used for billing */ isBillable?: boolean; /** * If the subscription is internal Microsoft subscription */ isMicrosoftInternal?: boolean; } export interface BasicAppResponse { /** * The unique ID (UUID) of the app */ id: string; /** * The description of the app */ description?: string; /** * The display name of the app */ displayName: string; /** * A one-word descriptive release-type value that starts with a capital letter but is otherwise * lowercase */ releaseType?: string; /** * The string representation of the URL pointing to the app's icon */ iconUrl?: string; /** * The string representation of the source of the app's icon */ iconSource?: string; /** * The name of the app used in URLs */ name: string; /** * The OS the app will be running on. Possible values include: 'Android', 'iOS', 'macOS', * 'Tizen', 'tvOS', 'Windows', 'Linux', 'Custom' */ os: string; owner: Owner; } export interface AppResponse extends BasicAppResponse { /** * A unique and secret key used to identify the app in communication with the ingestion endpoint * for crash reporting and analytics */ appSecret: string; azureSubscription?: AzureSubscriptionResponse; /** * The platform of the app. Possible values include: 'Java', 'Objective-C-Swift', 'UWP', * 'Cordova', 'React-Native', 'Unity', 'Electron', 'Xamarin', 'Unknown' */ platform: string; /** * The creation origin of this app. Possible values include: 'appcenter', 'hockeyapp', 'codepush' */ origin: string; /** * The created date of this app */ createdAt?: string; /** * The last updated date of this app */ updatedAt?: string; /** * The permissions of the calling user */ memberPermissions?: string[]; } export interface UserProfileResponse { /** * The unique id (UUID) of the user */ id: string; /** * The avatar URL of the user */ avatarUrl?: string; /** * User is required to send an old password in order to change the password. */ canChangePassword?: boolean; /** * The full name of the user. Might for example be first and last name */ displayName: string; /** * The email address of the user */ email: string; /** * The unique name that is used to identify the user. */ name: string; /** * The permissions the user has for the app */ permissions?: string[]; /** * The creation origin of this user. Possible values include: 'appcenter', 'hockeyapp', * 'codepush' */ origin: string; } /** * The information about the app's owner */ export interface Owner { /** * The unique id (UUID) of the owner */ id: string; /** * The avatar URL of the owner */ avatarUrl?: string; /** * The owner's display name */ displayName: string; /** * The owner's email address */ email?: string; /** * The unique name that used to identify the owner */ name: string; /** * The owner type. Can either be 'org' or 'user'. Possible values include: 'org', 'user' */ type: string; } /** * The organization that owns the distribution group, if it exists */ export interface AppInvitationDetailResponseDistributionGroup { owner?: Owner; } export interface AppInvitationDetailResponse { /** * The unique ID (UUID) of the invitation */ id: string; app: AppResponse; /** * The email address of the invited user */ email: string; /** * The invitation type. Possible values include: 'developer', 'tester' */ inviteType: string; invitedBy: UserProfileResponse; /** * Indicates whether the invited user already exists */ isExistingUser: boolean; /** * The permissions the user has for the app */ permissions?: string[]; /** * The number of apps in the group */ appCount?: number; /** * The organization that owns the distribution group, if it exists */ distributionGroup?: AppInvitationDetailResponseDistributionGroup; } export interface AppRepoResponse { /** * The unique id (UUID) of the repository integration */ id: string; /** * The unique id (UUID) of the app that this repository integration belongs to */ appId: string; /** * The absolute URL of the repository */ repoUrl: string; /** * The provider of the repository. Possible values include: 'github', 'bitbucket', 'vsts' */ repoProvider?: string; /** * The unique id (UUID) of the user who configured the repository */ userId: string; /** * Installation id from the provider */ installationId?: string; /** * Repository id from the provider */ repoId?: string; } export interface TesterAppResponse extends BasicAppResponse { /** * it indicates if the app is microsoft internal */ microsoftInternal?: boolean; /** * The permissions associated with the app */ permissions?: string[]; } export interface OrgDistributionGroupAppResponse extends BasicAppResponse { /** * The platform of the app */ platform?: string; /** * The creation origin of this app */ origin?: string; } export interface AppResponseInternalRepositoriesItem { repoProvider?: string; repoUrl?: string; } export interface AppResponseInternal extends AppResponse { /** * The feature flags that are enabled for this app */ featureFlags?: string[]; /** * The repositories associated with this app */ repositories?: AppResponseInternalRepositoriesItem[]; } export interface AppUserPermissionResponse { /** * The unique id (UUID) of the app */ appId: string; /** * The permissions the user has for the app */ permissions: string[]; /** * The email of the user */ userEmail: string; /** * The unique id (UUID) of the user */ userId: string; /** * The creation origin of this app. Possible values include: 'appcenter', 'hockeyapp', 'codepush' */ appOrigin: string; /** * A unique and secret key used to identify the app in communication with the ingestion endpoint * for crash reporting and analytics */ appSecret: string; } export interface AppWithTeamPermissionsResponse extends AppResponse { /** * The permissions the team has for the app */ teamPermissions?: string[]; } export interface OrgUserPermissionResponse { /** * The unique id (UUID) of the org */ orgId: string; /** * The user role for the org. Possible values include: 'admin', 'collaborator' */ userRole: string; } export interface DistributionGroupResponse { /** * The unique ID of the distribution group */ id: string; /** * The name of the distribution group used in URLs */ name: string; /** * The name of the distribution group */ displayName?: string; /** * The creation origin of this distribution group. Possible values include: 'appcenter', * 'hockeyapp' */ origin: string; /** * Whether the distribution group is public */ isPublic: boolean; } export interface DistributionGroupUserGetResponse { /** * The unique id (UUID) of the user */ id?: string; /** * The avatar URL of the user */ avatarUrl?: string; /** * User is required to send an old password in order to change the password. */ canChangePassword?: boolean; /** * The full name of the user. Might for example be first and last name */ displayName?: string; /** * The email address of the user */ email: string; /** * Whether the has accepted the invite. Available when an invite is pending, and the value will * be "true". */ invitePending?: boolean; /** * The unique name that is used to identify the user. */ name?: string; } export interface DistributionGroupDetailsResponse extends DistributionGroupResponse { /** * Whether the distribution group is shared group or not */ isShared: boolean; /** * The count of apps associated with this distribution group */ totalAppsCount: number; /** * The count of users in the distribution group */ totalUserCount: number; /** * The count of non-pending users in the distribution group who will be notified by new releases */ notifiedUserCount: number; /** * Type of group (Default, HockeyAppDefault or MicrosoftDogfooding). Possible values include: * 'Default', 'HockeyAppDefault', 'MicrosoftDogfooding' */ groupType?: string; /** * The distribution group users */ users: DistributionGroupUserGetResponse[]; } export interface OrgDistributionGroupDetailsResponse extends DistributionGroupResponse { /** * The count of apps associated with this distribution group */ totalAppsCount: number; /** * The count of users in the distribution group */ totalUsersCount: number; /** * The apps associated with the distribution group */ apps: AppResponse[]; } export interface GeneralDistributionGroupDetailsResponse extends DistributionGroupResponse { /** * Whether the distribution group is shared group or not */ isShared: boolean; /** * If distribution group is owned by an app, this is the unique app ID */ ownerAppId?: string; /** * If distribution group is owned by an org, this is the unique org ID */ ownerOrgId?: string; } export interface DistributionGroupUserDeleteResponse { /** * The code of the result */ code?: string; /** * The message of the result */ message?: number; /** * The status code of the result */ status: number; /** * The email of the user */ userEmail?: string; } export interface OrganizationResponse { /** * The internal unique id (UUID) of the organization. */ id: string; /** * The display name of the organization */ displayName: string; /** * The slug name of the organization */ name: string; /** * The URL to a user-uploaded Avatar image */ avatarUrl?: string; /** * The creation origin of this organization. Possible values include: 'appcenter', 'hockeyapp' */ origin: string; /** * The creation date of this organization */ createdAt: string; /** * The date the organization was last updated at */ updatedAt: string; } export interface CloseAccountOrganizationResponse extends OrganizationResponse { /** * The number of collaborators from the organization */ collaboratorsCount: number; } export interface DistributionGroupUserPostResponse { /** * The code of the result */ code?: string; /** * Whether the has accepted the invite. Available when an invite is pending, and the value will * be "true". */ invitePending?: boolean; /** * The message of the result */ message?: number; /** * The status code of the result */ status: number; /** * The email of the user */ userEmail?: string; } export interface DistributionGroupTesterGetResponse { /** * The full name of the tester. Might for example be first and last name */ displayName?: string; /** * The unique name that is used to identify the tester. */ name: string; /** * The email address of the tester */ email: string; } export interface DistributionGroupAADGroupPostResponse { /** * The internal unique id (UUID) of the AAD group. */ id?: string; /** * The AAD unique id (UUID) of the AAD group. */ aadGroupId?: string; /** * The display name of the AAD group */ displayName?: string; } export interface DistributionGroupAadGroupsDeleteResponse { /** * The code of the result */ code?: string; /** * The message of the result */ message?: number; /** * The status code of the result */ status: number; /** * The aad id of the group */ aadGroupId?: string; } export interface DistributionGroupWithUsersResponse { /** * The unique ID of the distribution group */ id: string; /** * The name of the distribution group used in URLs */ name: string; /** * The count of users in the distribution group */ totalUserCount: number; /** * The count of aad groups in the distribution group */ totalGroupsCount?: number; /** * The count of non-pending users in the distribution group who will be notified by new releases */ notifiedUserCount: number; /** * Whether the distribution group is public */ isPublic?: boolean; /** * The distribution group users */ users: DistributionGroupUserGetResponse[]; /** * The distribution group aad groups */ aadGroups?: DistributionGroupAADGroupPostResponse[]; } export interface FeatureFlagsResponse { featureFlags: string[]; } export interface FeatureResponse { /** * The description of the feature */ description?: string; /** * The friendly name of the feature */ displayName: string; /** * The unique name of the feature */ name: string; /** * The state (unset, enabled, disabled) of the feature */ state: number; } export interface InternalUserSignupResponse { /** * The unique id (UUID) of the user */ id: string; /** * The full name of the user. Might for example be first and last name */ displayName: string; /** * The email address of the user */ email: string; /** * The name of the external auth provider */ externalProvider?: string; /** * The user ID given by the external provider */ externalUserId?: string; /** * The unique name that is used to identify the user. */ name: string; /** * The current status of the user record after signup. Possible values include: 'Complete', * 'NeedsVerification' */ status?: string; } export interface InvitationDetailResponse { /** * The id of the invitation */ invitationId: string; invitedBy: UserProfileResponse; organization?: OrganizationResponse; app?: AppResponse; } export interface GDPRInvitationDetailResponse { /** * The id of the invitation */ invitationId: string; organization?: OrganizationResponse; app?: AppResponse; } export interface OrgNameAvailabilityResponse { /** * The availability status of the requested org name */ available: boolean; /** * The generated org name */ name: string; } export interface OrganizationInvitationDetailResponse { /** * The unique ID (UUID) of the invitation */ id: string; organization: OrganizationResponse; /** * The email address of the invited user */ email: string; invitedBy: UserProfileResponse; /** * Indicates whether the invited user already exists */ isExistingUser: boolean; /** * The role assigned to the invited user */ role?: string; } export interface OrganizationInvitationSimpleDetailResponse { /** * The unique ID (UUID) of the invitation */ id: string; /** * The email address of the invited user */ email: string; /** * The role assigned to the invited user */ role: string; } export interface OrganizationResponseInternal extends OrganizationResponse { /** * The feature flags that are enabled for this organization */ featureFlags?: string[]; } export interface OrganizationResponseManagement extends OrganizationResponseInternal { /** * The organization email, if the app was synced from HockeyApp */ email?: string; } export interface OrganizationUserResponse { /** * The email address of the user */ email: string; /** * The full name of the user. Might for example be first and last name */ displayName: string; /** * The date when the user joined the organization */ joinedAt: string; /** * The unique name that is used to identify the user. */ name: string; /** * The role the user has within the organization */ role: string; } export interface TeamAppUpdateRequest { /** * The permissions all members of the team have on the app */ permissions: string[]; } export interface TeamRequest { /** * The display name of the team */ displayName: string; /** * The name of the team */ name?: string; /** * The description of the team */ description?: string; } export interface TeamResponse { /** * The internal unique id (UUID) of the team. */ id: string; /** * The name of the team */ name: string; /** * The display name of the team */ displayName: string; /** * The description of the team */ description?: string; } export interface TeamAppResponse extends TeamResponse { /** * The permissions the team has for the app */ permissions?: string[]; } export interface StatusResponse { status: string; } export interface PurgeResponse { status: string; } export interface SubscriptionMetrics { /** * The name of the subsciption (prefixed with the topic name) */ name: string; /** * The number of messages in the subscription */ messageCount: number; } export interface ServiceBusStatusResponse { status: string; subscriptions?: SubscriptionMetrics[]; } export interface TeamUserResponse { /** * The email address of the user */ email: string; /** * The full name of the user. Might for example be first and last name */ displayName: string; /** * The unique name that is used to identify the user. */ name: string; /** * The role of the user has within the team */ role: any; } export interface UserAuthResponse { /** * The unique id (UUID) of the user */ id: string; /** * The full name of the user. Might for example be first and last name */ displayName: string; /** * The email address of the user */ email: string; /** * The name of the external auth provider */ externalProvider?: string; /** * The user ID given by the external provider */ externalUserId?: string; /** * The unique name that is used to identify the user */ name: string; /** * The creation origin of this user. Possible values include: 'appcenter', 'hockeyapp', * 'codepush' */ origin: string; } export interface UserLiteProfileResponse { /** * The unique id (UUID) of the user */ id: string; /** * The full name of the user. Might for example be first and last name */ displayName: string; /** * The email address of the user */ email: string; } export interface UserNameAvailabilityResponse { /** * The availability status of the requested user name */ available: boolean; /** * The requested user name */ name: string; } export interface AppIntegration { /** * app id */ appId: string; /** * integration state */ state: string; /** * provider type */ provider: string; } export interface AppIntegrationResponse { /** * app id */ appId: string; } export interface AppMembershipsResponseMembershipsItem { appId?: string; userId?: string; permissions?: string[]; /** * Possible values include: 'appcenter', 'hockeyapp', 'codepush', 'testcloud', * 'hockeyapp-dogfood' */ origin?: string; /** * Possible values include: 'user', 'org', 'distribution_group', 'team', 'release' */ sourceType?: string; } export interface AppMembershipsResponse { /** * The app's origin */ appOrigin?: string; /** * An array of all ways a user has access to the app, based on the app_memberships table. */ memberships?: AppMembershipsResponseMembershipsItem[]; } /** * The user's settings */ export interface UserProfileResponseInternalSettings { /** * The marketing opt-in setting */ marketingOptIn?: string; } export interface UserProfileResponseInternal extends UserProfileResponse { /** * The feature flags that are enabled for this app */ featureFlags?: string[]; /** * The new admin_role. Possible values include: 'superAdmin', 'admin', 'devOps', * 'customerSupport', 'notAdmin' */ adminRole?: string; /** * The user's settings */ settings?: UserProfileResponseInternalSettings; } export interface UserProfileResponseManagement extends UserProfileResponseInternal { /** * The date when the app was last updated */ updatedAt?: string; /** * A boolean flag that indicates if the user is already verified */ verified?: boolean; } /** * A user's setting */ export interface UserSettingResponse { /** * The marketing opt-in setting */ marketingOptIn?: string; } /** * an AAD user's id and tenant id */ export interface AADUser { /** * the aad user's id */ objectId: string; /** * the aad user's tenant id */ tenantId: string; } /** * an MSA user's hex CID */ export interface MSAUser { /** * the user's CID */ hexcid: string; } /** * Shared connection patch request */ export interface SharedConnectionPatchRequest { /** * Display name of the shared connection */ displayName?: string; /** * Represents the data for connecting to service */ data: any; } /** * SharedConnectionRequest */ export interface SharedConnectionRequest { /** * display name of shared connection */ displayName?: string; /** * credential type of the shared connection. Values can be credentials|certificate. Possible * values include: 'credentials', 'certificate' */ credentialType?: string; /** * Polymorphic Discriminator */ serviceType: string; } /** * SharedConnectionResponse */ export interface SharedConnectionResponse { /** * id of the shared connection */ id: string; /** * display name of shared connection */ displayName?: string; /** * the type of the credential. Possible values include: 'credentials', 'certificate' */ credentialType: string; /** * whether the credentials are valid or not */ isValid?: boolean; /** * if the account is a 2FA account or not */ is2FA?: boolean; /** * Polymorphic Discriminator */ serviceType: string; } /** * PrivateSharedConnectionResponse */ export interface PrivateSharedConnectionResponse { /** * id of the shared connection */ id: string; /** * display name of shared connection */ displayName?: string; /** * whether the credentials are valid or not */ isValid?: boolean; /** * if the account is a 2FA account or not */ is2FA?: boolean; /** * Polymorphic Discriminator */ serviceType: string; } /** * Apple connection secrets */ export interface AppleConnectionSecretRequest extends SharedConnectionRequest { } /** * Apple secret details */ export interface AppleMultifactorSecretDetails { /** * username to connect to apple store. */ username: string; /** * password to connect to apple store. */ password: string; /** * The 6 digit Apple OTP for Multifactor accounts */ authCode: string; /** * The app specific password required for app publishing for 2FA accounts */ appSpecificPassword?: string; } /** * Apple connection secrets */ export interface AppleCredentialsMultifactorSecretRequest extends AppleConnectionSecretRequest { /** * apple secret details */ data: AppleMultifactorSecretDetails; } /** * Apple secret details */ export interface AppleSecretDetails { /** * username to connect to apple store. */ username?: string; /** * 6 digit auth code */ authCode?: string; /** * password to connect to apple store. */ password?: string; } /** * Apple connection secrets */ export interface AppleCredentialsSecretRequest extends AppleConnectionSecretRequest { /** * apple secret details */ data: AppleSecretDetails; } /** * Apple Certificate Details */ export interface AppleCertificateDetails { /** * The certificate contents in base 64 encoded string */ base64Certificate: string; /** * The password for the certificate */ password: string; } /** * Apple certificate secrets */ export interface AppleCertificateSecretRequest extends AppleConnectionSecretRequest { /** * apple secret details */ data: AppleCertificateDetails; } /** * private Apple connection secrets response */ export interface PrivateAppleSecretResponse extends PrivateSharedConnectionResponse { } /** * private Apple connection secrets response */ export interface PrivateAppleCredentialsSecretResponse extends PrivateAppleSecretResponse { /** * apple secret details */ data: AppleSecretDetails; } /** * Apple Certificate Secret Details */ export interface AppleCertificateSecretDetails { /** * The certificate contents in base 64 encoded string */ base64Certificate: string; /** * The password for the certificate */ password: string; /** * The display name (CN) of the certificate */ displayName: string; /** * The date-time from which the certificate is valid */ certificateValidityStartDate: string; /** * The date-time till which the certificate is valid */ certificateValidityEndDate: string; } /** * private Apple connection secrets response */ export interface PrivateAppleCertificateSecretResponse extends PrivateAppleSecretResponse { /** * apple secret details */ data: AppleCertificateSecretDetails; } /** * Apple secret details */ export interface AppleSecretDetailsResponse { /** * username to connect to apple store */ username: string; } /** * Apple connection secrets */ export interface AppleConnectionSecretResponse extends SharedConnectionResponse { /** * apple secret details */ data: AppleSecretDetailsResponse; } /** * Apple connection secrets */ export interface AppleConnectionNonSecretResponse extends SharedConnectionResponse { } /** * Apple credentials non-secret details */ export interface AppleCredentialNonSecretDetailsResponse extends AppleConnectionNonSecretResponse { /** * Apple credentials non-secret data */ data: AppleSecretDetailsResponse; } /** * Apple Certificate Secret Details */ export interface AppleCertificateNonSecretDetails { /** * The display name (CN) of the certificate */ displayName: string; /** * The date-time from which the certificate is valid */ certificateValidityStartDate: string; /** * The date-time till which the certificate is valid */ certificateValidityEndDate: string; } /** * Apple certificate non-secret details */ export interface AppleCertificateNonSecretDetailsResponse extends AppleConnectionNonSecretResponse { /** * apple certificate non-secret details */ data: AppleCertificateNonSecretDetails; } /** * Apple connection secrets */ export interface AppleCertificateSecretDetailsResponse extends SharedConnectionResponse { /** * apple certificate secret details. */ data: AppleCertificateSecretDetails; } /** * Jira secret details */ export interface JiraSecretDetails { /** * baseUrl to connect to jira instance */ baseUrl: string; /** * username to connect to jira instance */ username: string; /** * password to connect to jira instance */ password: string; } /** * Jira connection secrets */ export interface JiraConnectionSecretRequest extends SharedConnectionRequest { /** * jira secret details */ data: JiraSecretDetails; } /** * Jira secret details */ export interface JiraSecretDetailsResponse { /** * baseUrl to connect to jira instance */ baseUrl: string; /** * username to connect to jira instance */ username: string; } /** * Jira connection secrets */ export interface JiraConnectionSecretResponse extends SharedConnectionResponse { /** * jira secret details */ data: JiraSecretDetailsResponse; } /** * private Jira connection secrets response */ export interface PrivateJiraConnectionSecretResponse extends PrivateSharedConnectionResponse { /** * jira secret details */ data: JiraSecretDetails; } /** * Google Play connection secrets this should be the JSON file data which is provided by google * play */ export interface GooglePlayConnectionSecretRequest extends SharedConnectionRequest { /** * google secret details */ data: any; } /** * Google Play connection secrets */ export interface GooglePlayConnectionSecretResponse extends SharedConnectionResponse { /** * google play secret details */ data: any; } /** * private google connection secrets response */ export interface PrivateGooglePlayConnectionSecretResponse extends PrivateSharedConnectionResponse { /** * google secret details */ data: any; } /** * Google Play non-secret data */ export interface GooglePlayConnectionNonSecretResponse extends SharedConnectionResponse { } /** * Google Play credentials non-secret details */ export interface GooglePlayCredentialNonSecretDetailsResponse extends GooglePlayConnectionNonSecretResponse { /** * Google Play credentials non-secret details */ data: any; } /** * Jira non-secret data */ export interface JiraConnectionNonSecretResponse extends SharedConnectionResponse { } /** * Jira credentials non-secret details */ export interface JiraCredentialNonSecretDetailsResponse extends GooglePlayConnectionNonSecretResponse { /** * Jira credentials non-secret details */ data: JiraSecretDetailsResponse; } export interface ApiTokenResponsev2 { /** * The unique id (UUID) of the api token */ id: string; /** * The creation time */ createdAt: string; /** * The token's scope. A list of allowed roles. */ scope?: string[]; /** * The encrypted value of a token. This value will only be returned for token of type * in_app_update. */ encryptedToken?: string; /** * The description of the token */ description?: string; } export interface UserDataResponse { /** * The unique id (UUID) of the user */ id?: string; /** * The display name of the user */ displayName?: string; /** * The name of the user */ name?: string; /** * The url at which the user's avatar can be reached */ avatarUrl?: string; } export interface ErrorDetailsv2 { /** * Possible values include: 'BadRequest', 'Conflict', 'NotAcceptable', 'NotFound', * 'InternalServerError', 'Unauthorized' */ code: string; message: string; } export interface ErrorResponsev2 { error: ErrorDetailsv2; } export interface FileAsset { id?: string; location?: string; token?: string; uploadDomain?: string; uploadWindowLocation?: string; urlEncodedToken?: string; } /** * The source repository */ export interface SourceRepository { /** * The repository name */ name?: string; /** * URL used to clone the repository */ cloneUrl?: string; } /** * The GitHub Installation */ export interface GitHubAccountLite { /** * GitHub Account Id */ id?: string; /** * GitHub Account Login Name */ login?: string; /** * GitHub Account Type */ type?: string; /** * GitHub Account Url */ url?: string; } /** * The GitHub Installation */ export interface