summaryrefslogtreecommitdiff
path: root/packages/megalodon/src/notification.ts
blob: 846d79c6d7f142f3bbaf6376eeea0b589662ce86 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
export const Follow = 'follow' as const;
export const Favourite = 'favourite' as const;
export const Reblog = 'reblog' as const;
export const Mention = 'mention' as const;
export const EmojiReaction = 'emoji_reaction' as const;
export const FollowRequest = 'follow_request' as const;
export const Status = 'status' as const;
export const PollVote = 'poll_vote' as const;
export const PollExpired = 'poll_expired' as const;
export const Update = 'update' as const;
export const Move = 'move' as const;
export const AdminSignup = 'admin.sign_up' as const;
export const AdminReport = 'admin.report' as const;

export class UnknownNotificationTypeError extends Error {
  constructor() {
    super()
    Object.setPrototypeOf(this, UnknownNotificationTypeError.prototype)
  }
}

export const notificationTypes = [
	Follow,
	Favourite,
	Reblog,
	Mention,
	EmojiReaction,
	FollowRequest,
	Status,
	PollVote,
	PollExpired,
	Update,
	Move,
	AdminSignup,
	AdminReport,
];

export type NotificationType = typeof notificationTypes[number];