import { User, PartialUser, Issue, Comment, Changelog, IssueLink, Worklog, Project, Board, BoardConfiguration, Sprint, Version, IssueTransition } from './types'; interface IssueEvent { readonly timestamp: number; readonly user: User; readonly issue: Issue; readonly queryParams?: Record; } export interface IssueCreatedEvent extends IssueEvent { readonly webhookEvent: "jira:issue_created"; readonly issue_event_type_name: "issue_created"; readonly changelog?: Changelog; } export interface IssueDeletedEvent extends IssueEvent { readonly webhookEvent: "jira:issue_deleted"; } export interface IssueUpdatedEvent extends IssueEvent { readonly webhookEvent: "jira:issue_updated"; readonly issue_event_type_name: "issue_updated" | "issue_generic" | "issue_commented" | "issue_comment_edited" | "issue_comment_deleted" | "issue_moved"; readonly changelog?: Changelog; readonly comment?: Comment; } export interface IssueWorklogChangedEvent extends IssueEvent { readonly webhookEvent: "jira:worklog_updated"; readonly issue_event_type_name: "issue_work_logged" | "issue_worklog_updated" | "issue_worklog_deleted"; readonly changelog?: Changelog; } export interface IssueTransitionedEvent extends IssueEvent { readonly transition: IssueTransition; } interface CommentEvent { readonly timestamp: number; readonly comment: Comment; readonly queryParams?: Record; } export interface IssueCommentCreatedEvent extends CommentEvent { readonly webhookEvent: "comment_created"; } export interface IssueCommentUpdatedEvent extends CommentEvent { readonly webhookEvent: "comment_updated"; } export interface IssueCommentDeletedEvent extends CommentEvent { readonly webhookEvent: "comment_deleted"; } interface IssueLinkEvent { readonly timestamp: number; readonly issueLink: IssueLink; readonly queryParams?: Record; } export interface IssueLinkCreatedEvent extends IssueLinkEvent { readonly webhookEvent: "issuelink_created"; } export interface IssueLinkDeletedEvent extends IssueLinkEvent { readonly webhookEvent: "issuelink_deleted"; } interface UserEvent { readonly timestamp: number; readonly queryParams?: Record; } export interface UserCreatedEvent extends UserEvent { readonly webhookEvent: "user_created"; readonly user: PartialUser; } export interface UserUpdatedEvent extends UserEvent { readonly webhookEvent: "user_updated"; readonly user: PartialUser; } export interface UserDeletedEvent extends UserEvent { readonly webhookEvent: "user_deleted"; readonly user: { readonly name?: string; readonly key?: string; }; } interface WorklogEvent { readonly timestamp: number; readonly worklog: Worklog; readonly queryParams?: Record; } export interface IssueWorklogCreatedEvent extends WorklogEvent { readonly webhookEvent: "worklog_created"; } export interface IssueWorklogUpdatedEvent extends WorklogEvent { readonly webhookEvent: "worklog_updated"; } export interface IssueWorklogDeletedEvent extends WorklogEvent { readonly webhookEvent: "worklog_deleted"; } interface ProjectEvent { readonly timestamp: number; readonly project: Project; readonly queryParams?: Record; } export interface ProjectCreatedEvent extends ProjectEvent { readonly webhookEvent: "project_created"; } export interface ProjectUpdatedEvent extends ProjectEvent { readonly webhookEvent: "project_updated"; } export interface ProjectDeletedEvent extends ProjectEvent { readonly webhookEvent: "project_deleted"; } interface BoardEvent { readonly timestamp: number; readonly board: Board; readonly queryParams?: Record; } export interface BoardConfigurationChangedEvent { readonly timestamp: number; readonly webhookEvent: "board_configuration_changed"; readonly configuration: BoardConfiguration; readonly queryParams?: Record; } export interface BoardCreatedEvent extends BoardEvent { readonly webhookEvent: "board_created"; } export interface BoardUpdatedEvent extends BoardEvent { readonly webhookEvent: "board_updated"; } export interface BoardDeletedEvent extends BoardEvent { readonly webhookEvent: "board_deleted"; } interface SprintEvent { readonly timestamp: number; readonly sprint: Sprint; readonly queryParams?: Record; } export interface SprintCreatedEvent extends SprintEvent { readonly webhookEvent: "sprint_created"; } export interface SprintUpdatedEvent extends SprintEvent { readonly webhookEvent: "sprint_updated"; readonly oldValue: Sprint; } export interface SprintDeletedEvent extends SprintEvent { readonly webhookEvent: "sprint_deleted"; } export interface SprintStartedEvent extends SprintEvent { readonly webhookEvent: "sprint_started"; } export interface SprintClosedEvent extends SprintEvent { readonly webhookEvent: "sprint_closed"; } interface VersionEvent { readonly timestamp: number; readonly version: Version; readonly queryParams?: Record; } export interface VersionCreatedEvent extends VersionEvent { readonly webhookEvent: "jira:version_created"; } export interface VersionUpdatedEvent extends VersionEvent { readonly webhookEvent: "jira:version_updated"; } export interface VersionMergedEvent extends VersionEvent { readonly webhookEvent: "jira:version_merged"; readonly mergedVersion?: Version; } export interface VersionDeletedEvent extends VersionEvent { readonly webhookEvent: "jira:version_deleted"; readonly mergedTo?: Version; } export interface VersionMovedEvent extends VersionEvent { readonly webhookEvent: "jira:version_moved"; } export interface VersionReleasedEvent extends VersionEvent { readonly webhookEvent: "jira:version_released"; } export interface VersionUnreleasedEvent extends VersionEvent { readonly webhookEvent: "jira:version_unreleased"; } export interface OptionEvent { readonly timestamp: number; readonly property?: { readonly self?: string; readonly key?: string; readonly value?: string; }; readonly queryParams?: Record; } export interface OptionTimetrackingChangedEvent extends OptionEvent { readonly webhookEvent: "option_timetracking_changed"; } export interface OptionIssueLinksChangedEvent extends OptionEvent { readonly webhookEvent: "option_issuelinks_changed"; } export interface OptionSubtasksChangedEvent extends OptionEvent { readonly webhookEvent: "option_subtasks_changed"; } export interface OptionAttachmentsChangedEvent extends OptionEvent { readonly webhookEvent: "option_attachments_changed"; } export interface OptionVotingChangedEvent extends OptionEvent { readonly webhookEvent: "option_voting_changed"; } export interface OptionWatchingChangedEvent extends OptionEvent { readonly webhookEvent: "option_watching_changed"; } export interface OptionUnassignedIssuesChangedEvent extends OptionEvent { readonly webhookEvent: "option_unassigned_issues_changed"; } export {}; //# sourceMappingURL=events.d.ts.map