import { IssueObject } from "jira-client";
import { LabelConfig } from "macpro-security-hub-sync";
export declare class Jira {
    private readonly jira;
    jiraClosedStatuses: string[];
    constructor();
    doesUserExist(accountId: string): Promise<boolean>;
    removeCurrentUserAsWatcher(issueKey: string): Promise<void>;
    private static checkEnvVars;
    private static formatLabelQuery;
    createSearchLabels(identifyingLabels: string[], config: LabelConfig[]): string[];
    getAllSecurityHubIssuesInJiraProject(identifyingLabels: string[]): Promise<IssueObject[]>;
    getPriorityIdsInDescendingOrder(): Promise<string[]>;
    createNewIssue(issue: IssueObject): Promise<IssueObject>;
    linkIssues(newIssueKey: string, issueID: string, linkType?: string, linkDirection?: string): Promise<void>;
    updateIssueTitleById(issueId: string, updatedIssue: Partial<IssueObject>): Promise<void>;
    addCommentToIssueById(issueId: string, comment: string): Promise<void>;
    findPathToClosure(transitions: any, currentStatus: string): Promise<any[]>;
    completeWorkflow(issueKey: string): Promise<void>;
    closeIssue(issueKey: string): Promise<void>;
}
