jira.js
    Preparing search index...

    Function createServiceDeskClient

    • Parameters

      Returns {
          assets: {
              getAssetsWorkspaces: (
                  parameters?: { limit?: number; start?: number },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: { workspaceId?: string; [key: string]: unknown }[];
                      [key: string]: unknown;
                  },
              >;
              getInsightWorkspaces: (
                  parameters?: { limit?: number; start?: number },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: { workspaceId?: string; [key: string]: unknown }[];
                      [key: string]: unknown;
                  },
              >;
          };
          customer: {
              createCustomer: (
                  parameters: {
                      displayName?: string;
                      email?: string;
                      fullName?: string;
                      strictConflictStatusCode?: boolean;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _links?: {
                          avatarUrls?: Record<string, any>;
                          jiraRest?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      accountId?: string;
                      active?: boolean;
                      displayName?: string;
                      emailAddress?: string;
                      key?: string;
                      name?: string;
                      timeZone?: string;
                      [key: string]: unknown;
                  },
              >;
              createCustomerSkippingPermissionCheck: (
                  parameters: {
                      displayName?: string;
                      email?: string;
                      fullName?: string;
                      strictConflictStatusCode?: boolean;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _links?: {
                          avatarUrls?: Record<string, any>;
                          jiraRest?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      accountId?: string;
                      active?: boolean;
                      displayName?: string;
                      emailAddress?: string;
                      key?: string;
                      name?: string;
                      timeZone?: string;
                      [key: string]: unknown;
                  },
              >;
              revokePortalOnlyAccessForUser: (
                  parameters: { accountId: string },
                  options?: RequestOptions,
              ) => Promise<void>;
          };
          info: {
              getInfo: (
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _links?: { self?: string; [key: string]: unknown };
                      buildChangeSet?: string;
                      buildDate?: {
                          epochMillis?: number;
                          friendly?: string;
                          iso8601?: string;
                          jira?: string;
                          [key: string]: unknown;
                      };
                      isLicensedForUse?: boolean;
                      platformVersion?: string;
                      version?: string;
                      [key: string]: unknown;
                  },
              >;
          };
          knowledgebase: {
              getArticles: (
                  parameters: {
                      cursor?: string;
                      highlight: boolean;
                      limit?: number;
                      prev?: boolean;
                      query: string;
                      start?: number;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          content?: { iframeSrc?: (...)
                          | (...); [key: string]: unknown };
                          excerpt?: string;
                          source?: { type?: (...) | (...) | (...); [key: string]: unknown };
                          title?: string;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              viewArticle: (
                  parameters: { pageId: number },
                  options?: RequestOptions,
              ) => Promise<string>;
          };
          organization: {
              addOrganization: (
                  parameters: {
                      body: {
                          organizationId: number;
                          serviceDeskId?: string;
                          [key: string]: unknown;
                      };
                      serviceDeskId: string;
                  },
                  options?: RequestOptions,
              ) => Promise<void>;
              addUsersToOrganization: (
                  parameters: {
                      body: {
                          accountIds?: string[];
                          organizationId?: number;
                          usernames?: string[];
                          [key: string]: unknown;
                      };
                      organizationId: number;
                  },
                  options?: RequestOptions,
              ) => Promise<void>;
              createOrganization: (
                  parameters: { name: string },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _links?: { self?: string; [key: string]: unknown };
                      created?: {
                          epochMillis?: number;
                          friendly?: string;
                          iso8601?: string;
                          jira?: string;
                          [key: string]: unknown;
                      };
                      id?: string;
                      name?: string;
                      scimManaged?: boolean;
                      uuid?: string;
                      [key: string]: unknown;
                  },
              >;
              deleteOrganization: (
                  parameters: { organizationId: number },
                  options?: RequestOptions,
              ) => Promise<void>;
              deleteProperty: (
                  parameters: { organizationId: string; propertyKey: string },
                  options?: RequestOptions,
              ) => Promise<void>;
              getOrganization: (
                  parameters: { organizationId: number },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _links?: { self?: string; [key: string]: unknown };
                      created?: {
                          epochMillis?: number;
                          friendly?: string;
                          iso8601?: string;
                          jira?: string;
                          [key: string]: unknown;
                      };
                      id?: string;
                      name?: string;
                      scimManaged?: boolean;
                      uuid?: string;
                      [key: string]: unknown;
                  },
              >;
              getOrganizations: (
                  parameters?: { accountId?: string; limit?: number; start?: number },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          _links?: { self?: (...)
                          | (...); [key: string]: unknown };
                          created?: {
                              epochMillis?: (...) | (...);
                              friendly?: (...) | (...);
                              iso8601?: (...) | (...);
                              jira?: (...) | (...);
                              [key: string]: unknown;
                          };
                          id?: string;
                          name?: string;
                          scimManaged?: boolean;
                          uuid?: string;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              getPropertiesKeys: (
                  parameters: { organizationId: string },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      keys?: { key?: string; self?: string; [key: string]: unknown }[];
                      [key: string]: unknown;
                  },
              >;
              getProperty: (
                  parameters: { organizationId: string; propertyKey: string },
                  options?: RequestOptions,
              ) => Promise<{ key?: string; value?: unknown; [key: string]: unknown }>;
              getServiceDeskOrganizations: (
                  parameters: {
                      accountId?: string;
                      limit?: number;
                      serviceDeskId: string;
                      start?: number;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          _links?: { self?: (...)
                          | (...); [key: string]: unknown };
                          created?: {
                              epochMillis?: (...) | (...);
                              friendly?: (...) | (...);
                              iso8601?: (...) | (...);
                              jira?: (...) | (...);
                              [key: string]: unknown;
                          };
                          id?: string;
                          name?: string;
                          scimManaged?: boolean;
                          uuid?: string;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              getUsersInOrganization: (
                  parameters: { limit?: number; organizationId: number; start?: number },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          _links?: {
                              avatarUrls?: (...)
                              | (...);
                              jiraRest?: (...) | (...);
                              self?: (...) | (...);
                              [key: string]: unknown;
                          };
                          accountId?: string;
                          active?: boolean;
                          displayName?: string;
                          emailAddress?: string;
                          key?: string;
                          name?: string;
                          timeZone?: string;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              removeOrganization: (
                  parameters: {
                      body: {
                          organizationId: number;
                          serviceDeskId?: string;
                          [key: string]: unknown;
                      };
                      serviceDeskId: string;
                  },
                  options?: RequestOptions,
              ) => Promise<void>;
              removeUsersFromOrganization: (
                  parameters: {
                      body: {
                          accountIds?: string[];
                          organizationId?: number;
                          usernames?: string[];
                          [key: string]: unknown;
                      };
                      organizationId: number;
                  },
                  options?: RequestOptions,
              ) => Promise<void>;
              setProperty: (
                  parameters: {
                      body: Record<string, any>;
                      organizationId: string;
                      propertyKey: string;
                  },
                  options?: RequestOptions,
              ) => Promise<void>;
          };
          request: {
              addRequestParticipants: (
                  parameters: {
                      accountIds?: string[];
                      issueIdOrKey: string;
                      usernames?: string[];
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          _links?: {
                              avatarUrls?: (...)
                              | (...);
                              jiraRest?: (...) | (...);
                              self?: (...) | (...);
                              [key: string]: unknown;
                          };
                          accountId?: string;
                          active?: boolean;
                          displayName?: string;
                          emailAddress?: string;
                          key?: string;
                          name?: string;
                          timeZone?: string;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              answerApproval: (
                  parameters: {
                      approvalId: number;
                      decision?: string & {} | "approve" | "decline";
                      issueIdOrKey: string;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _links?: { self?: string; [key: string]: unknown };
                      approvers?: {
                          approver?: {
                              _links?: (...) | (...);
                              accountId?: (...) | (...);
                              active?: (...) | (...) | (...);
                              displayName?: (...) | (...);
                              emailAddress?: (...) | (...);
                              key?: (...) | (...);
                              name?: (...) | (...);
                              timeZone?: (...) | (...);
                              [key: string]: unknown;
                          };
                          approverDecision?: "pending"
                          | string & {}
                          | "approved"
                          | "declined";
                          [key: string]: unknown;
                      }[];
                      canAnswerApproval?: boolean;
                      completedDate?: {
                          epochMillis?: number;
                          friendly?: string;
                          iso8601?: string;
                          jira?: string;
                          [key: string]: unknown;
                      };
                      createdDate?: {
                          epochMillis?: number;
                          friendly?: string;
                          iso8601?: string;
                          jira?: string;
                          [key: string]: unknown;
                      };
                      finalDecision?: "pending"
                      | string & {}
                      | "approved"
                      | "declined";
                      id?: string;
                      name?: string;
                      [key: string]: unknown;
                  },
              >;
              createCommentWithAttachment: (
                  parameters: {
                      additionalComment?: { body?: string; [key: string]: unknown };
                      issueIdOrKey: string;
                      public?: boolean;
                      temporaryAttachmentIds?: string[];
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      attachments?: {
                          _expands?: string[];
                          _links?: {
                              base?: string;
                              context?: string;
                              next?: string;
                              prev?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          isLastPage?: boolean;
                          limit?: number;
                          size?: number;
                          start?: number;
                          values?: {
                              _links?: (...)
                              | (...);
                              author?: (...) | (...);
                              created?: (...) | (...);
                              filename?: (...) | (...);
                              mimeType?: (...) | (...);
                              size?: (...) | (...);
                              [key: string]: unknown;
                          }[];
                          [key: string]: unknown;
                      };
                      comment?: {
                          _expands?: string[];
                          _links?: { self?: string; [key: string]: unknown };
                          attachments?: {
                              _expands?: (...)[];
                              _links?: {
                                  base?: ...;
                                  context?: ...;
                                  next?: ...;
                                  prev?: ...;
                                  self?: ...;
                                  [key: ...]: ...;
                              };
                              isLastPage?: boolean;
                              limit?: number;
                              size?: number;
                              start?: number;
                              values?: (...)[];
                              [key: string]: unknown;
                          };
                          author?: {
                              _links?: {
                                  avatarUrls?: ...;
                                  jiraRest?: ...;
                                  self?: ...;
                                  [key: ...]: ...;
                              };
                              accountId?: string;
                              active?: boolean;
                              displayName?: string;
                              emailAddress?: string;
                              key?: string;
                              name?: string;
                              timeZone?: string;
                              [key: string]: unknown;
                          };
                          body?: string;
                          created?: {
                              epochMillis?: number;
                              friendly?: string;
                              iso8601?: string;
                              jira?: string;
                              [key: string]: unknown;
                          };
                          id?: string;
                          public?: boolean;
                          renderedBody?: { html?: string; [key: string]: unknown };
                          [key: string]: unknown;
                      };
                      [key: string]: unknown;
                  },
              >;
              createCustomerRequest: (
                  parameters: {
                      channel?: string;
                      form?: { answers?: Record<string, any>; [key: string]: unknown };
                      isAdfRequest?: boolean;
                      raiseOnBehalfOf?: string;
                      requestFieldValues?: Record<string, any>;
                      requestParticipants?: string[];
                      requestTypeId?: string;
                      serviceDeskId?: string;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          agent?: string;
                          jiraRest?: string;
                          self?: string;
                          web?: string;
                          [key: string]: unknown;
                      };
                      actions?: {
                          addAttachment?: { allowed?: boolean; [key: string]: unknown };
                          addComment?: { allowed?: boolean; [key: string]: unknown };
                          addParticipant?: { allowed?: boolean; [key: string]: unknown };
                          removeParticipant?: { allowed?: boolean; [key: string]: unknown };
                          [key: string]: unknown;
                      };
                      attachments?: {
                          _expands?: string[];
                          _links?: {
                              base?: string;
                              context?: string;
                              next?: string;
                              prev?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          isLastPage?: boolean;
                          limit?: number;
                          size?: number;
                          start?: number;
                          values?: {
                              _links?: (...)
                              | (...);
                              author?: (...) | (...);
                              created?: (...) | (...);
                              filename?: (...) | (...);
                              mimeType?: (...) | (...);
                              size?: (...) | (...);
                              [key: string]: unknown;
                          }[];
                          [key: string]: unknown;
                      };
                      comments?: {
                          _expands?: string[];
                          _links?: {
                              base?: string;
                              context?: string;
                              next?: string;
                              prev?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          isLastPage?: boolean;
                          limit?: number;
                          size?: number;
                          start?: number;
                          values?: {
                              _expands?: (...)
                              | (...);
                              _links?: (...) | (...);
                              attachments?: (...) | (...);
                              author?: (...) | (...);
                              body?: (...) | (...);
                              created?: (...) | (...);
                              id?: (...) | (...);
                              public?: (...) | (...) | (...);
                              renderedBody?: (...) | (...);
                              [key: string]: unknown;
                          }[];
                          [key: string]: unknown;
                      };
                      createdDate?: {
                          epochMillis?: number;
                          friendly?: string;
                          iso8601?: string;
                          jira?: string;
                          [key: string]: unknown;
                      };
                      currentStatus?: {
                          status?: string;
                          statusCategory?: | string & {}
                          | "NEW"
                          | "DONE"
                          | "UNDEFINED"
                          | "INDETERMINATE";
                          statusDate?: {
                              epochMillis?: number;
                              friendly?: string;
                              iso8601?: string;
                              jira?: string;
                              [key: string]: unknown;
                          };
                          [key: string]: unknown;
                      };
                      issueId?: string;
                      issueKey?: string;
                      participants?: {
                          _expands?: string[];
                          _links?: {
                              base?: string;
                              context?: string;
                              next?: string;
                              prev?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          isLastPage?: boolean;
                          limit?: number;
                          size?: number;
                          start?: number;
                          values?: {
                              _links?: (...)
                              | (...);
                              accountId?: (...) | (...);
                              active?: (...) | (...) | (...);
                              displayName?: (...) | (...);
                              emailAddress?: (...) | (...);
                              key?: (...) | (...);
                              name?: (...) | (...);
                              timeZone?: (...) | (...);
                              [key: string]: unknown;
                          }[];
                          [key: string]: unknown;
                      };
                      reporter?: {
                          _links?: {
                              avatarUrls?: Record<(...), (...)>;
                              jiraRest?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          accountId?: string;
                          active?: boolean;
                          displayName?: string;
                          emailAddress?: string;
                          key?: string;
                          name?: string;
                          timeZone?: string;
                          [key: string]: unknown;
                      };
                      requestFieldValues?: {
                          fieldId?: string;
                          label?: string;
                          renderedValue?: Record<string, any>;
                          value?: unknown;
                          [key: string]: unknown;
                      }[];
                      requestType?: {
                          _expands?: string[];
                          _links?: { self?: string; [key: string]: unknown };
                          canCreateRequest?: boolean;
                          description?: string;
                          fields?: {
                              canAddRequestParticipants?: boolean;
                              canRaiseOnBehalfOf?: boolean;
                              requestTypeFields?: (...)[];
                              [key: string]: unknown;
                          };
                          groupIds?: string[];
                          helpText?: string;
                          icon?: {
                              _links?: { iconUrls?: ...; [key: ...]: ... };
                              id?: string;
                              [key: string]: unknown;
                          };
                          id?: string;
                          issueTypeId?: string;
                          name?: string;
                          portalId?: string;
                          practice?: string;
                          restrictionStatus?: string & {}
                          | "OPEN"
                          | "RESTRICTED";
                          serviceDeskId?: string;
                          [key: string]: unknown;
                      };
                      requestTypeId?: string;
                      serviceDesk?: {
                          _links?: { self?: string; [key: string]: unknown };
                          id?: string;
                          projectId?: string;
                          projectKey?: string;
                          projectName?: string;
                          projectTypeKey?: string;
                          [key: string]: unknown;
                      };
                      serviceDeskId?: string;
                      sla?: {
                          _expands?: string[];
                          _links?: {
                              base?: string;
                              context?: string;
                              next?: string;
                              prev?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          isLastPage?: boolean;
                          limit?: number;
                          size?: number;
                          start?: number;
                          values?: {
                              _links?: (...)
                              | (...);
                              completedCycles?: (...) | (...);
                              id?: (...) | (...);
                              name?: (...) | (...);
                              ongoingCycle?: (...) | (...);
                              slaDisplayFormat?: (...) | (...);
                              [key: string]: unknown;
                          }[];
                          [key: string]: unknown;
                      };
                      status?: {
                          _expands?: string[];
                          _links?: {
                              base?: string;
                              context?: string;
                              next?: string;
                              prev?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          isLastPage?: boolean;
                          limit?: number;
                          size?: number;
                          start?: number;
                          values?: {
                              status?: (...)
                              | (...);
                              statusCategory?: (...) | (...) | (...) | (...) | (...) | (...);
                              statusDate?: (...) | (...);
                              [key: string]: unknown;
                          }[];
                          [key: string]: unknown;
                      };
                      summary?: string;
                      [key: string]: unknown;
                  },
              >;
              createRequestComment: (
                  parameters: { body?: string; issueIdOrKey: string; public?: boolean },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: { self?: string; [key: string]: unknown };
                      attachments?: {
                          _expands?: string[];
                          _links?: {
                              base?: string;
                              context?: string;
                              next?: string;
                              prev?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          isLastPage?: boolean;
                          limit?: number;
                          size?: number;
                          start?: number;
                          values?: {
                              _links?: (...)
                              | (...);
                              author?: (...) | (...);
                              created?: (...) | (...);
                              filename?: (...) | (...);
                              mimeType?: (...) | (...);
                              size?: (...) | (...);
                              [key: string]: unknown;
                          }[];
                          [key: string]: unknown;
                      };
                      author?: {
                          _links?: {
                              avatarUrls?: Record<(...), (...)>;
                              jiraRest?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          accountId?: string;
                          active?: boolean;
                          displayName?: string;
                          emailAddress?: string;
                          key?: string;
                          name?: string;
                          timeZone?: string;
                          [key: string]: unknown;
                      };
                      body?: string;
                      created?: {
                          epochMillis?: number;
                          friendly?: string;
                          iso8601?: string;
                          jira?: string;
                          [key: string]: unknown;
                      };
                      id?: string;
                      public?: boolean;
                      renderedBody?: { html?: string; [key: string]: unknown };
                      [key: string]: unknown;
                  },
              >;
              getApprovalById: (
                  parameters: { approvalId: number; issueIdOrKey: string },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _links?: { self?: string; [key: string]: unknown };
                      approvers?: {
                          approver?: {
                              _links?: (...) | (...);
                              accountId?: (...) | (...);
                              active?: (...) | (...) | (...);
                              displayName?: (...) | (...);
                              emailAddress?: (...) | (...);
                              key?: (...) | (...);
                              name?: (...) | (...);
                              timeZone?: (...) | (...);
                              [key: string]: unknown;
                          };
                          approverDecision?: "pending"
                          | string & {}
                          | "approved"
                          | "declined";
                          [key: string]: unknown;
                      }[];
                      canAnswerApproval?: boolean;
                      completedDate?: {
                          epochMillis?: number;
                          friendly?: string;
                          iso8601?: string;
                          jira?: string;
                          [key: string]: unknown;
                      };
                      createdDate?: {
                          epochMillis?: number;
                          friendly?: string;
                          iso8601?: string;
                          jira?: string;
                          [key: string]: unknown;
                      };
                      finalDecision?: "pending"
                      | string & {}
                      | "approved"
                      | "declined";
                      id?: string;
                      name?: string;
                      [key: string]: unknown;
                  },
              >;
              getApprovals: (
                  parameters: { issueIdOrKey: string; limit?: number; start?: number },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          _links?: { self?: (...)
                          | (...); [key: string]: unknown };
                          approvers?: { approver?: ...; approverDecision?: ...; [key: ...]: ... }[];
                          canAnswerApproval?: boolean;
                          completedDate?: {
                              epochMillis?: (...) | (...);
                              friendly?: (...) | (...);
                              iso8601?: (...) | (...);
                              jira?: (...) | (...);
                              [key: string]: unknown;
                          };
                          createdDate?: {
                              epochMillis?: (...)
                              | (...);
                              friendly?: (...) | (...);
                              iso8601?: (...) | (...);
                              jira?: (...) | (...);
                              [key: string]: unknown;
                          };
                          finalDecision?: "pending"
                          | string & {}
                          | "approved"
                          | "declined";
                          id?: string;
                          name?: string;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              getAttachmentContent: (
                  parameters: { attachmentId: number; issueIdOrKey: string },
                  options?: RequestOptions,
              ) => Promise<ArrayBuffer | ArrayBufferView<ArrayBufferLike>>;
              getAttachmentsForRequest: (
                  parameters: { issueIdOrKey: string; limit: number; start: number },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          _links?: {
                              content?: (...)
                              | (...);
                              jiraRest?: (...) | (...);
                              self?: (...) | (...);
                              thumbnail?: (...) | (...);
                              [key: string]: unknown;
                          };
                          author?: {
                              _links?: (...)
                              | (...);
                              accountId?: (...) | (...);
                              active?: (...) | (...) | (...);
                              displayName?: (...) | (...);
                              emailAddress?: (...) | (...);
                              key?: (...) | (...);
                              name?: (...) | (...);
                              timeZone?: (...) | (...);
                              [key: string]: unknown;
                          };
                          created?: {
                              epochMillis?: (...)
                              | (...);
                              friendly?: (...) | (...);
                              iso8601?: (...) | (...);
                              jira?: (...) | (...);
                              [key: string]: unknown;
                          };
                          filename?: string;
                          mimeType?: string;
                          size?: number;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              getAttachmentThumbnail: (
                  parameters: { attachmentId: number; issueIdOrKey: string },
                  options?: RequestOptions,
              ) => Promise<ArrayBuffer | ArrayBufferView<ArrayBufferLike>>;
              getCustomerRequestByIdOrKey: (
                  parameters: { expand?: string[]; issueIdOrKey: string },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          agent?: string;
                          jiraRest?: string;
                          self?: string;
                          web?: string;
                          [key: string]: unknown;
                      };
                      actions?: {
                          addAttachment?: { allowed?: boolean; [key: string]: unknown };
                          addComment?: { allowed?: boolean; [key: string]: unknown };
                          addParticipant?: { allowed?: boolean; [key: string]: unknown };
                          removeParticipant?: { allowed?: boolean; [key: string]: unknown };
                          [key: string]: unknown;
                      };
                      attachments?: {
                          _expands?: string[];
                          _links?: {
                              base?: string;
                              context?: string;
                              next?: string;
                              prev?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          isLastPage?: boolean;
                          limit?: number;
                          size?: number;
                          start?: number;
                          values?: {
                              _links?: (...)
                              | (...);
                              author?: (...) | (...);
                              created?: (...) | (...);
                              filename?: (...) | (...);
                              mimeType?: (...) | (...);
                              size?: (...) | (...);
                              [key: string]: unknown;
                          }[];
                          [key: string]: unknown;
                      };
                      comments?: {
                          _expands?: string[];
                          _links?: {
                              base?: string;
                              context?: string;
                              next?: string;
                              prev?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          isLastPage?: boolean;
                          limit?: number;
                          size?: number;
                          start?: number;
                          values?: {
                              _expands?: (...)
                              | (...);
                              _links?: (...) | (...);
                              attachments?: (...) | (...);
                              author?: (...) | (...);
                              body?: (...) | (...);
                              created?: (...) | (...);
                              id?: (...) | (...);
                              public?: (...) | (...) | (...);
                              renderedBody?: (...) | (...);
                              [key: string]: unknown;
                          }[];
                          [key: string]: unknown;
                      };
                      createdDate?: {
                          epochMillis?: number;
                          friendly?: string;
                          iso8601?: string;
                          jira?: string;
                          [key: string]: unknown;
                      };
                      currentStatus?: {
                          status?: string;
                          statusCategory?: | string & {}
                          | "NEW"
                          | "DONE"
                          | "UNDEFINED"
                          | "INDETERMINATE";
                          statusDate?: {
                              epochMillis?: number;
                              friendly?: string;
                              iso8601?: string;
                              jira?: string;
                              [key: string]: unknown;
                          };
                          [key: string]: unknown;
                      };
                      issueId?: string;
                      issueKey?: string;
                      participants?: {
                          _expands?: string[];
                          _links?: {
                              base?: string;
                              context?: string;
                              next?: string;
                              prev?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          isLastPage?: boolean;
                          limit?: number;
                          size?: number;
                          start?: number;
                          values?: {
                              _links?: (...)
                              | (...);
                              accountId?: (...) | (...);
                              active?: (...) | (...) | (...);
                              displayName?: (...) | (...);
                              emailAddress?: (...) | (...);
                              key?: (...) | (...);
                              name?: (...) | (...);
                              timeZone?: (...) | (...);
                              [key: string]: unknown;
                          }[];
                          [key: string]: unknown;
                      };
                      reporter?: {
                          _links?: {
                              avatarUrls?: Record<(...), (...)>;
                              jiraRest?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          accountId?: string;
                          active?: boolean;
                          displayName?: string;
                          emailAddress?: string;
                          key?: string;
                          name?: string;
                          timeZone?: string;
                          [key: string]: unknown;
                      };
                      requestFieldValues?: {
                          fieldId?: string;
                          label?: string;
                          renderedValue?: Record<string, any>;
                          value?: unknown;
                          [key: string]: unknown;
                      }[];
                      requestType?: {
                          _expands?: string[];
                          _links?: { self?: string; [key: string]: unknown };
                          canCreateRequest?: boolean;
                          description?: string;
                          fields?: {
                              canAddRequestParticipants?: boolean;
                              canRaiseOnBehalfOf?: boolean;
                              requestTypeFields?: (...)[];
                              [key: string]: unknown;
                          };
                          groupIds?: string[];
                          helpText?: string;
                          icon?: {
                              _links?: { iconUrls?: ...; [key: ...]: ... };
                              id?: string;
                              [key: string]: unknown;
                          };
                          id?: string;
                          issueTypeId?: string;
                          name?: string;
                          portalId?: string;
                          practice?: string;
                          restrictionStatus?: string & {}
                          | "OPEN"
                          | "RESTRICTED";
                          serviceDeskId?: string;
                          [key: string]: unknown;
                      };
                      requestTypeId?: string;
                      serviceDesk?: {
                          _links?: { self?: string; [key: string]: unknown };
                          id?: string;
                          projectId?: string;
                          projectKey?: string;
                          projectName?: string;
                          projectTypeKey?: string;
                          [key: string]: unknown;
                      };
                      serviceDeskId?: string;
                      sla?: {
                          _expands?: string[];
                          _links?: {
                              base?: string;
                              context?: string;
                              next?: string;
                              prev?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          isLastPage?: boolean;
                          limit?: number;
                          size?: number;
                          start?: number;
                          values?: {
                              _links?: (...)
                              | (...);
                              completedCycles?: (...) | (...);
                              id?: (...) | (...);
                              name?: (...) | (...);
                              ongoingCycle?: (...) | (...);
                              slaDisplayFormat?: (...) | (...);
                              [key: string]: unknown;
                          }[];
                          [key: string]: unknown;
                      };
                      status?: {
                          _expands?: string[];
                          _links?: {
                              base?: string;
                              context?: string;
                              next?: string;
                              prev?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          isLastPage?: boolean;
                          limit?: number;
                          size?: number;
                          start?: number;
                          values?: {
                              status?: (...)
                              | (...);
                              statusCategory?: (...) | (...) | (...) | (...) | (...) | (...);
                              statusDate?: (...) | (...);
                              [key: string]: unknown;
                          }[];
                          [key: string]: unknown;
                      };
                      summary?: string;
                      [key: string]: unknown;
                  },
              >;
              getCustomerRequests: (
                  parameters?: {
                      approvalStatus?: string;
                      expand?: string[];
                      limit?: number;
                      organizationId?: number;
                      requestOwnership?: string[];
                      requestStatus?: string;
                      requestTypeId?: number;
                      searchTerm?: string;
                      serviceDeskId?: number;
                      start?: number;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          _expands?: string[];
                          _links?: {
                              agent?: (...)
                              | (...);
                              jiraRest?: (...) | (...);
                              self?: (...) | (...);
                              web?: (...) | (...);
                              [key: string]: unknown;
                          };
                          actions?: {
                              addAttachment?: (...)
                              | (...);
                              addComment?: (...) | (...);
                              addParticipant?: (...) | (...);
                              removeParticipant?: (...) | (...);
                              [key: string]: unknown;
                          };
                          attachments?: {
                              _expands?: (...)
                              | (...);
                              _links?: (...) | (...);
                              isLastPage?: (...) | (...) | (...);
                              limit?: (...) | (...);
                              size?: (...) | (...);
                              start?: (...) | (...);
                              values?: (...) | (...);
                              [key: string]: unknown;
                          };
                          comments?: {
                              _expands?: (...)
                              | (...);
                              _links?: (...) | (...);
                              isLastPage?: (...) | (...) | (...);
                              limit?: (...) | (...);
                              size?: (...) | (...);
                              start?: (...) | (...);
                              values?: (...) | (...);
                              [key: string]: unknown;
                          };
                          createdDate?: {
                              epochMillis?: (...)
                              | (...);
                              friendly?: (...) | (...);
                              iso8601?: (...) | (...);
                              jira?: (...) | (...);
                              [key: string]: unknown;
                          };
                          currentStatus?: {
                              status?: (...)
                              | (...);
                              statusCategory?: (...) | (...) | (...) | (...) | (...) | (...);
                              statusDate?: (...) | (...);
                              [key: string]: unknown;
                          };
                          issueId?: string;
                          issueKey?: string;
                          participants?: {
                              _expands?: (...)
                              | (...);
                              _links?: (...) | (...);
                              isLastPage?: (...) | (...) | (...);
                              limit?: (...) | (...);
                              size?: (...) | (...);
                              start?: (...) | (...);
                              values?: (...) | (...);
                              [key: string]: unknown;
                          };
                          reporter?: {
                              _links?: (...)
                              | (...);
                              accountId?: (...) | (...);
                              active?: (...) | (...) | (...);
                              displayName?: (...) | (...);
                              emailAddress?: (...) | (...);
                              key?: (...) | (...);
                              name?: (...) | (...);
                              timeZone?: (...) | (...);
                              [key: string]: unknown;
                          };
                          requestFieldValues?: {
                              fieldId?: ...;
                              label?: ...;
                              renderedValue?: ...;
                              value?: ...;
                              [key: ...]: ...;
                          }[];
                          requestType?: {
                              _expands?: (...)
                              | (...);
                              _links?: (...) | (...);
                              canCreateRequest?: (...) | (...) | (...);
                              description?: (...) | (...);
                              fields?: (...) | (...);
                              groupIds?: (...) | (...);
                              helpText?: (...) | (...);
                              icon?: (...) | (...);
                              id?: (...) | (...);
                              issueTypeId?: (...) | (...);
                              name?: (...) | (...);
                              portalId?: (...) | (...);
                              practice?: (...) | (...);
                              restrictionStatus?: (...) | (...) | (...) | (...);
                              serviceDeskId?: (...) | (...);
                              [key: string]: unknown;
                          };
                          requestTypeId?: string;
                          serviceDesk?: {
                              _links?: (...)
                              | (...);
                              id?: (...) | (...);
                              projectId?: (...) | (...);
                              projectKey?: (...) | (...);
                              projectName?: (...) | (...);
                              projectTypeKey?: (...) | (...);
                              [key: string]: unknown;
                          };
                          serviceDeskId?: string;
                          sla?: {
                              _expands?: (...)
                              | (...);
                              _links?: (...) | (...);
                              isLastPage?: (...) | (...) | (...);
                              limit?: (...) | (...);
                              size?: (...) | (...);
                              start?: (...) | (...);
                              values?: (...) | (...);
                              [key: string]: unknown;
                          };
                          status?: {
                              _expands?: (...)
                              | (...);
                              _links?: (...) | (...);
                              isLastPage?: (...) | (...) | (...);
                              limit?: (...) | (...);
                              size?: (...) | (...);
                              start?: (...) | (...);
                              values?: (...) | (...);
                              [key: string]: unknown;
                          };
                          summary?: string;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              getCustomerRequestStatus: (
                  parameters: { issueIdOrKey: string; limit?: number; start?: number },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          status?: string;
                          statusCategory?: | string & {}
                          | "NEW"
                          | "DONE"
                          | "UNDEFINED"
                          | "INDETERMINATE";
                          statusDate?: {
                              epochMillis?: (...)
                              | (...);
                              friendly?: (...) | (...);
                              iso8601?: (...) | (...);
                              jira?: (...) | (...);
                              [key: string]: unknown;
                          };
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              getCustomerTransitions: (
                  parameters: { issueIdOrKey: string; limit?: number; start?: number },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: { id?: string; name?: string; [key: string]: unknown }[];
                      [key: string]: unknown;
                  },
              >;
              getRequestCommentById: (
                  parameters: {
                      commentId: number;
                      expand?: string[];
                      issueIdOrKey: string;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: { self?: string; [key: string]: unknown };
                      attachments?: {
                          _expands?: string[];
                          _links?: {
                              base?: string;
                              context?: string;
                              next?: string;
                              prev?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          isLastPage?: boolean;
                          limit?: number;
                          size?: number;
                          start?: number;
                          values?: {
                              _links?: (...)
                              | (...);
                              author?: (...) | (...);
                              created?: (...) | (...);
                              filename?: (...) | (...);
                              mimeType?: (...) | (...);
                              size?: (...) | (...);
                              [key: string]: unknown;
                          }[];
                          [key: string]: unknown;
                      };
                      author?: {
                          _links?: {
                              avatarUrls?: Record<(...), (...)>;
                              jiraRest?: string;
                              self?: string;
                              [key: string]: unknown;
                          };
                          accountId?: string;
                          active?: boolean;
                          displayName?: string;
                          emailAddress?: string;
                          key?: string;
                          name?: string;
                          timeZone?: string;
                          [key: string]: unknown;
                      };
                      body?: string;
                      created?: {
                          epochMillis?: number;
                          friendly?: string;
                          iso8601?: string;
                          jira?: string;
                          [key: string]: unknown;
                      };
                      id?: string;
                      public?: boolean;
                      renderedBody?: { html?: string; [key: string]: unknown };
                      [key: string]: unknown;
                  },
              >;
              getRequestComments: (
                  parameters: {
                      expand?: string[];
                      internal?: boolean;
                      issueIdOrKey: string;
                      limit?: number;
                      public?: boolean;
                      start?: number;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          _expands?: string[];
                          _links?: { self?: (...)
                          | (...); [key: string]: unknown };
                          attachments?: {
                              _expands?: (...) | (...);
                              _links?: (...) | (...);
                              isLastPage?: (...) | (...) | (...);
                              limit?: (...) | (...);
                              size?: (...) | (...);
                              start?: (...) | (...);
                              values?: (...) | (...);
                              [key: string]: unknown;
                          };
                          author?: {
                              _links?: (...)
                              | (...);
                              accountId?: (...) | (...);
                              active?: (...) | (...) | (...);
                              displayName?: (...) | (...);
                              emailAddress?: (...) | (...);
                              key?: (...) | (...);
                              name?: (...) | (...);
                              timeZone?: (...) | (...);
                              [key: string]: unknown;
                          };
                          body?: string;
                          created?: {
                              epochMillis?: (...)
                              | (...);
                              friendly?: (...) | (...);
                              iso8601?: (...) | (...);
                              jira?: (...) | (...);
                              [key: string]: unknown;
                          };
                          id?: string;
                          public?: boolean;
                          renderedBody?: { html?: (...)
                          | (...); [key: string]: unknown };
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              getRequestParticipants: (
                  parameters: { issueIdOrKey: string; limit?: number; start?: number },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          _links?: {
                              avatarUrls?: (...)
                              | (...);
                              jiraRest?: (...) | (...);
                              self?: (...) | (...);
                              [key: string]: unknown;
                          };
                          accountId?: string;
                          active?: boolean;
                          displayName?: string;
                          emailAddress?: string;
                          key?: string;
                          name?: string;
                          timeZone?: string;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              getSlaInformation: (
                  parameters: { issueIdOrKey: string; limit?: number; start?: number },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          _links?: { self?: (...)
                          | (...); [key: string]: unknown };
                          completedCycles?: {
                              breached?: ...;
                              breachTime?: ...;
                              elapsedTime?: ...;
                              goalDuration?: ...;
                              remainingTime?: ...;
                              startTime?: ...;
                              stopTime?: ...;
                              [key: ...]: ...;
                          }[];
                          id?: string;
                          name?: string;
                          ongoingCycle?: {
                              breached?: (...)
                              | (...)
                              | (...);
                              breachTime?: (...) | (...);
                              elapsedTime?: (...) | (...);
                              goalDuration?: (...) | (...);
                              paused?: (...) | (...) | (...);
                              remainingTime?: (...) | (...);
                              startTime?: (...) | (...);
                              withinCalendarHours?: (...) | (...) | (...);
                              [key: string]: unknown;
                          };
                          slaDisplayFormat?: string;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              getSlaInformationById: (
                  parameters: { issueIdOrKey: string; slaMetricId: number },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _links?: { self?: string; [key: string]: unknown };
                      completedCycles?: {
                          breached?: boolean;
                          breachTime?: {
                              epochMillis?: (...) | (...);
                              friendly?: (...) | (...);
                              iso8601?: (...) | (...);
                              jira?: (...) | (...);
                              [key: string]: unknown;
                          };
                          elapsedTime?: {
                              friendly?: (...)
                              | (...);
                              millis?: (...) | (...);
                              [key: string]: unknown;
                          };
                          goalDuration?: {
                              friendly?: (...)
                              | (...);
                              millis?: (...) | (...);
                              [key: string]: unknown;
                          };
                          remainingTime?: {
                              friendly?: (...)
                              | (...);
                              millis?: (...) | (...);
                              [key: string]: unknown;
                          };
                          startTime?: {
                              epochMillis?: (...)
                              | (...);
                              friendly?: (...) | (...);
                              iso8601?: (...) | (...);
                              jira?: (...) | (...);
                              [key: string]: unknown;
                          };
                          stopTime?: {
                              epochMillis?: (...)
                              | (...);
                              friendly?: (...) | (...);
                              iso8601?: (...) | (...);
                              jira?: (...) | (...);
                              [key: string]: unknown;
                          };
                          [key: string]: unknown;
                      }[];
                      id?: string;
                      name?: string;
                      ongoingCycle?: {
                          breached?: boolean;
                          breachTime?: {
                              epochMillis?: number;
                              friendly?: string;
                              iso8601?: string;
                              jira?: string;
                              [key: string]: unknown;
                          };
                          elapsedTime?: {
                              friendly?: string;
                              millis?: number;
                              [key: string]: unknown;
                          };
                          goalDuration?: {
                              friendly?: string;
                              millis?: number;
                              [key: string]: unknown;
                          };
                          paused?: boolean;
                          remainingTime?: {
                              friendly?: string;
                              millis?: number;
                              [key: string]: unknown;
                          };
                          startTime?: {
                              epochMillis?: number;
                              friendly?: string;
                              iso8601?: string;
                              jira?: string;
                              [key: string]: unknown;
                          };
                          withinCalendarHours?: boolean;
                          [key: string]: unknown;
                      };
                      slaDisplayFormat?: string;
                      [key: string]: unknown;
                  },
              >;
              getSubscriptionStatus: (
                  parameters: { issueIdOrKey: string },
                  options?: RequestOptions,
              ) => Promise<{ subscribed?: boolean; [key: string]: unknown }>;
              performCustomerTransition: (
                  parameters: {
                      additionalComment?: { body?: string; [key: string]: unknown };
                      id?: string;
                      issueIdOrKey: string;
                  },
                  options?: RequestOptions,
              ) => Promise<void>;
              removeRequestParticipants: (
                  parameters: {
                      accountIds?: string[];
                      issueIdOrKey: string;
                      usernames?: string[];
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          _links?: {
                              avatarUrls?: (...)
                              | (...);
                              jiraRest?: (...) | (...);
                              self?: (...) | (...);
                              [key: string]: unknown;
                          };
                          accountId?: string;
                          active?: boolean;
                          displayName?: string;
                          emailAddress?: string;
                          key?: string;
                          name?: string;
                          timeZone?: string;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              subscribe: (
                  parameters: { issueIdOrKey: string },
                  options?: RequestOptions,
              ) => Promise<void>;
              unsubscribe: (
                  parameters: { issueIdOrKey: string },
                  options?: RequestOptions,
              ) => Promise<void>;
              validateCustomerRequest: (
                  parameters: {
                      channel?: string;
                      form?: { answers?: Record<string, any>; [key: string]: unknown };
                      isAdfRequest?: boolean;
                      raiseOnBehalfOf?: string;
                      requestFieldValues?: Record<string, any>;
                      requestParticipants?: string[];
                      requestTypeId?: string;
                      serviceDeskId?: string;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      errorMessage?: string;
                      errorMessages?: string[];
                      fieldErrors?: {
                          field?: string;
                          message?: string;
                          [key: string]: unknown;
                      }[];
                      formErrors?: {
                          code?: string;
                          context?: { id?: ...; type?: ...; [key: ...]: ... }[];
                          detail?: string;
                          status?: number;
                          title?: string;
                          [key: string]: unknown;
                      }[];
                      reasonKey?: string;
                      valid?: boolean;
                      [key: string]: unknown;
                  },
              >;
          };
          servicedesk: {
              addCustomers: (
                  parameters: {
                      accountIds?: string[];
                      serviceDeskId: string;
                      usernames?: string[];
                  },
                  options?: RequestOptions,
              ) => Promise<void>;
              addCustomersSkippingPermissionCheck: (
                  parameters: {
                      accountIds?: string[];
                      serviceDeskId: string;
                      usernames?: string[];
                  },
                  options?: RequestOptions,
              ) => Promise<void>;
              attachTemporaryFile: (
                  parameters: {
                      body: {
                          bytes?: string[];
                          contentType?: string;
                          empty?: boolean;
                          inputStream?: Record<string, any>;
                          name?: string;
                          originalFilename?: string;
                          resource?: {
                              contentAsByteArray?: string[];
                              description?: string;
                              file?: string;
                              filename?: string;
                              inputStream?: Record<string, any>;
                              open?: boolean;
                              readable?: boolean;
                              uri?: string;
                              url?: string;
                              [key: string]: unknown;
                          };
                          size?: number;
                          [key: string]: unknown;
                      }[];
                      serviceDeskId: string;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      temporaryAttachments?: {
                          fileName?: string;
                          temporaryAttachmentId?: string;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              getIssuesInQueue: (
                  parameters: {
                      limit?: number;
                      queueId: number;
                      serviceDeskId: string;
                      start?: number;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          changelog?: {
                              histories?: (...)
                              | (...);
                              maxResults?: (...) | (...);
                              startAt?: (...) | (...);
                              total?: (...) | (...);
                              [key: string]: unknown;
                          };
                          editmeta?: { fields?: (...)
                          | (...); [key: string]: unknown };
                          expand?: string;
                          fields?: Record<string, any>;
                          fieldsToInclude?: {
                              actuallyIncluded?: (...) | (...);
                              excluded?: (...) | (...);
                              included?: (...) | (...);
                              [key: string]: unknown;
                          };
                          id?: string;
                          key?: string;
                          names?: Record<string, any>;
                          operations?: { linkGroups?: (...) | (...); [key: string]: unknown };
                          properties?: Record<string, any>;
                          renderedFields?: Record<string, any>;
                          schema?: Record<string, any>;
                          self?: string;
                          transitions?: {
                              expand?: ...;
                              fields?: ...;
                              hasScreen?: ...;
                              id?: ...;
                              isAvailable?: ...;
                              isConditional?: ...;
                              isGlobal?: ...;
                              isInitial?: ...;
                              looped?: ...;
                              name?: ...;
                              to?: ...;
                              [key: ...]: ...;
                          }[];
                          versionedRepresentations?: Record<string, any>;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              getQueue: (
                  parameters: {
                      includeCount?: boolean;
                      queueId: number;
                      serviceDeskId: string;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _links?: { self?: string; [key: string]: unknown };
                      fields?: string[];
                      id?: string;
                      issueCount?: number;
                      jql?: string;
                      name?: string;
                      [key: string]: unknown;
                  },
              >;
              getQueues: (
                  parameters: {
                      includeCount?: boolean;
                      limit?: number;
                      serviceDeskId: string;
                      start?: number;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          _links?: { self?: (...)
                          | (...); [key: string]: unknown };
                          fields?: string[];
                          id?: string;
                          issueCount?: number;
                          jql?: string;
                          name?: string;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              getRequestTypeById: (
                  parameters: {
                      expand?: string[];
                      requestTypeId: string;
                      serviceDeskId: string;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: { self?: string; [key: string]: unknown };
                      canCreateRequest?: boolean;
                      description?: string;
                      fields?: {
                          canAddRequestParticipants?: boolean;
                          canRaiseOnBehalfOf?: boolean;
                          requestTypeFields?: {
                              defaultValues?: (...) | (...);
                              description?: (...) | (...);
                              fieldId?: (...) | (...);
                              jiraSchema?: (...) | (...);
                              name?: (...) | (...);
                              presetValues?: (...) | (...);
                              required?: (...) | (...) | (...);
                              validValues?: (...) | (...);
                              visible?: (...) | (...) | (...);
                              [key: string]: unknown;
                          }[];
                          [key: string]: unknown;
                      };
                      groupIds?: string[];
                      helpText?: string;
                      icon?: {
                          _links?: { iconUrls?: Record<(...), (...)>; [key: string]: unknown };
                          id?: string;
                          [key: string]: unknown;
                      };
                      id?: string;
                      issueTypeId?: string;
                      name?: string;
                      portalId?: string;
                      practice?: string;
                      restrictionStatus?: string & {}
                      | "OPEN"
                      | "RESTRICTED";
                      serviceDeskId?: string;
                      [key: string]: unknown;
                  },
              >;
              getRequestTypeFields: (
                  parameters: {
                      expand?: string[];
                      requestTypeId: number;
                      serviceDeskId: string;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      canAddRequestParticipants?: boolean;
                      canRaiseOnBehalfOf?: boolean;
                      requestTypeFields?: {
                          defaultValues?: RequestTypeFieldValue[];
                          description?: string;
                          fieldId?: string;
                          jiraSchema?: {
                              configuration?: (...)
                              | (...);
                              custom?: (...) | (...);
                              customId?: (...) | (...);
                              items?: (...) | (...);
                              system?: (...) | (...);
                              type: string;
                              [key: string]: unknown;
                          };
                          name?: string;
                          presetValues?: string[];
                          required?: boolean;
                          validValues?: RequestTypeFieldValue[];
                          visible?: boolean;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              getRequestTypeGroups: (
                  parameters: { limit?: number; serviceDeskId: string; start?: number },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: { id?: string; name?: string; [key: string]: unknown }[];
                      [key: string]: unknown;
                  },
              >;
              getRequestTypes: (
                  parameters: {
                      expand?: string[];
                      groupId?: number;
                      includeHiddenRequestTypesInSearch?: boolean;
                      limit?: number;
                      restrictionStatus?: string;
                      searchQuery?: string;
                      serviceDeskId: string;
                      start?: number;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          _expands?: string[];
                          _links?: { self?: (...)
                          | (...); [key: string]: unknown };
                          canCreateRequest?: boolean;
                          description?: string;
                          fields?: {
                              canAddRequestParticipants?: (...) | (...) | (...);
                              canRaiseOnBehalfOf?: (...) | (...) | (...);
                              requestTypeFields?: (...) | (...);
                              [key: string]: unknown;
                          };
                          groupIds?: string[];
                          helpText?: string;
                          icon?: {
                              _links?: (...)
                              | (...);
                              id?: (...) | (...);
                              [key: string]: unknown;
                          };
                          id?: string;
                          issueTypeId?: string;
                          name?: string;
                          portalId?: string;
                          practice?: string;
                          restrictionStatus?: string & {}
                          | "OPEN"
                          | "RESTRICTED";
                          serviceDeskId?: string;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              getServiceDeskArticles: (
                  parameters: {
                      cursor?: string;
                      highlight?: boolean;
                      limit?: number;
                      prev?: boolean;
                      query: string;
                      serviceDeskId: string;
                      start?: number;
                  },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          content?: { iframeSrc?: (...)
                          | (...); [key: string]: unknown };
                          excerpt?: string;
                          source?: { type?: (...) | (...) | (...); [key: string]: unknown };
                          title?: string;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
              getServiceDeskById: (
                  parameters: { serviceDeskId: string },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _links?: { self?: string; [key: string]: unknown };
                      id?: string;
                      projectId?: string;
                      projectKey?: string;
                      projectName?: string;
                      projectTypeKey?: string;
                      [key: string]: unknown;
                  },
              >;
              getServiceDesks: (
                  parameters?: { limit?: number; start?: number },
                  options?: RequestOptions,
              ) => Promise<
                  {
                      _expands?: string[];
                      _links?: {
                          base?: string;
                          context?: string;
                          next?: string;
                          prev?: string;
                          self?: string;
                          [key: string]: unknown;
                      };
                      isLastPage?: boolean;
                      limit?: number;
                      size?: number;
                      start?: number;
                      values?: {
                          _links?: { self?: (...)
                          | (...); [key: string]: unknown };
                          id?: string;
                          projectId?: string;
                          projectKey?: string;
                          projectName?: string;
                          projectTypeKey?: string;
                          [key: string]: unknown;
                      }[];
                      [key: string]: unknown;
                  },
              >;
          };
      }