UNPKG

@cn-shell/jira

Version:
84 lines (83 loc) 3.17 kB
import CNShell from "cn-shell"; interface AuthDetails { username: string; password: string; } interface FieldDict { byName: { [key: string]: { id: string; type: string; itemType: string; }; }; byId: { [key: string]: { name: string; type: string; itemType: string; }; }; } interface JqlResults { startAt: number; maxResults: number; total: number; issues: { key: string; }[]; } declare class CNJira extends CNShell { private _server; private _user; private _password; private _jiraSessionId; private _refreshPeriod; private _timeout; private _resourceUrls; private _fieldDict; constructor(name: string, master?: CNShell); start(): Promise<boolean>; stop(): Promise<void>; healthCheck(): Promise<boolean>; login(auth?: AuthDetails): Promise<void>; logout(): Promise<void>; getFieldDict(update?: boolean): Promise<FieldDict>; getAllowedFieldValues(projectKey: string, issueType: string, fieldName: string): Promise<string[]>; getComponents(projectKey: string): Promise<{ [key: string]: string; }>; getProjects(component?: string): Promise<any[]>; updateProject(project: string, data: { [key: string]: string; }): Promise<void>; updateProjectLead(project: string, lead: string): Promise<void>; createIssue(projectKey: string, issueType: string, component: string, fields: { [key: string]: any; }): Promise<string>; updateIssue(key: string, fields: { [key: string]: any; }, notifyUsers?: boolean): Promise<string>; getIssue(idOrKey: string): Promise<any>; issueReporter(key: string, reporter: string, notifyUsers?: boolean): Promise<void>; assignIssue(key: string, assignee: string, notifyUsers?: boolean): Promise<void>; updateLabels(key: string, action: "add" | "remove", labels: string[], notifyUsers?: boolean): Promise<string>; addComment(idOrKey: string, comment: string): Promise<void>; addWatcher(idOrKey: string, watcher: string): Promise<void>; removeWatcher(idOrKey: string, watcher: string): Promise<void>; getTransitions(idOrKey: string): Promise<{ [key: string]: string; }>; doTransition(idOrKey: string, transitionIdOrName: string, fields?: string[], comment?: string): Promise<void>; runJql(jql: string): Promise<any[]>; jqlGetAll(jql: string): Promise<string[]>; getUserDashboardIds(userId: string): Promise<number[]>; getUserFilterIds(userId: string): Promise<string[]>; migrateDashboards(fromUserId: string, toUserId: string, dashboardIds: number[]): Promise<void>; migrateFilters(fromUserId: string, toUserId: string, filterIds: string[]): Promise<void>; getUser(user: string, byKey: boolean, includeGroups?: boolean): Promise<any>; addUserToGroup(user: string, group: string): Promise<Object>; getUserGroups(user: string): Promise<string[]>; addUserToApplication(user: string, applicationKey: string): Promise<void>; } export { CNJira, AuthDetails, FieldDict, JqlResults };