unoffical wafrn mirror
wafrn.net
atproto
social-network
activitypub
1import {
2 Model, Table, Column, DataType, ForeignKey, BelongsTo
3} from "sequelize-typescript";
4import { User } from "./user.js";
5import { Post } from "./post.js";
6
7export interface UserBookmarkedPostsAttributes {
8 id?: number;
9 createdAt?: Date;
10 updatedAt?: Date;
11 userId: string;
12 postId: string;
13}
14
15@Table({
16 tableName: "userBookmarkedPosts",
17 modelName: "userBookmarkedPosts",
18 timestamps: true
19})
20export class UserBookmarkedPosts extends Model<UserBookmarkedPostsAttributes, UserBookmarkedPostsAttributes> implements UserBookmarkedPostsAttributes {
21
22 @ForeignKey(() => User)
23 @Column({
24 primaryKey: true,
25 type: DataType.UUID
26 })
27 declare userId: string;
28
29 @ForeignKey(() => Post)
30 @Column({
31 primaryKey: true,
32 type: DataType.UUID
33 })
34 declare postId: string;
35
36 @BelongsTo(() => User, "userId")
37 declare user: User;
38
39 @BelongsTo(() => Post, "postId")
40 declare post: Post;
41}