import { BaseAPIRequestFactory } from "../../datadog-api-client-common/baseapi";
import { Configuration } from "../../datadog-api-client-common/configuration";
import { RequestContext, ResponseContext } from "../../datadog-api-client-common/http/http";
import { AutomationRuleCreateRequest } from "../models/AutomationRuleCreateRequest";
import { AutomationRuleResponse } from "../models/AutomationRuleResponse";
import { AutomationRulesResponse } from "../models/AutomationRulesResponse";
import { AutomationRuleUpdateRequest } from "../models/AutomationRuleUpdateRequest";
import { Case } from "../models/Case";
import { CaseAggregateRequest } from "../models/CaseAggregateRequest";
import { CaseAggregateResponse } from "../models/CaseAggregateResponse";
import { CaseAssignRequest } from "../models/CaseAssignRequest";
import { CaseBulkUpdateRequest } from "../models/CaseBulkUpdateRequest";
import { CaseCommentRequest } from "../models/CaseCommentRequest";
import { CaseCountResponse } from "../models/CaseCountResponse";
import { CaseCreateRequest } from "../models/CaseCreateRequest";
import { CaseEmptyRequest } from "../models/CaseEmptyRequest";
import { CaseInsightsRequest } from "../models/CaseInsightsRequest";
import { CaseLinkCreateRequest } from "../models/CaseLinkCreateRequest";
import { CaseLinkResponse } from "../models/CaseLinkResponse";
import { CaseLinksResponse } from "../models/CaseLinksResponse";
import { CaseNotificationRuleCreateRequest } from "../models/CaseNotificationRuleCreateRequest";
import { CaseNotificationRuleResponse } from "../models/CaseNotificationRuleResponse";
import { CaseNotificationRulesResponse } from "../models/CaseNotificationRulesResponse";
import { CaseNotificationRuleUpdateRequest } from "../models/CaseNotificationRuleUpdateRequest";
import { CaseResponse } from "../models/CaseResponse";
import { CaseSortableField } from "../models/CaseSortableField";
import { CasesResponse } from "../models/CasesResponse";
import { CaseUpdateAttributesRequest } from "../models/CaseUpdateAttributesRequest";
import { CaseUpdateCommentRequest } from "../models/CaseUpdateCommentRequest";
import { CaseUpdateCustomAttributeRequest } from "../models/CaseUpdateCustomAttributeRequest";
import { CaseUpdateDescriptionRequest } from "../models/CaseUpdateDescriptionRequest";
import { CaseUpdateDueDateRequest } from "../models/CaseUpdateDueDateRequest";
import { CaseUpdatePriorityRequest } from "../models/CaseUpdatePriorityRequest";
import { CaseUpdateResolvedReasonRequest } from "../models/CaseUpdateResolvedReasonRequest";
import { CaseUpdateStatusRequest } from "../models/CaseUpdateStatusRequest";
import { CaseUpdateTitleRequest } from "../models/CaseUpdateTitleRequest";
import { CaseViewCreateRequest } from "../models/CaseViewCreateRequest";
import { CaseViewResponse } from "../models/CaseViewResponse";
import { CaseViewsResponse } from "../models/CaseViewsResponse";
import { CaseViewUpdateRequest } from "../models/CaseViewUpdateRequest";
import { CaseWatchersResponse } from "../models/CaseWatchersResponse";
import { JiraIssueCreateRequest } from "../models/JiraIssueCreateRequest";
import { JiraIssueLinkRequest } from "../models/JiraIssueLinkRequest";
import { MaintenanceWindowCreateRequest } from "../models/MaintenanceWindowCreateRequest";
import { MaintenanceWindowResponse } from "../models/MaintenanceWindowResponse";
import { MaintenanceWindowsResponse } from "../models/MaintenanceWindowsResponse";
import { MaintenanceWindowUpdateRequest } from "../models/MaintenanceWindowUpdateRequest";
import { NotebookCreateRequest } from "../models/NotebookCreateRequest";
import { ProjectCreateRequest } from "../models/ProjectCreateRequest";
import { ProjectFavoritesResponse } from "../models/ProjectFavoritesResponse";
import { ProjectRelationship } from "../models/ProjectRelationship";
import { ProjectResponse } from "../models/ProjectResponse";
import { ProjectsResponse } from "../models/ProjectsResponse";
import { ProjectUpdateRequest } from "../models/ProjectUpdateRequest";
import { RelationshipToIncidentRequest } from "../models/RelationshipToIncidentRequest";
import { ServiceNowTicketCreateRequest } from "../models/ServiceNowTicketCreateRequest";
import { TimelineResponse } from "../models/TimelineResponse";
export declare class CaseManagementApiRequestFactory extends BaseAPIRequestFactory {
    addCaseInsights(caseId: string, body: CaseInsightsRequest, _options?: Configuration): Promise<RequestContext>;
    aggregateCases(body: CaseAggregateRequest, _options?: Configuration): Promise<RequestContext>;
    archiveCase(caseId: string, body: CaseEmptyRequest, _options?: Configuration): Promise<RequestContext>;
    assignCase(caseId: string, body: CaseAssignRequest, _options?: Configuration): Promise<RequestContext>;
    bulkUpdateCases(body: CaseBulkUpdateRequest, _options?: Configuration): Promise<RequestContext>;
    commentCase(caseId: string, body: CaseCommentRequest, _options?: Configuration): Promise<RequestContext>;
    countCases(queryFilter?: string, groupBys?: string, limit?: number, _options?: Configuration): Promise<RequestContext>;
    createCase(body: CaseCreateRequest, _options?: Configuration): Promise<RequestContext>;
    createCaseAutomationRule(projectId: string, body: AutomationRuleCreateRequest, _options?: Configuration): Promise<RequestContext>;
    createCaseJiraIssue(caseId: string, body: JiraIssueCreateRequest, _options?: Configuration): Promise<RequestContext>;
    createCaseLink(body: CaseLinkCreateRequest, _options?: Configuration): Promise<RequestContext>;
    createCaseNotebook(caseId: string, body: NotebookCreateRequest, _options?: Configuration): Promise<RequestContext>;
    createCaseServiceNowTicket(caseId: string, body: ServiceNowTicketCreateRequest, _options?: Configuration): Promise<RequestContext>;
    createCaseView(body: CaseViewCreateRequest, _options?: Configuration): Promise<RequestContext>;
    createMaintenanceWindow(body: MaintenanceWindowCreateRequest, _options?: Configuration): Promise<RequestContext>;
    createProject(body: ProjectCreateRequest, _options?: Configuration): Promise<RequestContext>;
    createProjectNotificationRule(projectId: string, body: CaseNotificationRuleCreateRequest, _options?: Configuration): Promise<RequestContext>;
    deleteCaseAutomationRule(projectId: string, ruleId: string, _options?: Configuration): Promise<RequestContext>;
    deleteCaseComment(caseId: string, cellId: string, _options?: Configuration): Promise<RequestContext>;
    deleteCaseCustomAttribute(caseId: string, customAttributeKey: string, _options?: Configuration): Promise<RequestContext>;
    deleteCaseLink(linkId: string, _options?: Configuration): Promise<RequestContext>;
    deleteCaseView(viewId: string, _options?: Configuration): Promise<RequestContext>;
    deleteMaintenanceWindow(maintenanceWindowId: string, _options?: Configuration): Promise<RequestContext>;
    deleteProject(projectId: string, _options?: Configuration): Promise<RequestContext>;
    deleteProjectNotificationRule(projectId: string, notificationRuleId: string, _options?: Configuration): Promise<RequestContext>;
    disableCaseAutomationRule(projectId: string, ruleId: string, _options?: Configuration): Promise<RequestContext>;
    enableCaseAutomationRule(projectId: string, ruleId: string, _options?: Configuration): Promise<RequestContext>;
    favoriteCaseProject(projectId: string, _options?: Configuration): Promise<RequestContext>;
    getCase(caseId: string, _options?: Configuration): Promise<RequestContext>;
    getCaseAutomationRule(projectId: string, ruleId: string, _options?: Configuration): Promise<RequestContext>;
    getCaseView(viewId: string, _options?: Configuration): Promise<RequestContext>;
    getProject(projectId: string, _options?: Configuration): Promise<RequestContext>;
    getProjectNotificationRules(projectId: string, _options?: Configuration): Promise<RequestContext>;
    getProjects(_options?: Configuration): Promise<RequestContext>;
    linkIncident(caseId: string, body: RelationshipToIncidentRequest, _options?: Configuration): Promise<RequestContext>;
    linkJiraIssueToCase(caseId: string, body: JiraIssueLinkRequest, _options?: Configuration): Promise<RequestContext>;
    listCaseAutomationRules(projectId: string, _options?: Configuration): Promise<RequestContext>;
    listCaseLinks(entityType: string, entityId: string, relationship?: string, _options?: Configuration): Promise<RequestContext>;
    listCaseTimeline(caseId: string, pageSize?: number, pageNumber?: number, sortAscending?: boolean, _options?: Configuration): Promise<RequestContext>;
    listCaseViews(projectId: string, _options?: Configuration): Promise<RequestContext>;
    listCaseWatchers(caseId: string, _options?: Configuration): Promise<RequestContext>;
    listMaintenanceWindows(_options?: Configuration): Promise<RequestContext>;
    listUserCaseProjectFavorites(_options?: Configuration): Promise<RequestContext>;
    moveCaseToProject(caseId: string, body: ProjectRelationship, _options?: Configuration): Promise<RequestContext>;
    removeCaseInsights(caseId: string, body: CaseInsightsRequest, _options?: Configuration): Promise<RequestContext>;
    searchCases(pageSize?: number, pageNumber?: number, sortField?: CaseSortableField, filter?: string, sortAsc?: boolean, _options?: Configuration): Promise<RequestContext>;
    unarchiveCase(caseId: string, body: CaseEmptyRequest, _options?: Configuration): Promise<RequestContext>;
    unassignCase(caseId: string, body: CaseEmptyRequest, _options?: Configuration): Promise<RequestContext>;
    unfavoriteCaseProject(projectId: string, _options?: Configuration): Promise<RequestContext>;
    unlinkJiraIssue(caseId: string, _options?: Configuration): Promise<RequestContext>;
    unwatchCase(caseId: string, userUuid: string, _options?: Configuration): Promise<RequestContext>;
    updateAttributes(caseId: string, body: CaseUpdateAttributesRequest, _options?: Configuration): Promise<RequestContext>;
    updateCaseAutomationRule(projectId: string, ruleId: string, body: AutomationRuleUpdateRequest, _options?: Configuration): Promise<RequestContext>;
    updateCaseComment(caseId: string, cellId: string, body: CaseUpdateCommentRequest, _options?: Configuration): Promise<RequestContext>;
    updateCaseCustomAttribute(caseId: string, customAttributeKey: string, body: CaseUpdateCustomAttributeRequest, _options?: Configuration): Promise<RequestContext>;
    updateCaseDescription(caseId: string, body: CaseUpdateDescriptionRequest, _options?: Configuration): Promise<RequestContext>;
    updateCaseDueDate(caseId: string, body: CaseUpdateDueDateRequest, _options?: Configuration): Promise<RequestContext>;
    updateCaseResolvedReason(caseId: string, body: CaseUpdateResolvedReasonRequest, _options?: Configuration): Promise<RequestContext>;
    updateCaseTitle(caseId: string, body: CaseUpdateTitleRequest, _options?: Configuration): Promise<RequestContext>;
    updateCaseView(viewId: string, body: CaseViewUpdateRequest, _options?: Configuration): Promise<RequestContext>;
    updateMaintenanceWindow(maintenanceWindowId: string, body: MaintenanceWindowUpdateRequest, _options?: Configuration): Promise<RequestContext>;
    updatePriority(caseId: string, body: CaseUpdatePriorityRequest, _options?: Configuration): Promise<RequestContext>;
    updateProject(projectId: string, body: ProjectUpdateRequest, _options?: Configuration): Promise<RequestContext>;
    updateProjectNotificationRule(projectId: string, notificationRuleId: string, body: CaseNotificationRuleUpdateRequest, _options?: Configuration): Promise<RequestContext>;
    updateStatus(caseId: string, body: CaseUpdateStatusRequest, _options?: Configuration): Promise<RequestContext>;
    watchCase(caseId: string, userUuid: string, _options?: Configuration): Promise<RequestContext>;
}
export declare class CaseManagementApiResponseProcessor {
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to addCaseInsights
     * @throws ApiException if the response code was not in [200, 299]
     */
    addCaseInsights(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to aggregateCases
     * @throws ApiException if the response code was not in [200, 299]
     */
    aggregateCases(response: ResponseContext): Promise<CaseAggregateResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to archiveCase
     * @throws ApiException if the response code was not in [200, 299]
     */
    archiveCase(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to assignCase
     * @throws ApiException if the response code was not in [200, 299]
     */
    assignCase(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to bulkUpdateCases
     * @throws ApiException if the response code was not in [200, 299]
     */
    bulkUpdateCases(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to commentCase
     * @throws ApiException if the response code was not in [200, 299]
     */
    commentCase(response: ResponseContext): Promise<TimelineResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to countCases
     * @throws ApiException if the response code was not in [200, 299]
     */
    countCases(response: ResponseContext): Promise<CaseCountResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to createCase
     * @throws ApiException if the response code was not in [200, 299]
     */
    createCase(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to createCaseAutomationRule
     * @throws ApiException if the response code was not in [200, 299]
     */
    createCaseAutomationRule(response: ResponseContext): Promise<AutomationRuleResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to createCaseJiraIssue
     * @throws ApiException if the response code was not in [200, 299]
     */
    createCaseJiraIssue(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to createCaseLink
     * @throws ApiException if the response code was not in [200, 299]
     */
    createCaseLink(response: ResponseContext): Promise<CaseLinkResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to createCaseNotebook
     * @throws ApiException if the response code was not in [200, 299]
     */
    createCaseNotebook(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to createCaseServiceNowTicket
     * @throws ApiException if the response code was not in [200, 299]
     */
    createCaseServiceNowTicket(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to createCaseView
     * @throws ApiException if the response code was not in [200, 299]
     */
    createCaseView(response: ResponseContext): Promise<CaseViewResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to createMaintenanceWindow
     * @throws ApiException if the response code was not in [200, 299]
     */
    createMaintenanceWindow(response: ResponseContext): Promise<MaintenanceWindowResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to createProject
     * @throws ApiException if the response code was not in [200, 299]
     */
    createProject(response: ResponseContext): Promise<ProjectResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to createProjectNotificationRule
     * @throws ApiException if the response code was not in [200, 299]
     */
    createProjectNotificationRule(response: ResponseContext): Promise<CaseNotificationRuleResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to deleteCaseAutomationRule
     * @throws ApiException if the response code was not in [200, 299]
     */
    deleteCaseAutomationRule(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to deleteCaseComment
     * @throws ApiException if the response code was not in [200, 299]
     */
    deleteCaseComment(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to deleteCaseCustomAttribute
     * @throws ApiException if the response code was not in [200, 299]
     */
    deleteCaseCustomAttribute(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to deleteCaseLink
     * @throws ApiException if the response code was not in [200, 299]
     */
    deleteCaseLink(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to deleteCaseView
     * @throws ApiException if the response code was not in [200, 299]
     */
    deleteCaseView(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to deleteMaintenanceWindow
     * @throws ApiException if the response code was not in [200, 299]
     */
    deleteMaintenanceWindow(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to deleteProject
     * @throws ApiException if the response code was not in [200, 299]
     */
    deleteProject(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to deleteProjectNotificationRule
     * @throws ApiException if the response code was not in [200, 299]
     */
    deleteProjectNotificationRule(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to disableCaseAutomationRule
     * @throws ApiException if the response code was not in [200, 299]
     */
    disableCaseAutomationRule(response: ResponseContext): Promise<AutomationRuleResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to enableCaseAutomationRule
     * @throws ApiException if the response code was not in [200, 299]
     */
    enableCaseAutomationRule(response: ResponseContext): Promise<AutomationRuleResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to favoriteCaseProject
     * @throws ApiException if the response code was not in [200, 299]
     */
    favoriteCaseProject(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to getCase
     * @throws ApiException if the response code was not in [200, 299]
     */
    getCase(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to getCaseAutomationRule
     * @throws ApiException if the response code was not in [200, 299]
     */
    getCaseAutomationRule(response: ResponseContext): Promise<AutomationRuleResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to getCaseView
     * @throws ApiException if the response code was not in [200, 299]
     */
    getCaseView(response: ResponseContext): Promise<CaseViewResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to getProject
     * @throws ApiException if the response code was not in [200, 299]
     */
    getProject(response: ResponseContext): Promise<ProjectResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to getProjectNotificationRules
     * @throws ApiException if the response code was not in [200, 299]
     */
    getProjectNotificationRules(response: ResponseContext): Promise<CaseNotificationRulesResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to getProjects
     * @throws ApiException if the response code was not in [200, 299]
     */
    getProjects(response: ResponseContext): Promise<ProjectsResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to linkIncident
     * @throws ApiException if the response code was not in [200, 299]
     */
    linkIncident(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to linkJiraIssueToCase
     * @throws ApiException if the response code was not in [200, 299]
     */
    linkJiraIssueToCase(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to listCaseAutomationRules
     * @throws ApiException if the response code was not in [200, 299]
     */
    listCaseAutomationRules(response: ResponseContext): Promise<AutomationRulesResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to listCaseLinks
     * @throws ApiException if the response code was not in [200, 299]
     */
    listCaseLinks(response: ResponseContext): Promise<CaseLinksResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to listCaseTimeline
     * @throws ApiException if the response code was not in [200, 299]
     */
    listCaseTimeline(response: ResponseContext): Promise<TimelineResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to listCaseViews
     * @throws ApiException if the response code was not in [200, 299]
     */
    listCaseViews(response: ResponseContext): Promise<CaseViewsResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to listCaseWatchers
     * @throws ApiException if the response code was not in [200, 299]
     */
    listCaseWatchers(response: ResponseContext): Promise<CaseWatchersResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to listMaintenanceWindows
     * @throws ApiException if the response code was not in [200, 299]
     */
    listMaintenanceWindows(response: ResponseContext): Promise<MaintenanceWindowsResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to listUserCaseProjectFavorites
     * @throws ApiException if the response code was not in [200, 299]
     */
    listUserCaseProjectFavorites(response: ResponseContext): Promise<ProjectFavoritesResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to moveCaseToProject
     * @throws ApiException if the response code was not in [200, 299]
     */
    moveCaseToProject(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to removeCaseInsights
     * @throws ApiException if the response code was not in [200, 299]
     */
    removeCaseInsights(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to searchCases
     * @throws ApiException if the response code was not in [200, 299]
     */
    searchCases(response: ResponseContext): Promise<CasesResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to unarchiveCase
     * @throws ApiException if the response code was not in [200, 299]
     */
    unarchiveCase(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to unassignCase
     * @throws ApiException if the response code was not in [200, 299]
     */
    unassignCase(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to unfavoriteCaseProject
     * @throws ApiException if the response code was not in [200, 299]
     */
    unfavoriteCaseProject(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to unlinkJiraIssue
     * @throws ApiException if the response code was not in [200, 299]
     */
    unlinkJiraIssue(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to unwatchCase
     * @throws ApiException if the response code was not in [200, 299]
     */
    unwatchCase(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to updateAttributes
     * @throws ApiException if the response code was not in [200, 299]
     */
    updateAttributes(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to updateCaseAutomationRule
     * @throws ApiException if the response code was not in [200, 299]
     */
    updateCaseAutomationRule(response: ResponseContext): Promise<AutomationRuleResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to updateCaseComment
     * @throws ApiException if the response code was not in [200, 299]
     */
    updateCaseComment(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to updateCaseCustomAttribute
     * @throws ApiException if the response code was not in [200, 299]
     */
    updateCaseCustomAttribute(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to updateCaseDescription
     * @throws ApiException if the response code was not in [200, 299]
     */
    updateCaseDescription(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to updateCaseDueDate
     * @throws ApiException if the response code was not in [200, 299]
     */
    updateCaseDueDate(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to updateCaseResolvedReason
     * @throws ApiException if the response code was not in [200, 299]
     */
    updateCaseResolvedReason(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to updateCaseTitle
     * @throws ApiException if the response code was not in [200, 299]
     */
    updateCaseTitle(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to updateCaseView
     * @throws ApiException if the response code was not in [200, 299]
     */
    updateCaseView(response: ResponseContext): Promise<CaseViewResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to updateMaintenanceWindow
     * @throws ApiException if the response code was not in [200, 299]
     */
    updateMaintenanceWindow(response: ResponseContext): Promise<MaintenanceWindowResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to updatePriority
     * @throws ApiException if the response code was not in [200, 299]
     */
    updatePriority(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to updateProject
     * @throws ApiException if the response code was not in [200, 299]
     */
    updateProject(response: ResponseContext): Promise<ProjectResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to updateProjectNotificationRule
     * @throws ApiException if the response code was not in [200, 299]
     */
    updateProjectNotificationRule(response: ResponseContext): Promise<void>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to updateStatus
     * @throws ApiException if the response code was not in [200, 299]
     */
    updateStatus(response: ResponseContext): Promise<CaseResponse>;
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to watchCase
     * @throws ApiException if the response code was not in [200, 299]
     */
    watchCase(response: ResponseContext): Promise<void>;
}
export interface CaseManagementApiAddCaseInsightsRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Case insights request.
     * @type CaseInsightsRequest
     */
    body: CaseInsightsRequest;
}
export interface CaseManagementApiAggregateCasesRequest {
    /**
     * Case aggregate request payload.
     * @type CaseAggregateRequest
     */
    body: CaseAggregateRequest;
}
export interface CaseManagementApiArchiveCaseRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Archive case payload
     * @type CaseEmptyRequest
     */
    body: CaseEmptyRequest;
}
export interface CaseManagementApiAssignCaseRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Assign case payload
     * @type CaseAssignRequest
     */
    body: CaseAssignRequest;
}
export interface CaseManagementApiBulkUpdateCasesRequest {
    /**
     * Case bulk update request payload.
     * @type CaseBulkUpdateRequest
     */
    body: CaseBulkUpdateRequest;
}
export interface CaseManagementApiCommentCaseRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Case comment payload
     * @type CaseCommentRequest
     */
    body: CaseCommentRequest;
}
export interface CaseManagementApiCountCasesRequest {
    /**
     * Filter query for cases.
     * @type string
     */
    queryFilter?: string;
    /**
     * Comma-separated fields to group by.
     * @type string
     */
    groupBys?: string;
    /**
     * Maximum facet values to return.
     * @type number
     */
    limit?: number;
}
export interface CaseManagementApiCreateCaseRequest {
    /**
     * Case payload
     * @type CaseCreateRequest
     */
    body: CaseCreateRequest;
}
export interface CaseManagementApiCreateCaseAutomationRuleRequest {
    /**
     * The UUID of the project that owns the automation rules.
     * @type string
     */
    projectId: string;
    /**
     * Automation rule payload.
     * @type AutomationRuleCreateRequest
     */
    body: AutomationRuleCreateRequest;
}
export interface CaseManagementApiCreateCaseJiraIssueRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Jira issue creation request
     * @type JiraIssueCreateRequest
     */
    body: JiraIssueCreateRequest;
}
export interface CaseManagementApiCreateCaseLinkRequest {
    /**
     * Case link create request.
     * @type CaseLinkCreateRequest
     */
    body: CaseLinkCreateRequest;
}
export interface CaseManagementApiCreateCaseNotebookRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Notebook creation request
     * @type NotebookCreateRequest
     */
    body: NotebookCreateRequest;
}
export interface CaseManagementApiCreateCaseServiceNowTicketRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * ServiceNow ticket creation request
     * @type ServiceNowTicketCreateRequest
     */
    body: ServiceNowTicketCreateRequest;
}
export interface CaseManagementApiCreateCaseViewRequest {
    /**
     * Case view payload.
     * @type CaseViewCreateRequest
     */
    body: CaseViewCreateRequest;
}
export interface CaseManagementApiCreateMaintenanceWindowRequest {
    /**
     * Maintenance window payload.
     * @type MaintenanceWindowCreateRequest
     */
    body: MaintenanceWindowCreateRequest;
}
export interface CaseManagementApiCreateProjectRequest {
    /**
     * Project payload.
     * @type ProjectCreateRequest
     */
    body: ProjectCreateRequest;
}
export interface CaseManagementApiCreateProjectNotificationRuleRequest {
    /**
     * Project UUID
     * @type string
     */
    projectId: string;
    /**
     * Notification rule payload
     * @type CaseNotificationRuleCreateRequest
     */
    body: CaseNotificationRuleCreateRequest;
}
export interface CaseManagementApiDeleteCaseAutomationRuleRequest {
    /**
     * The UUID of the project that owns the automation rules.
     * @type string
     */
    projectId: string;
    /**
     * The UUID of the automation rule.
     * @type string
     */
    ruleId: string;
}
export interface CaseManagementApiDeleteCaseCommentRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * The UUID of the timeline cell (comment) to update.
     * @type string
     */
    cellId: string;
}
export interface CaseManagementApiDeleteCaseCustomAttributeRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Case Custom attribute's key
     * @type string
     */
    customAttributeKey: string;
}
export interface CaseManagementApiDeleteCaseLinkRequest {
    /**
     * The UUID of the case link.
     * @type string
     */
    linkId: string;
}
export interface CaseManagementApiDeleteCaseViewRequest {
    /**
     * The UUID of the case view.
     * @type string
     */
    viewId: string;
}
export interface CaseManagementApiDeleteMaintenanceWindowRequest {
    /**
     * The UUID of the maintenance window.
     * @type string
     */
    maintenanceWindowId: string;
}
export interface CaseManagementApiDeleteProjectRequest {
    /**
     * Project UUID.
     * @type string
     */
    projectId: string;
}
export interface CaseManagementApiDeleteProjectNotificationRuleRequest {
    /**
     * Project UUID
     * @type string
     */
    projectId: string;
    /**
     * Notification Rule UUID
     * @type string
     */
    notificationRuleId: string;
}
export interface CaseManagementApiDisableCaseAutomationRuleRequest {
    /**
     * The UUID of the project that owns the automation rules.
     * @type string
     */
    projectId: string;
    /**
     * The UUID of the automation rule.
     * @type string
     */
    ruleId: string;
}
export interface CaseManagementApiEnableCaseAutomationRuleRequest {
    /**
     * The UUID of the project that owns the automation rules.
     * @type string
     */
    projectId: string;
    /**
     * The UUID of the automation rule.
     * @type string
     */
    ruleId: string;
}
export interface CaseManagementApiFavoriteCaseProjectRequest {
    /**
     * Project UUID.
     * @type string
     */
    projectId: string;
}
export interface CaseManagementApiGetCaseRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
}
export interface CaseManagementApiGetCaseAutomationRuleRequest {
    /**
     * The UUID of the project that owns the automation rules.
     * @type string
     */
    projectId: string;
    /**
     * The UUID of the automation rule.
     * @type string
     */
    ruleId: string;
}
export interface CaseManagementApiGetCaseViewRequest {
    /**
     * The UUID of the case view.
     * @type string
     */
    viewId: string;
}
export interface CaseManagementApiGetProjectRequest {
    /**
     * Project UUID.
     * @type string
     */
    projectId: string;
}
export interface CaseManagementApiGetProjectNotificationRulesRequest {
    /**
     * Project UUID
     * @type string
     */
    projectId: string;
}
export interface CaseManagementApiLinkIncidentRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Incident link request
     * @type RelationshipToIncidentRequest
     */
    body: RelationshipToIncidentRequest;
}
export interface CaseManagementApiLinkJiraIssueToCaseRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Jira issue link request
     * @type JiraIssueLinkRequest
     */
    body: JiraIssueLinkRequest;
}
export interface CaseManagementApiListCaseAutomationRulesRequest {
    /**
     * The UUID of the project that owns the automation rules.
     * @type string
     */
    projectId: string;
}
export interface CaseManagementApiListCaseLinksRequest {
    /**
     * The entity type to look up links for. Use `CASE` to find links for a specific case.
     * @type string
     */
    entityType: string;
    /**
     * The UUID of the entity to look up links for.
     * @type string
     */
    entityId: string;
    /**
     * Optional filter to only return links of a specific relationship type (for example, `BLOCKS` or `CAUSES`).
     * @type string
     */
    relationship?: string;
}
export interface CaseManagementApiListCaseTimelineRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Number of timeline cells to return per page.
     * @type number
     */
    pageSize?: number;
    /**
     * Zero-based page number for pagination.
     * @type number
     */
    pageNumber?: number;
    /**
     * If `true`, returns timeline cells in chronological order (oldest first). Defaults to `false` (newest first).
     * @type boolean
     */
    sortAscending?: boolean;
}
export interface CaseManagementApiListCaseViewsRequest {
    /**
     * Filter views by project identifier.
     * @type string
     */
    projectId: string;
}
export interface CaseManagementApiListCaseWatchersRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
}
export interface CaseManagementApiMoveCaseToProjectRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Project update request
     * @type ProjectRelationship
     */
    body: ProjectRelationship;
}
export interface CaseManagementApiRemoveCaseInsightsRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Case insights request.
     * @type CaseInsightsRequest
     */
    body: CaseInsightsRequest;
}
export interface CaseManagementApiSearchCasesRequest {
    /**
     * Size for a given page. The maximum allowed value is 100.
     * @type number
     */
    pageSize?: number;
    /**
     * Specific page number to return.
     * @type number
     */
    pageNumber?: number;
    /**
     * Specify which field to sort
     * @type CaseSortableField
     */
    sortField?: CaseSortableField;
    /**
     * Search query
     * @type string
     */
    filter?: string;
    /**
     * Specify if order is ascending or not
     * @type boolean
     */
    sortAsc?: boolean;
}
export interface CaseManagementApiUnarchiveCaseRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Unarchive case payload
     * @type CaseEmptyRequest
     */
    body: CaseEmptyRequest;
}
export interface CaseManagementApiUnassignCaseRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Unassign case payload
     * @type CaseEmptyRequest
     */
    body: CaseEmptyRequest;
}
export interface CaseManagementApiUnfavoriteCaseProjectRequest {
    /**
     * Project UUID.
     * @type string
     */
    projectId: string;
}
export interface CaseManagementApiUnlinkJiraIssueRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
}
export interface CaseManagementApiUnwatchCaseRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * The UUID of the user to add or remove as a watcher.
     * @type string
     */
    userUuid: string;
}
export interface CaseManagementApiUpdateAttributesRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Case attributes update payload
     * @type CaseUpdateAttributesRequest
     */
    body: CaseUpdateAttributesRequest;
}
export interface CaseManagementApiUpdateCaseAutomationRuleRequest {
    /**
     * The UUID of the project that owns the automation rules.
     * @type string
     */
    projectId: string;
    /**
     * The UUID of the automation rule.
     * @type string
     */
    ruleId: string;
    /**
     * Automation rule payload.
     * @type AutomationRuleUpdateRequest
     */
    body: AutomationRuleUpdateRequest;
}
export interface CaseManagementApiUpdateCaseCommentRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * The UUID of the timeline cell (comment) to update.
     * @type string
     */
    cellId: string;
    /**
     * Case update comment payload.
     * @type CaseUpdateCommentRequest
     */
    body: CaseUpdateCommentRequest;
}
export interface CaseManagementApiUpdateCaseCustomAttributeRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Case Custom attribute's key
     * @type string
     */
    customAttributeKey: string;
    /**
     * Update case custom attribute payload
     * @type CaseUpdateCustomAttributeRequest
     */
    body: CaseUpdateCustomAttributeRequest;
}
export interface CaseManagementApiUpdateCaseDescriptionRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Case description update payload
     * @type CaseUpdateDescriptionRequest
     */
    body: CaseUpdateDescriptionRequest;
}
export interface CaseManagementApiUpdateCaseDueDateRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Case due date update payload.
     * @type CaseUpdateDueDateRequest
     */
    body: CaseUpdateDueDateRequest;
}
export interface CaseManagementApiUpdateCaseResolvedReasonRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Case resolved reason update payload.
     * @type CaseUpdateResolvedReasonRequest
     */
    body: CaseUpdateResolvedReasonRequest;
}
export interface CaseManagementApiUpdateCaseTitleRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Case title update payload
     * @type CaseUpdateTitleRequest
     */
    body: CaseUpdateTitleRequest;
}
export interface CaseManagementApiUpdateCaseViewRequest {
    /**
     * The UUID of the case view.
     * @type string
     */
    viewId: string;
    /**
     * Case view payload.
     * @type CaseViewUpdateRequest
     */
    body: CaseViewUpdateRequest;
}
export interface CaseManagementApiUpdateMaintenanceWindowRequest {
    /**
     * The UUID of the maintenance window.
     * @type string
     */
    maintenanceWindowId: string;
    /**
     * Maintenance window payload.
     * @type MaintenanceWindowUpdateRequest
     */
    body: MaintenanceWindowUpdateRequest;
}
export interface CaseManagementApiUpdatePriorityRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Case priority update payload
     * @type CaseUpdatePriorityRequest
     */
    body: CaseUpdatePriorityRequest;
}
export interface CaseManagementApiUpdateProjectRequest {
    /**
     * Project UUID.
     * @type string
     */
    projectId: string;
    /**
     * Project payload.
     * @type ProjectUpdateRequest
     */
    body: ProjectUpdateRequest;
}
export interface CaseManagementApiUpdateProjectNotificationRuleRequest {
    /**
     * Project UUID
     * @type string
     */
    projectId: string;
    /**
     * Notification Rule UUID
     * @type string
     */
    notificationRuleId: string;
    /**
     * Notification rule payload
     * @type CaseNotificationRuleUpdateRequest
     */
    body: CaseNotificationRuleUpdateRequest;
}
export interface CaseManagementApiUpdateStatusRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * Case status update payload
     * @type CaseUpdateStatusRequest
     */
    body: CaseUpdateStatusRequest;
}
export interface CaseManagementApiWatchCaseRequest {
    /**
     * Case's UUID or key
     * @type string
     */
    caseId: string;
    /**
     * The UUID of the user to add or remove as a watcher.
     * @type string
     */
    userUuid: string;
}
export declare class CaseManagementApi {
    private requestFactory;
    private responseProcessor;
    private configuration;
    constructor(configuration: Configuration, requestFactory?: CaseManagementApiRequestFactory, responseProcessor?: CaseManagementApiResponseProcessor);
    /**
     * Adds one or more insights to a case. Insights are references to related Datadog resources (such as monitors, security signals, incidents, or error tracking issues) that provide investigative context. Up to 100 insights can be added per request. Each insight requires a type (see `CaseInsightType` for allowed values), a ref (URL path to the resource), and a resource_id.
     * @param param The request object
     */
    addCaseInsights(param: CaseManagementApiAddCaseInsightsRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Performs an aggregation query over cases, grouping results by specified fields and returning counts per group along with a total. Useful for dashboards and analytics.
     * @param param The request object
     */
    aggregateCases(param: CaseManagementApiAggregateCasesRequest, options?: Configuration): Promise<CaseAggregateResponse>;
    /**
     * Archive case
     * @param param The request object
     */
    archiveCase(param: CaseManagementApiArchiveCaseRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Assign case to a user
     * @param param The request object
     */
    assignCase(param: CaseManagementApiAssignCaseRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Applies a single action (such as changing priority, status, assignment, or archiving) to multiple cases at once. The list of case IDs and the action type with its payload are specified in the request body.
     * @param param The request object
     */
    bulkUpdateCases(param: CaseManagementApiBulkUpdateCasesRequest, options?: Configuration): Promise<void>;
    /**
     * Comment case
     * @param param The request object
     */
    commentCase(param: CaseManagementApiCommentCaseRequest, options?: Configuration): Promise<TimelineResponse>;
    /**
     * Returns case counts, optionally grouped by one or more fields (for example, status, priority). Supports a query filter to narrow the scope.
     * @param param The request object
     */
    countCases(param?: CaseManagementApiCountCasesRequest, options?: Configuration): Promise<CaseCountResponse>;
    /**
     * Create a Case
     * @param param The request object
     */
    createCase(param: CaseManagementApiCreateCaseRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Creates an automation rule for a project. The rule defines a trigger event (for example, case created, status transitioned) and an action to execute.
     * @param param The request object
     */
    createCaseAutomationRule(param: CaseManagementApiCreateCaseAutomationRuleRequest, options?: Configuration): Promise<AutomationRuleResponse>;
    /**
     * Create a new Jira issue and link it to a case
     * @param param The request object
     */
    createCaseJiraIssue(param: CaseManagementApiCreateCaseJiraIssueRequest, options?: Configuration): Promise<void>;
    /**
     * Creates a directional link between two cases (for example, case A blocks case B). The parent and child cases and their relationship type must be specified.
     * @param param The request object
     */
    createCaseLink(param: CaseManagementApiCreateCaseLinkRequest, options?: Configuration): Promise<CaseLinkResponse>;
    /**
     * Create a new investigation notebook and link it to a case
     * @param param The request object
     */
    createCaseNotebook(param: CaseManagementApiCreateCaseNotebookRequest, options?: Configuration): Promise<void>;
    /**
     * Create a new ServiceNow incident ticket and link it to a case
     * @param param The request object
     */
    createCaseServiceNowTicket(param: CaseManagementApiCreateCaseServiceNowTicketRequest, options?: Configuration): Promise<void>;
    /**
     * Creates a new saved case view with a name, filter query, and associated project. Optionally, a notification rule can be linked to the view.
     * @param param The request object
     */
    createCaseView(param: CaseManagementApiCreateCaseViewRequest, options?: Configuration): Promise<CaseViewResponse>;
    /**
     * Creates a maintenance window for event management cases with a name, case filter query, and time range (start and end).
     * @param param The request object
     */
    createMaintenanceWindow(param: CaseManagementApiCreateMaintenanceWindowRequest, options?: Configuration): Promise<MaintenanceWindowResponse>;
    /**
     * Create a project.
     * @param param The request object
     */
    createProject(param: CaseManagementApiCreateProjectRequest, options?: Configuration): Promise<ProjectResponse>;
    /**
     * Create a notification rule for a project.
     * @param param The request object
     */
    createProjectNotificationRule(param: CaseManagementApiCreateProjectNotificationRuleRequest, options?: Configuration): Promise<CaseNotificationRuleResponse>;
    /**
     * Permanently deletes an automation rule from a project.
     * @param param The request object
     */
    deleteCaseAutomationRule(param: CaseManagementApiDeleteCaseAutomationRuleRequest, options?: Configuration): Promise<void>;
    /**
     * Delete case comment
     * @param param The request object
     */
    deleteCaseComment(param: CaseManagementApiDeleteCaseCommentRequest, options?: Configuration): Promise<void>;
    /**
     * Delete custom attribute from case
     * @param param The request object
     */
    deleteCaseCustomAttribute(param: CaseManagementApiDeleteCaseCustomAttributeRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Deletes an existing link between cases by link ID.
     * @param param The request object
     */
    deleteCaseLink(param: CaseManagementApiDeleteCaseLinkRequest, options?: Configuration): Promise<void>;
    /**
     * Permanently deletes a saved case view.
     * @param param The request object
     */
    deleteCaseView(param: CaseManagementApiDeleteCaseViewRequest, options?: Configuration): Promise<void>;
    /**
     * Permanently deletes a maintenance window.
     * @param param The request object
     */
    deleteMaintenanceWindow(param: CaseManagementApiDeleteMaintenanceWindowRequest, options?: Configuration): Promise<void>;
    /**
     * Remove a project using the project's `id`.
     * @param param The request object
     */
    deleteProject(param: CaseManagementApiDeleteProjectRequest, options?: Configuration): Promise<void>;
    /**
     * Delete a notification rule using the notification rule's `id`.
     * @param param The request object
     */
    deleteProjectNotificationRule(param: CaseManagementApiDeleteProjectNotificationRuleRequest, options?: Configuration): Promise<void>;
    /**
     * Disables an automation rule so it no longer triggers on case events. The rule configuration is preserved.
     * @param param The request object
     */
    disableCaseAutomationRule(param: CaseManagementApiDisableCaseAutomationRuleRequest, options?: Configuration): Promise<AutomationRuleResponse>;
    /**
     * Enables a previously disabled automation rule so it triggers on matching case events.
     * @param param The request object
     */
    enableCaseAutomationRule(param: CaseManagementApiEnableCaseAutomationRuleRequest, options?: Configuration): Promise<AutomationRuleResponse>;
    /**
     * Marks a case project as a favorite for the current authenticated user.
     * @param param The request object
     */
    favoriteCaseProject(param: CaseManagementApiFavoriteCaseProjectRequest, options?: Configuration): Promise<void>;
    /**
     * Get the details of case by `case_id`
     * @param param The request object
     */
    getCase(param: CaseManagementApiGetCaseRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Returns a single automation rule identified by its UUID, including its trigger, action, and current state (enabled/disabled).
     * @param param The request object
     */
    getCaseAutomationRule(param: CaseManagementApiGetCaseAutomationRuleRequest, options?: Configuration): Promise<AutomationRuleResponse>;
    /**
     * Returns a single saved case view identified by its UUID, including its query, associated project, and timestamps.
     * @param param The request object
     */
    getCaseView(param: CaseManagementApiGetCaseViewRequest, options?: Configuration): Promise<CaseViewResponse>;
    /**
     * Get the details of a project by `project_id`.
     * @param param The request object
     */
    getProject(param: CaseManagementApiGetProjectRequest, options?: Configuration): Promise<ProjectResponse>;
    /**
     * Get all notification rules for a project.
     * @param param The request object
     */
    getProjectNotificationRules(param: CaseManagementApiGetProjectNotificationRulesRequest, options?: Configuration): Promise<CaseNotificationRulesResponse>;
    /**
     * Get all projects.
     * @param param The request object
     */
    getProjects(options?: Configuration): Promise<ProjectsResponse>;
    /**
     * Link an incident to a case
     * @param param The request object
     */
    linkIncident(param: CaseManagementApiLinkIncidentRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Link an existing Jira issue to a case
     * @param param The request object
     */
    linkJiraIssueToCase(param: CaseManagementApiLinkJiraIssueToCaseRequest, options?: Configuration): Promise<void>;
    /**
     * Returns all automation rules configured for a project. Automation rules allow automatic actions to be triggered by case events like creation, status transitions, or attribute changes.
     * @param param The request object
     */
    listCaseAutomationRules(param: CaseManagementApiListCaseAutomationRulesRequest, options?: Configuration): Promise<AutomationRulesResponse>;
    /**
     * Returns all links associated with a case. Links define relationships (for example, BLOCKS) between cases. Requires entity_type and entity_id query parameters.
     * @param param The request object
     */
    listCaseLinks(param: CaseManagementApiListCaseLinksRequest, options?: Configuration): Promise<CaseLinksResponse>;
    /**
     * Returns the timeline of events for a case, including comments, status changes, and other activity. Supports pagination and sort order.
     * @param param The request object
     */
    listCaseTimeline(param: CaseManagementApiListCaseTimelineRequest, options?: Configuration): Promise<TimelineResponse>;
    /**
     * Returns all saved case views for a given project. Views are saved search queries that allow quick access to filtered lists of cases.
     * @param param The request object
     */
    listCaseViews(param: CaseManagementApiListCaseViewsRequest, options?: Configuration): Promise<CaseViewsResponse>;
    /**
     * Returns the list of users who are watching a case. Watchers receive notifications about updates to the case.
     * @param param The request object
     */
    listCaseWatchers(param: CaseManagementApiListCaseWatchersRequest, options?: Configuration): Promise<CaseWatchersResponse>;
    /**
     * Returns all configured maintenance windows for event management cases. Maintenance windows define time periods during which case notifications and automation rules are suppressed for cases matching a given query.
     * @param param The request object
     */
    listMaintenanceWindows(options?: Configuration): Promise<MaintenanceWindowsResponse>;
    /**
     * Returns the list of case projects that the current authenticated user has marked as favorites.
     * @param param The request object
     */
    listUserCaseProjectFavorites(options?: Configuration): Promise<ProjectFavoritesResponse>;
    /**
     * Update the project associated with a case
     * @param param The request object
     */
    moveCaseToProject(param: CaseManagementApiMoveCaseToProjectRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Removes one or more previously added insights from a case by specifying their type and resource identifier in the request body.
     * @param param The request object
     */
    removeCaseInsights(param: CaseManagementApiRemoveCaseInsightsRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Search cases.
     * @param param The request object
     */
    searchCases(param?: CaseManagementApiSearchCasesRequest, options?: Configuration): Promise<CasesResponse>;
    /**
     * Provide a paginated version of searchCases returning a generator with all the items.
     */
    searchCasesWithPagination(param?: CaseManagementApiSearchCasesRequest, options?: Configuration): AsyncGenerator<Case>;
    /**
     * Unarchive case
     * @param param The request object
     */
    unarchiveCase(param: CaseManagementApiUnarchiveCaseRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Unassign case
     * @param param The request object
     */
    unassignCase(param: CaseManagementApiUnassignCaseRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Removes a case project from the current user's favorites list.
     * @param param The request object
     */
    unfavoriteCaseProject(param: CaseManagementApiUnfavoriteCaseProjectRequest, options?: Configuration): Promise<void>;
    /**
     * Remove the link between a Jira issue and a case
     * @param param The request object
     */
    unlinkJiraIssue(param: CaseManagementApiUnlinkJiraIssueRequest, options?: Configuration): Promise<void>;
    /**
     * Removes a user from the watchers list of a case. The user no longer receives notifications about updates to the case.
     * @param param The request object
     */
    unwatchCase(param: CaseManagementApiUnwatchCaseRequest, options?: Configuration): Promise<void>;
    /**
     * Update case attributes
     * @param param The request object
     */
    updateAttributes(param: CaseManagementApiUpdateAttributesRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Updates the trigger, action, name, or state of an existing automation rule.
     * @param param The request object
     */
    updateCaseAutomationRule(param: CaseManagementApiUpdateCaseAutomationRuleRequest, options?: Configuration): Promise<AutomationRuleResponse>;
    /**
     * Updates the text content of an existing comment on a case timeline. The comment is identified by its cell ID.
     * @param param The request object
     */
    updateCaseComment(param: CaseManagementApiUpdateCaseCommentRequest, options?: Configuration): Promise<void>;
    /**
     * Update case custom attribute
     * @param param The request object
     */
    updateCaseCustomAttribute(param: CaseManagementApiUpdateCaseCustomAttributeRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Update case description
     * @param param The request object
     */
    updateCaseDescription(param: CaseManagementApiUpdateCaseDescriptionRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Sets or updates the due date for a case. The due date is a calendar date (without a time component) indicating when the case should be resolved.
     * @param param The request object
     */
    updateCaseDueDate(param: CaseManagementApiUpdateCaseDueDateRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Sets the resolved reason for a security case (for example, FALSE_POSITIVE, TRUE_POSITIVE). Applicable to security-type cases.
     * @param param The request object
     */
    updateCaseResolvedReason(param: CaseManagementApiUpdateCaseResolvedReasonRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Update case title
     * @param param The request object
     */
    updateCaseTitle(param: CaseManagementApiUpdateCaseTitleRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Updates the name, query, or notification rule of an existing case view.
     * @param param The request object
     */
    updateCaseView(param: CaseManagementApiUpdateCaseViewRequest, options?: Configuration): Promise<CaseViewResponse>;
    /**
     * Updates the name, query, start time, or end time of an existing maintenance window.
     * @param param The request object
     */
    updateMaintenanceWindow(param: CaseManagementApiUpdateMaintenanceWindowRequest, options?: Configuration): Promise<MaintenanceWindowResponse>;
    /**
     * Update case priority
     * @param param The request object
     */
    updatePriority(param: CaseManagementApiUpdatePriorityRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Update a project.
     * @param param The request object
     */
    updateProject(param: CaseManagementApiUpdateProjectRequest, options?: Configuration): Promise<ProjectResponse>;
    /**
     * Update a notification rule.
     * @param param The request object
     */
    updateProjectNotificationRule(param: CaseManagementApiUpdateProjectNotificationRuleRequest, options?: Configuration): Promise<void>;
    /**
     * Update case status
     * @param param The request object
     */
    updateStatus(param: CaseManagementApiUpdateStatusRequest, options?: Configuration): Promise<CaseResponse>;
    /**
     * Adds a user (identified by their UUID) as a watcher of a case. The user receives notifications about subsequent updates to the case.
     * @param param The request object
     */
    watchCase(param: CaseManagementApiWatchCaseRequest, options?: Configuration): Promise<void>;
}
