3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-05-16 22:55:03 +00:00
zeppelin/backend/src/data/entities/ApiPermissionAssignment.ts
2024-04-09 20:57:18 +03:00

28 lines
713 B
TypeScript

import { Column, Entity, JoinColumn, ManyToOne, PrimaryColumn } from "typeorm";
import { ApiPermissionTypes } from "../ApiPermissionAssignments.js";
import { ApiUserInfo } from "./ApiUserInfo.js";
@Entity("api_permissions")
export class ApiPermissionAssignment {
@Column()
@PrimaryColumn()
guild_id: string;
@Column({ type: String })
@PrimaryColumn()
type: ApiPermissionTypes;
@Column()
@PrimaryColumn()
target_id: string;
@Column("simple-array")
permissions: string[];
@Column({ type: String, nullable: true })
expires_at: string | null;
@ManyToOne(() => ApiUserInfo, (userInfo) => userInfo.permissionAssignments)
@JoinColumn({ name: "target_id" })
userInfo: ApiUserInfo;
}