diff --git a/util/src/entities/Member.ts b/util/src/entities/Member.ts
index 3c5f9db0..a246b891 100644
--- a/util/src/entities/Member.ts
+++ b/util/src/entities/Member.ts
@@ -85,8 +85,8 @@ export class Member extends BaseClassWithoutId {
@Column()
joined_at: Date;
- @Column({ nullable: true })
- premium_since?: Date;
+ @Column({ type: "bigint", nullable: true })
+ premium_since?: number;
@Column()
deaf: boolean;
@@ -245,7 +245,7 @@ export class Member extends BaseClassWithoutId {
nick: undefined,
roles: [guild_id], // @everyone role
joined_at: new Date(),
- premium_since: new Date(),
+ premium_since: (new Date()).getTime(),
deaf: false,
mute: false,
pending: false,
diff --git a/util/src/entities/User.ts b/util/src/entities/User.ts
index 1d18c838..ed7bd4ce 100644
--- a/util/src/entities/User.ts
+++ b/util/src/entities/User.ts
@@ -360,7 +360,7 @@ export interface UserSettings {
render_reactions: boolean;
restricted_guilds: string[];
show_current_game: boolean;
- status: "online" | "offline" | "dnd" | "idle";
+ status: "online" | "offline" | "dnd" | "idle" | "invisible";
stream_notifications_enabled: boolean;
theme: "dark" | "white"; // dark
timezone_offset: number; // e.g -60
diff --git a/util/src/interfaces/Status.ts b/util/src/interfaces/Status.ts
index c4dab586..5d2e1bba 100644
--- a/util/src/interfaces/Status.ts
+++ b/util/src/interfaces/Status.ts
@@ -1,4 +1,4 @@
-export type Status = "idle" | "dnd" | "online" | "offline";
+export type Status = "idle" | "dnd" | "online" | "offline" | "invisible";
export interface ClientStatus {
desktop?: string; // e.g. Windows/Linux/Mac
diff --git a/util/src/util/Rights.ts b/util/src/util/Rights.ts
index 9a99d393..db5384d0 100644
--- a/util/src/util/Rights.ts
+++ b/util/src/util/Rights.ts
@@ -65,6 +65,8 @@ export class Rights extends BitField {
// inverts the presence confidentiality default (OPERATOR's presence is not routed by default, others' are) for a given user
SELF_ADD_DISCOVERABLE: BitFlag(36), // can mark discoverable guilds that they have permissions to mark as discoverable
MANAGE_GUILD_DIRECTORY: BitFlag(37), // can change anything in the primary guild directory
+ POGGERS: BitFlag(38), // can send confetti, screenshake, random user mention (@someone)
+ USE_ACHIEVEMENTS: BitFlag(39), // can use achievements and cheers
INITIATE_INTERACTIONS: BitFlag(40), // can initiate interactions
RESPOND_TO_INTERACTIONS: BitFlag(41), // can respond to interactions
SEND_BACKDATED_EVENTS: BitFlag(42), // can send backdated events
|