summary refs log tree commit diff
path: root/src/util/entities
diff options
context:
space:
mode:
authorMadeline <46743919+MaddyUnderStars@users.noreply.github.com>2023-03-13 19:02:52 +1100
committerMadeline <46743919+MaddyUnderStars@users.noreply.github.com>2023-03-13 19:02:52 +1100
commitf228561f4c2059d3568d4cf7dd8fc98dd0260c2a (patch)
tree30084e8f610f5e72cb4c0071695abe454f2363f4 /src/util/entities
parentRemove client_test folder (diff)
downloadserver-f228561f4c2059d3568d4cf7dd8fc98dd0260c2a.tar.xz
Initial identify rewrite
Diffstat (limited to 'src/util/entities')
-rw-r--r--src/util/entities/Channel.ts7
-rw-r--r--src/util/entities/User.ts9
2 files changed, 16 insertions, 0 deletions
diff --git a/src/util/entities/Channel.ts b/src/util/entities/Channel.ts
index 1f128713..7c0828eb 100644
--- a/src/util/entities/Channel.ts
+++ b/src/util/entities/Channel.ts
@@ -482,3 +482,10 @@ export enum ChannelPermissionOverwriteType {
 	member = 1,
 	group = 2,
 }
+
+export interface DMChannel extends Omit<Channel, "type" | "recipients"> {
+	type: ChannelType.DM | ChannelType.GROUP_DM;
+	recipients: Recipient[];
+
+	// TODO: probably more props
+}
diff --git a/src/util/entities/User.ts b/src/util/entities/User.ts
index f99a85e7..0ed88c15 100644
--- a/src/util/entities/User.ts
+++ b/src/util/entities/User.ts
@@ -280,6 +280,15 @@ export class User extends BaseClass {
 		return user as PublicUser;
 	}
 
+	toPrivateUser() {
+		// eslint-disable-next-line @typescript-eslint/no-explicit-any
+		const user: any = {};
+		PrivateUserProjection.forEach((x) => {
+			user[x] = this[x];
+		});
+		return user as UserPrivate;
+	}
+
 	static async getPublicUser(user_id: string, opts?: FindOneOptions<User>) {
 		return await User.findOneOrFail({
 			where: { id: user_id },