@teamsight/flight
Version:
Lambda life cycles
121 lines (120 loc) • 4.27 kB
TypeScript
import { Service } from "../types";
export declare enum SnsName {
OrgCreated = "OrgCreated",
UsersAdded = "UsersAdded",
UsersRemoved = "UsersRemoved",
CustomerStateChange = "CustomerStateChange",
SeatsChanged = "SeatsChanged",
DeleteOrg = "DeleteOrg",
GoogleReset = "GoogleReset",
DeleteSlack = "DeleteSlack",
DeleteGithub = "DeleteGithub",
None = "None",
GithubPullRequestReviewRequested = "GithubPullRequestReviewRequested",
GithubPullRequestReviewRemoved = "GithubPullRequestReviewRemoved",
GithubPullRequestReviewReopened = "GithubPullRequestReviewReopened",
GithubPullRequestReviewClosed = "GithubPullRequestReviewClosed",
GithubPullRequestAssigned = "GithubPullRequestAssigned",
GithubPullRequestUnassigned = "GithubPullRequestUnassigned",
GithubPullRequestAssignedClosed = "GithubPullRequestAssignedClosed",
GithubPullRequestAssignedReopened = "GithubPullRequestAssignedReopened",
GithubIssueAssigned = "GithubIssueAssigned",
GithubIssueUnassigned = "GithubIssueUnassigned",
GithubIssueClosedAssigned = "GithubIssueClosedAssigned",
GithubIssueReopenedAssigned = "GithubIssueReopenedAssigned",
GithubPullRequestReviewSubmitted = "GithubPullRequestReviewSubmitted",
GithubPullRequestReviewEdited = "GithubPullRequestReviewEdited",
GithubPullRequestReviewDismissed = "GithubPullRequestReviewDismissed",
GithubUserAdded = "GithubUserAdded",
GithubReminder = "GithubReminder"
}
export interface IOrganizationCreatedSNS {
name: SnsName.OrgCreated;
service: Service;
orgId: string;
orgType: "google";
}
export interface IUsersAdded {
name: SnsName.UsersAdded;
users: IUserAdded[];
service: Service;
}
export interface IUserAdded {
orgId: string;
userId: string;
userEmail: string;
idpType: "google" | "slack" | "github";
idpId: string;
}
export interface IUsersRemoved {
name: SnsName.UsersRemoved;
service: Service;
users: IUserRemoved[];
}
export interface IUserRemoved {
orgId: string;
userId: string;
}
export interface ICustomerStateChange {
name: SnsName.CustomerStateChange;
service: Service;
active: boolean;
orgId: string;
}
export interface IOrgSnsEvent {
name: SnsName.DeleteOrg | SnsName.GoogleReset | SnsName.DeleteGithub | SnsName.DeleteSlack;
service: Service;
orgId: string;
}
export interface ISeatsChanged {
name: SnsName.SeatsChanged;
service: Service;
orgId: string;
current: number;
}
export interface IGithubPullRequestAction {
name: SnsName.GithubPullRequestReviewRequested | SnsName.None | SnsName.GithubPullRequestReviewRemoved | SnsName.GithubPullRequestReviewReopened | SnsName.GithubPullRequestReviewClosed | SnsName.GithubPullRequestAssigned | SnsName.GithubPullRequestUnassigned | SnsName.GithubPullRequestAssignedClosed | SnsName.GithubPullRequestAssignedReopened | SnsName.GithubPullRequestReviewSubmitted | SnsName.GithubPullRequestReviewDismissed | SnsName.GithubPullRequestReviewEdited;
service: Service;
orgId: string;
senderGithubLogin: string;
senderUserId: string;
targetGithubLogin: string;
targetUserId: string;
actionUrl: string;
repoName: string;
repoUrl: string;
pullRequestTitle: string;
pullRequestUrl: string;
pullRequestNumber: number;
pullRequestId: number;
pullRequestState: string;
reviewRequestDurationSeconds?: number;
reviewState?: string;
body?: string;
}
export interface IGithubIssueAction {
name: SnsName.GithubIssueAssigned | SnsName.None | SnsName.GithubIssueClosedAssigned | SnsName.GithubIssueReopenedAssigned | SnsName.GithubIssueUnassigned;
service: Service;
orgId: string;
senderGithubLogin: string;
senderUserId: string;
targetGithubLogin: string;
targetUserId: string;
actionUrl: string;
repoName: string;
repoUrl: string;
issueTitle: string;
issueUrl: string;
issueNumber: number;
issueId: number;
issueState: string;
}
export interface IGithubUserAction {
name: SnsName.GithubUserAdded;
service: Service;
orgId: string;
newGithubUserLogin: string;
ownerGithubLogin: string;
ownerUserId: string;
newUserUrl: string;
}