✨ Schema interfaces
This commit is contained in:
parent
81b59c4012
commit
84d714324a
41
dist/Schema/Activity.d.ts
vendored
41
dist/Schema/Activity.d.ts
vendored
@ -1,3 +1,4 @@
|
||||
import { EmojiSchema } from "./Emoji";
|
||||
export declare const ActivitySchema: {
|
||||
afk: BooleanConstructor;
|
||||
status: StringConstructor;
|
||||
@ -15,7 +16,7 @@ export declare const ActivitySchema: {
|
||||
$State: StringConstructor;
|
||||
$emoji: {
|
||||
name: StringConstructor;
|
||||
id: BigIntConstructor;
|
||||
$id: BigIntConstructor;
|
||||
animated: BooleanConstructor;
|
||||
};
|
||||
$party: {
|
||||
@ -38,3 +39,41 @@ export declare const ActivitySchema: {
|
||||
}[];
|
||||
$since: NumberConstructor;
|
||||
};
|
||||
export interface ActivitySchema {
|
||||
afk: boolean;
|
||||
status: string;
|
||||
activities?: [
|
||||
{
|
||||
name: string;
|
||||
type: number;
|
||||
url?: string;
|
||||
created_at?: number;
|
||||
timestamps?: {
|
||||
start: number;
|
||||
end: number;
|
||||
};
|
||||
application_id?: bigint;
|
||||
details?: string;
|
||||
State?: string;
|
||||
emoji?: EmojiSchema;
|
||||
party?: {
|
||||
id?: string;
|
||||
size?: [number];
|
||||
};
|
||||
assets?: {
|
||||
large_image?: string;
|
||||
large_text?: string;
|
||||
small_image?: string;
|
||||
small_text?: string;
|
||||
};
|
||||
secrets?: {
|
||||
join?: string;
|
||||
spectate?: string;
|
||||
match?: string;
|
||||
};
|
||||
instance?: boolean;
|
||||
flags: bigint;
|
||||
}
|
||||
];
|
||||
since?: number;
|
||||
}
|
||||
|
7
dist/Schema/Emoji.d.ts
vendored
7
dist/Schema/Emoji.d.ts
vendored
@ -1,5 +1,10 @@
|
||||
export declare const EmojiSchema: {
|
||||
name: StringConstructor;
|
||||
id: BigIntConstructor;
|
||||
$id: BigIntConstructor;
|
||||
animated: BooleanConstructor;
|
||||
};
|
||||
export interface EmojiSchema {
|
||||
name: string;
|
||||
id?: bigint;
|
||||
animated: Boolean;
|
||||
}
|
||||
|
2
dist/Schema/Emoji.js
vendored
2
dist/Schema/Emoji.js
vendored
@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.EmojiSchema = void 0;
|
||||
exports.EmojiSchema = {
|
||||
name: String,
|
||||
id: BigInt,
|
||||
$id: BigInt,
|
||||
animated: Boolean,
|
||||
};
|
||||
//# sourceMappingURL=Emoji.js.map
|
2
dist/Schema/Emoji.js.map
vendored
2
dist/Schema/Emoji.js.map
vendored
@ -1 +1 @@
|
||||
{"version":3,"file":"Emoji.js","sourceRoot":"","sources":["../../src/Schema/Emoji.ts"],"names":[],"mappings":";;;AAAa,QAAA,WAAW,GAAG;IAC1B,IAAI,EAAE,MAAM;IACZ,EAAE,EAAE,MAAM;IACV,QAAQ,EAAE,OAAO;CACjB,CAAC"}
|
||||
{"version":3,"file":"Emoji.js","sourceRoot":"","sources":["../../src/Schema/Emoji.ts"],"names":[],"mappings":";;;AAAa,QAAA,WAAW,GAAG;IAC1B,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,MAAM;IACX,QAAQ,EAAE,OAAO;CACjB,CAAC"}
|
17
dist/Schema/Identify.d.ts
vendored
17
dist/Schema/Identify.d.ts
vendored
@ -1,3 +1,4 @@
|
||||
import { ActivitySchema } from "./Activity";
|
||||
export declare const IdentifySchema: {
|
||||
token: StringConstructor;
|
||||
properties: {
|
||||
@ -23,7 +24,7 @@ export declare const IdentifySchema: {
|
||||
$State: StringConstructor;
|
||||
$emoji: {
|
||||
name: StringConstructor;
|
||||
id: BigIntConstructor;
|
||||
$id: BigIntConstructor;
|
||||
animated: BooleanConstructor;
|
||||
};
|
||||
$party: {
|
||||
@ -51,3 +52,17 @@ export declare const IdentifySchema: {
|
||||
$shard: NumberConstructor[];
|
||||
$guild_subscriptions: BooleanConstructor;
|
||||
};
|
||||
export interface IdentifySchema {
|
||||
token: string;
|
||||
properties: {
|
||||
$$os: string;
|
||||
$$browser: string;
|
||||
$$device: string;
|
||||
};
|
||||
intents: bigint;
|
||||
presence?: ActivitySchema;
|
||||
compress?: boolean;
|
||||
large_threshold?: number;
|
||||
shard?: [number];
|
||||
guild_subscriptions?: boolean;
|
||||
}
|
||||
|
79
dist/models/Guild.d.ts
vendored
79
dist/models/Guild.d.ts
vendored
@ -3,50 +3,49 @@ import { Emoji } from "./Emoji";
|
||||
import { Member } from "./Member";
|
||||
import { Role } from "./Role";
|
||||
export interface Guild {
|
||||
id: bigint;
|
||||
name: string;
|
||||
icon: string;
|
||||
icon_hash: string;
|
||||
splash: string;
|
||||
discovery_splash: string;
|
||||
owner: boolean;
|
||||
owner_id: bigint;
|
||||
permissions: string;
|
||||
region: string;
|
||||
afk_channel_id: bigint;
|
||||
afk_timeout: number;
|
||||
widget_enabled: boolean;
|
||||
widget_channel_id: bigint;
|
||||
verification_level: number;
|
||||
default_message_notifications: number;
|
||||
explicit_content_filter: number;
|
||||
roles: Role[];
|
||||
emojis: Emoji[];
|
||||
features: [];
|
||||
mfa_level: number;
|
||||
application_id: bigint;
|
||||
system_channel_id: bigint;
|
||||
system_channel_flags: number;
|
||||
rules_channel_id: bigint;
|
||||
joined_at: number;
|
||||
large: boolean;
|
||||
unavailable: boolean;
|
||||
member_count: number;
|
||||
voice_states: [];
|
||||
members: Member[];
|
||||
channels: Channel[];
|
||||
presences: [];
|
||||
max_presences: number;
|
||||
max_members: number;
|
||||
vanity_url_code: string;
|
||||
description: string;
|
||||
banner: string;
|
||||
premium_tier: number;
|
||||
premium_subscription_count: number;
|
||||
preferred_locale: string;
|
||||
public_updates_channel_id: bigint;
|
||||
max_video_channel_users: number;
|
||||
approximate_member_count: number;
|
||||
approximate_presence_count: number;
|
||||
banner: string;
|
||||
channels: Channel[];
|
||||
default_message_notifications: number;
|
||||
description: string;
|
||||
discovery_splash: string;
|
||||
emojis: Emoji[];
|
||||
explicit_content_filter: number;
|
||||
features: [];
|
||||
icon: string;
|
||||
id: bigint;
|
||||
joined_at: number;
|
||||
large: boolean;
|
||||
max_members: number;
|
||||
max_presences: number;
|
||||
max_video_channel_users: number;
|
||||
member_count: number;
|
||||
members: Member[];
|
||||
mfa_level: number;
|
||||
name: string;
|
||||
owner_id: bigint;
|
||||
owner: boolean;
|
||||
permissions: string;
|
||||
preferred_locale: string;
|
||||
premium_subscription_count: number;
|
||||
premium_tier: number;
|
||||
presences: [];
|
||||
public_updates_channel_id: bigint;
|
||||
region: string;
|
||||
roles: Role[];
|
||||
rules_channel_id: bigint;
|
||||
splash: string;
|
||||
system_channel_flags: number;
|
||||
system_channel_id: bigint;
|
||||
unavailable: boolean;
|
||||
vanity_url_code: string;
|
||||
verification_level: number;
|
||||
voice_states: [];
|
||||
welcome_screen: [];
|
||||
widget_channel_id: bigint;
|
||||
widget_enabled: boolean;
|
||||
}
|
||||
|
@ -39,3 +39,43 @@ export const ActivitySchema = {
|
||||
],
|
||||
$since: Number, // unix time (in milliseconds) of when the client went idle, or null if the client is not idle
|
||||
};
|
||||
|
||||
export interface ActivitySchema {
|
||||
afk: boolean;
|
||||
status: string;
|
||||
activities?: [
|
||||
{
|
||||
name: string; // the activity's name
|
||||
type: number; // activity type // TODO: check if its between range 0-5
|
||||
url?: string; // stream url, is validated when type is 1
|
||||
created_at?: number; // unix timestamp of when the activity was added to the user's session
|
||||
timestamps?: {
|
||||
// unix timestamps for start and/or end of the game
|
||||
start: number;
|
||||
end: number;
|
||||
};
|
||||
application_id?: bigint; // application id for the game
|
||||
details?: string;
|
||||
State?: string;
|
||||
emoji?: EmojiSchema;
|
||||
party?: {
|
||||
id?: string;
|
||||
size?: [number]; // used to show the party's current and maximum size // TODO: array length 2
|
||||
};
|
||||
assets?: {
|
||||
large_image?: string; // the id for a large asset of the activity, usually a snowflake
|
||||
large_text?: string; // text displayed when hovering over the large image of the activity
|
||||
small_image?: string; // the id for a small asset of the activity, usually a snowflake
|
||||
small_text?: string; // text displayed when hovering over the small image of the activity
|
||||
};
|
||||
secrets?: {
|
||||
join?: string; // the secret for joining a party
|
||||
spectate?: string; // the secret for spectating a game
|
||||
match?: string; // the secret for a specific instanced match
|
||||
};
|
||||
instance?: boolean;
|
||||
flags: bigint; // activity flags OR d together, describes what the payload includes
|
||||
}
|
||||
];
|
||||
since?: number; // unix time (in milliseconds) of when the client went idle, or null if the client is not idle
|
||||
}
|
||||
|
@ -1,5 +1,11 @@
|
||||
export const EmojiSchema = {
|
||||
name: String, // the name of the emoji
|
||||
id: BigInt, // the id of the emoji
|
||||
$id: BigInt, // the id of the emoji
|
||||
animated: Boolean, // whether this emoji is animated
|
||||
};
|
||||
|
||||
export interface EmojiSchema {
|
||||
name: string;
|
||||
id?: bigint;
|
||||
animated: Boolean;
|
||||
}
|
||||
|
@ -15,3 +15,19 @@ export const IdentifySchema = {
|
||||
$shard: [Number],
|
||||
$guild_subscriptions: Boolean,
|
||||
};
|
||||
|
||||
export interface IdentifySchema {
|
||||
token: string;
|
||||
properties: {
|
||||
// bruh discord really uses $ in the property key, so we need to double prefix it, because instanceOf treats $ (prefix) as a optional key
|
||||
$$os: string;
|
||||
$$browser: string;
|
||||
$$device: string;
|
||||
};
|
||||
intents: bigint; // discord uses a Integer for bitfields we use bigints tho. | instanceOf will automatically convert the Number to a BigInt
|
||||
presence?: ActivitySchema;
|
||||
compress?: boolean;
|
||||
large_threshold?: number;
|
||||
shard?: [number];
|
||||
guild_subscriptions?: boolean;
|
||||
}
|
||||
|
@ -4,50 +4,49 @@ import { Member } from "./Member";
|
||||
import { Role } from "./Role";
|
||||
|
||||
export interface Guild {
|
||||
id: bigint;
|
||||
name: string;
|
||||
icon: string;
|
||||
icon_hash: string;
|
||||
splash: string;
|
||||
discovery_splash: string;
|
||||
owner: boolean;
|
||||
owner_id: bigint;
|
||||
permissions: string;
|
||||
region: string;
|
||||
afk_channel_id: bigint;
|
||||
afk_timeout: number;
|
||||
widget_enabled: boolean;
|
||||
widget_channel_id: bigint;
|
||||
verification_level: number;
|
||||
default_message_notifications: number;
|
||||
explicit_content_filter: number;
|
||||
roles: Role[];
|
||||
emojis: Emoji[];
|
||||
features: [];
|
||||
mfa_level: number;
|
||||
application_id: bigint;
|
||||
system_channel_id: bigint;
|
||||
system_channel_flags: number;
|
||||
rules_channel_id: bigint;
|
||||
joined_at: number;
|
||||
large: boolean;
|
||||
unavailable: boolean;
|
||||
member_count: number;
|
||||
voice_states: []; // ! tf is this
|
||||
members: Member[];
|
||||
channels: Channel[];
|
||||
presences: []; // TODO: add model
|
||||
max_presences: number;
|
||||
max_members: number;
|
||||
vanity_url_code: string;
|
||||
description: string;
|
||||
banner: string;
|
||||
premium_tier: number;
|
||||
premium_subscription_count: number;
|
||||
preferred_locale: string;
|
||||
public_updates_channel_id: bigint;
|
||||
max_video_channel_users: number;
|
||||
approximate_member_count: number;
|
||||
approximate_presence_count: number;
|
||||
welcome_screen: []; // ! what is this
|
||||
banner: string;
|
||||
channels: Channel[];
|
||||
default_message_notifications: number;
|
||||
description: string;
|
||||
discovery_splash: string;
|
||||
emojis: Emoji[];
|
||||
explicit_content_filter: number;
|
||||
features: [];
|
||||
icon: string;
|
||||
id: bigint;
|
||||
joined_at: number; // ! member specific should be removed
|
||||
large: boolean;
|
||||
max_members: number; // e.g. default 100.000
|
||||
max_presences: number;
|
||||
max_video_channel_users: number; // ? default: 25, is this max 25 streaming or watching
|
||||
member_count: number;
|
||||
members: Member[];
|
||||
mfa_level: number;
|
||||
name: string;
|
||||
owner_id: bigint;
|
||||
owner: boolean;
|
||||
permissions: string;
|
||||
preferred_locale: string; // only community guilds can choose this
|
||||
premium_subscription_count: number;
|
||||
premium_tier: number; // nitro boost level
|
||||
presences: []; // TODO: add model
|
||||
public_updates_channel_id: bigint;
|
||||
region: string;
|
||||
roles: Role[];
|
||||
rules_channel_id: bigint;
|
||||
splash: string;
|
||||
system_channel_flags: number;
|
||||
system_channel_id: bigint;
|
||||
unavailable: boolean;
|
||||
vanity_url_code: string;
|
||||
verification_level: number;
|
||||
voice_states: []; // connected users
|
||||
welcome_screen: []; // welcome splash screen if a user joins guild
|
||||
widget_channel_id: bigint;
|
||||
widget_enabled: boolean;
|
||||
}
|
||||
|
@ -2,7 +2,6 @@ export interface Guild {
|
||||
id: bigint;
|
||||
name: string;
|
||||
icon: string; // e.g. "28776e7ad42922582be25bb06cdc5b53"
|
||||
icon_hash: string;
|
||||
afk_channel_id: bigint;
|
||||
afk_timeout: number;
|
||||
application_id: bigint;
|
||||
|
Loading…
x
Reference in New Issue
Block a user