diff --git a/util/src/entities/Application.ts b/src/util/entities/Application.ts
index fab3d93f..35fc496d 100644
--- a/util/src/entities/Application.ts
+++ b/src/util/entities/Application.ts
@@ -1,6 +1,5 @@
-import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm";
+import { Column, Entity, JoinColumn, ManyToOne, OneToOne } from "typeorm";
import { BaseClass } from "./BaseClass";
-import { Guild } from "./Guild";
import { Team } from "./Team";
import { User } from "./User";
@@ -12,55 +11,101 @@ export class Application extends BaseClass {
@Column({ nullable: true })
icon?: string;
- @Column()
+ @Column({ nullable: true })
description: string;
- @Column({ type: "simple-array", nullable: true })
- rpc_origins?: string[];
+ @Column({ nullable: true })
+ summary: string = "";
+
+ @Column({ type: "simple-json", nullable: true })
+ type?: any;
@Column()
- bot_public: boolean;
+ hook: boolean = true;
@Column()
- bot_require_code_grant: boolean;
+ bot_public?: boolean = true;
- @Column({ nullable: true })
- terms_of_service_url?: string;
+ @Column()
+ bot_require_code_grant?: boolean = false;
- @Column({ nullable: true })
- privacy_policy_url?: string;
+ @Column()
+ verify_key: string;
@JoinColumn({ name: "owner_id" })
@ManyToOne(() => User)
- owner?: User;
+ owner: User;
+
+ @Column()
+ flags: number = 0;
+
+ @Column({ type: "simple-array", nullable: true })
+ redirect_uris: string[] = [];
@Column({ nullable: true })
- summary?: string;
+ rpc_application_state: number = 0;
- @Column()
- verify_key: string;
+ @Column({ nullable: true })
+ store_application_state: number = 1;
- @JoinColumn({ name: "team_id" })
- @ManyToOne(() => Team, {
- onDelete: "CASCADE",
- })
- team?: Team;
+ @Column({ nullable: true })
+ verification_state: number = 1;
- @JoinColumn({ name: "guild_id" })
- @ManyToOne(() => Guild)
- guild: Guild; // if this application is a game sold, this field will be the guild to which it has been linked
+ @Column({ nullable: true })
+ interactions_endpoint_url?: string;
@Column({ nullable: true })
- primary_sku_id?: string; // if this application is a game sold, this field will be the id of the "Game SKU" that is created,
+ integration_public: boolean = true;
@Column({ nullable: true })
- slug?: string; // if this application is a game sold, this field will be the URL slug that links to the store page
+ integration_require_code_grant: boolean = false;
+
+ @Column({ nullable: true })
+ discoverability_state: number = 1;
+
+ @Column({ nullable: true })
+ discovery_eligibility_flags: number = 2240;
+
+ @JoinColumn({ name: "bot_user_id" })
+ @OneToOne(() => User)
+ bot?: User;
+
+ @Column({ type: "simple-array", nullable: true })
+ tags?: string[];
@Column({ nullable: true })
cover_image?: string; // the application's default rich presence invite cover image hash
- @Column()
- flags: string; // the application's public flags
+ @Column({ type: "simple-json", nullable: true })
+ install_params?: { scopes: string[]; permissions: string };
+
+ @Column({ nullable: true })
+ terms_of_service_url?: string;
+
+ @Column({ nullable: true })
+ privacy_policy_url?: string;
+
+ //just for us
+
+ //@Column({ type: "simple-array", nullable: true })
+ //rpc_origins?: string[];
+
+ //@JoinColumn({ name: "guild_id" })
+ //@ManyToOne(() => Guild)
+ //guild?: Guild; // if this application is a game sold, this field will be the guild to which it has been linked
+
+ //@Column({ nullable: true })
+ //primary_sku_id?: string; // if this application is a game sold, this field will be the id of the "Game SKU" that is created,
+
+ //@Column({ nullable: true })
+ //slug?: string; // if this application is a game sold, this field will be the URL slug that links to the store page
+
+ @JoinColumn({ name: "team_id" })
+ @ManyToOne(() => Team, {
+ onDelete: "CASCADE",
+ nullable: true
+ })
+ team?: Team;
}
export interface ApplicationCommand {
@@ -93,7 +138,7 @@ export enum ApplicationCommandOptionType {
BOOLEAN = 5,
USER = 6,
CHANNEL = 7,
- ROLE = 8,
+ ROLE = 8
}
export interface ApplicationCommandInteractionData {
|