/** * The Jira Cloud platform REST API * Jira Cloud platform REST API documentation * * The version of the OpenAPI document: 1001.0.0-SNAPSHOT * Contact: ecosystem@atlassian.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { User } from './'; /** * Details about a project component. * @export * @interface Component */ export interface Component { /** * This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. * @type {string} * @memberof Component */ leadUserName?: string; /** * Indicates whether a user is associated with `assigneeType`. For example, if the `assigneeType` is set to `COMPONENT_LEAD` but the component lead is not set, then `false` is returned. * @type {boolean} * @memberof Component */ readonly isAssigneeTypeValid?: boolean; /** * The details of the user associated with `assigneeType`, if any. See `realAssignee` for details of the user assigned to issues created with this component. * @type {User} * @memberof Component */ readonly assignee?: User; /** * The type of the assignee that is assigned to issues created with this component, when an assignee cannot be set from the `assigneeType`. For example, `assigneeType` is set to `COMPONENT_LEAD` but no component lead is set. This property is set to one of the following values: * `PROJECT_LEAD` when `assigneeType` is `PROJECT_LEAD` and the project lead has permission to be assigned issues in the project that the component is in. * `COMPONENT_LEAD` when `assignee`Type is `COMPONENT_LEAD` and the component lead has permission to be assigned issues in the project that the component is in. * `UNASSIGNED` when `assigneeType` is `UNASSIGNED` and Jira is configured to allow unassigned issues. * `PROJECT_DEFAULT` when none of the preceding cases are true. * @type {string} * @memberof Component */ readonly realAssigneeType?: ComponentRealAssigneeTypeEnum; /** * The URL of the component. * @type {string} * @memberof Component */ readonly self?: string; /** * The key of the project the component is assigned to. Required when creating a component. Can\'t be updated. * @type {string} * @memberof Component */ project?: string; /** * The user assigned to issues created with this component, when `assigneeType` does not identify a valid assignee. * @type {User} * @memberof Component */ readonly realAssignee?: User; /** * The ID of the project the component is assigned to. * @type {number} * @memberof Component */ readonly projectId?: number; /** * The description for the component. Optional when creating or updating a component. * @type {string} * @memberof Component */ description?: string; /** * The unique name for the component in the project. Required when creating a component. Optional when updating a component. The maximum length is 255 characters. * @type {string} * @memberof Component */ name?: string; /** * The nominal user type used to determine the assignee for issues created with this component. See `realAssigneeType` for details on how the type of the user, and hence the user, assigned to issues is determined. Can take the following values: * `PROJECT_LEAD` the assignee to any issues created with this component is nominally the lead for the project the component is in. * `COMPONENT_LEAD` the assignee to any issues created with this component is nominally the lead for the component. * `UNASSIGNED` an assignee is not set for issues created with this component. * `PROJECT_DEFAULT` the assignee to any issues created with this component is nominally the default assignee for the project that the component is in. Default value: `PROJECT_DEFAULT`. Optional when creating or updating a component. * @type {string} * @memberof Component */ assigneeType?: ComponentAssigneeTypeEnum; /** * The accountId of the component\'s lead user. The accountId uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. Optional when creating or updating a component. * @type {string} * @memberof Component */ leadAccountId?: string; /** * The user details for the component\'s lead user. * @type {User} * @memberof Component */ readonly lead?: User; /** * The unique identifier for the component. * @type {string} * @memberof Component */ readonly id?: string; } export declare function ComponentFromJSON(json: any): Component; export declare function ComponentFromJSONTyped(json: any, ignoreDiscriminator: boolean): Component; export declare function ComponentToJSON(value?: Component): any; /** * @export * @enum {string} */ export declare enum ComponentRealAssigneeTypeEnum { PROJECTDEFAULT = "PROJECT_DEFAULT", COMPONENTLEAD = "COMPONENT_LEAD", PROJECTLEAD = "PROJECT_LEAD", UNASSIGNED = "UNASSIGNED" } /** * @export * @enum {string} */ export declare enum ComponentAssigneeTypeEnum { PROJECTDEFAULT = "PROJECT_DEFAULT", COMPONENTLEAD = "COMPONENT_LEAD", PROJECTLEAD = "PROJECT_LEAD", UNASSIGNED = "UNASSIGNED" }