zappyzep/backend/src/data/entities/SavedMessage.ts

43 lines
880 B
TypeScript
Raw Normal View History

2021-05-31 21:12:24 +02:00
import { MessageAttachment, Sticker } from "discord.js";
import { Column, Entity, PrimaryColumn } from "typeorm";
2020-09-16 22:32:43 +03:00
import { createEncryptedJsonTransformer } from "../encryptedJsonTransformer";
export interface ISavedMessageData {
2021-05-31 21:12:24 +02:00
attachments?: MessageAttachment[];
author: {
username: string;
discriminator: string;
};
content: string;
embeds?: object[];
2020-10-16 02:01:07 +03:00
stickers?: Sticker[];
timestamp: number;
}
@Entity("messages")
export class SavedMessage {
@Column()
@PrimaryColumn()
id: string;
@Column() guild_id: string;
@Column() channel_id: string;
@Column() user_id: string;
@Column() is_bot: boolean;
2020-09-16 22:32:43 +03:00
@Column({
type: "mediumtext",
transformer: createEncryptedJsonTransformer<ISavedMessageData>(),
})
data: ISavedMessageData;
@Column() posted_at: string;
@Column() deleted_at: string;
@Column() is_permanent: boolean;
}