@notidotbot/noti-api-client 1.4.15 → 1.4.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/classes/@me.d.ts +2 -2
  2. package/dist/classes/admin.d.ts +6 -0
  3. package/dist/classes/admin.js +6 -0
  4. package/dist/classes/client.d.ts +27 -1
  5. package/dist/classes/client.js +6 -0
  6. package/dist/classes/emotes.d.ts +2 -0
  7. package/dist/classes/games.d.ts +363 -0
  8. package/dist/classes/games.js +49 -0
  9. package/dist/classes/guild.d.ts +4 -3
  10. package/dist/classes/guild.js +3 -2
  11. package/dist/classes/guildDrops.d.ts +1 -0
  12. package/dist/classes/guildGiveaway.d.ts +6 -2
  13. package/dist/classes/guildPlatform.d.ts +4 -57
  14. package/dist/classes/guildPlatform.js +0 -38
  15. package/dist/classes/guildPlatformAction.d.ts +58 -1
  16. package/dist/classes/guildPlatformAction.js +38 -0
  17. package/dist/classes/guildStarboard.d.ts +2 -2
  18. package/dist/classes/linked.d.ts +10 -7
  19. package/dist/classes/linked.js +8 -5
  20. package/dist/classes/other.d.ts +43 -1
  21. package/dist/classes/other.js +20 -1
  22. package/dist/classes/platform.d.ts +8 -3
  23. package/dist/classes/platform.js +5 -2
  24. package/dist/classes/premium.d.ts +52 -9
  25. package/dist/classes/premium.js +14 -4
  26. package/dist/classes/sessions.d.ts +2 -1
  27. package/dist/classes/sessions.js +2 -1
  28. package/dist/classes/teams.d.ts +19 -14
  29. package/dist/classes/teams.js +7 -9
  30. package/dist/classes/user.d.ts +1 -1
  31. package/dist/classes/vods.d.ts +8 -2
  32. package/dist/core/manager.d.ts +2 -0
  33. package/dist/core/manager.js +2 -0
  34. package/dist/index.d.ts +1 -0
  35. package/dist/index.js +1 -0
  36. package/dist/other/prisma.d.ts +5 -0
  37. package/dist/other/zod/gameConfig.zod.d.ts +134 -0
  38. package/dist/other/zod/gameConfig.zod.js +82 -0
  39. package/dist/other/zod/guild.zod.d.ts +3 -0
  40. package/dist/other/zod/guild.zod.js +3 -0
  41. package/dist/other/zod/r2Storage.zod.d.ts +1 -0
  42. package/dist/other/zod/r2Storage.zod.js +1 -0
  43. package/dist/other/zod/rumbleStreamer.zod.d.ts +1 -1
  44. package/dist/other/zod/schema.zod.d.ts +30 -6
  45. package/dist/other/zod/schema.zod.js +27 -1
  46. package/dist/other/zod/youtubeStreamer.zod.d.ts +1 -0
  47. package/dist/other/zod/youtubeStreamer.zod.js +1 -0
  48. package/dist/tsconfig.tsbuildinfo +1 -1
  49. package/package.json +1 -1
  50. package/prisma/generated/ts-prisma.d.ts +862 -0
  51. package/prisma/schema/models/gameConfig.prisma +128 -0
  52. package/prisma/schema/models/guild.prisma +4 -0
  53. package/prisma/schema/models/r2Storage.prisma +1 -0
  54. package/prisma/schema/models/youtubeStreamer.prisma +2 -1
  55. package/prisma/schema/schema.prisma +154 -120
@@ -1,5 +1,4 @@
1
- import { AllPlatforms, KickStreamer, KickStreamerZod, RumbleStreamer, RumbleStreamerZod, TikTokStreamer, TikTokStreamerZod, TwitchStreamer, TwitchStreamerZod, YouTubeStreamerZod } from '../other/prisma';
2
- import { LeaderBoardTypesEnum, StreamerMessageTypeEnum } from '@prisma/client';
1
+ import { AllPlatforms, KickStreamer, KickStreamerZod, RumbleStreamer, RumbleStreamerZod, TikTokStreamer, TikTokStreamerZod, TwitchStreamer, TwitchStreamerZod, YouTubeStreamer, YouTubeStreamerZod } from '../other/prisma';
3
2
  import { CancelOutWebResponses, DeepPartial } from '../types';
4
3
  import { WebDataManager } from '../core/manager';
5
4
  export declare class APIGuildPlatform {
@@ -9,14 +8,10 @@ export declare class APIGuildPlatform {
9
8
  getGuildStreamer<P extends AllPlatforms>({ auth, guildId, streamer, platform, rumbleType }: GuildPlatformFunctionsInput<never, P>['getGuildStreamer']): Promise<import("../types").WebResponse<GuildSingleStreamerWithFormatedRole<P>>>;
10
9
  createGuildStreamer<P extends AllPlatforms>({ auth, guildId, streamer, body, platform, rumbleType }: GuildPlatformFunctionsInput<never, P>['createGuildStreamer']): Promise<import("../types").WebResponse<GuildSingleStreamer<P>>>;
11
10
  updateGuildStreamer<P extends AllPlatforms>({ auth, guildId, streamer, body, platform, rumbleType }: GuildPlatformFunctionsInput<never, P>['updateGuildStreamer']): Promise<import("../types").WebResponse<string>>;
12
- deleteGuildStreamer<P extends AllPlatforms>({ auth, guildId, streamer, platform, rumbleType }: GuildPlatformFunctionsInput<never, P>['updateGuildStreamer']): Promise<import("../types").WebResponse<string>>;
11
+ deleteGuildStreamer<P extends AllPlatforms>({ auth, guildId, streamer, platform, rumbleType }: GuildPlatformFunctionsInput<never, P>['deleteGuildStreamer']): Promise<import("../types").WebResponse<string>>;
13
12
  sendTestNotification({ auth, guildId, streamer, platform, rumbleType, subType }: GuildPlatformFunctionsInput['sendTestNotification']): Promise<import("../types").WebResponse<string>>;
14
- createOrUpdateStreamerMessage({ auth, guildId, streamer, platform, type, subTypeOrId, data, rumbleType }: GuildPlatformFunctionsInput['createOrUpdateStreamerMessage']): Promise<import("../types").WebResponse<string>>;
15
- createOrUpdateKickStreamerRoles<T extends KickRolesType>({ auth, guildId, streamer, platform, type, subTypeOrId, data }: GuildPlatformFunctionsInput<never, never, T>['createOrUpdateKickStreamerRoles']): Promise<import("../types").WebResponse<string>>;
16
- deleteStreamerMessage({ auth, guildId, streamer, platform, type, subTypeOrId, rumbleType }: GuildPlatformFunctionsInput['deleteStreamerMessage']): Promise<import("../types").WebResponse<string>>;
17
- deleteKickStreamerRoles<T extends KickRolesType>({ auth, guildId, streamer, platform, type, subTypeOrId }: GuildPlatformFunctionsInput<never, never, T>['deleteKickStreamerRoles']): Promise<import("../types").WebResponse<string>>;
18
13
  }
19
- export type GuildPlatformFunctionsInput<T extends boolean = never, P extends AllPlatforms = never, RT extends KickRolesType = never> = {
14
+ export type GuildPlatformFunctionsInput<T extends boolean = never, P extends AllPlatforms = never> = {
20
15
  'getGuildStreamers': {
21
16
  auth: string;
22
17
  guildId: string;
@@ -61,42 +56,6 @@ export type GuildPlatformFunctionsInput<T extends boolean = never, P extends All
61
56
  rumbleType?: RumbleType;
62
57
  subType?: SubType;
63
58
  };
64
- 'createOrUpdateStreamerMessage': {
65
- auth: string;
66
- guildId: string;
67
- streamer: string;
68
- platform: P;
69
- type: 'customMessages';
70
- subTypeOrId: StreamerMessageTypeEnum;
71
- data: StreamerUpdateMessage;
72
- rumbleType?: RumbleType;
73
- };
74
- 'deleteStreamerMessage': {
75
- auth: string;
76
- guildId: string;
77
- streamer: string;
78
- platform: P;
79
- type: 'customMessages';
80
- subTypeOrId: StreamerMessageTypeEnum;
81
- rumbleType?: RumbleType;
82
- };
83
- 'createOrUpdateKickStreamerRoles': {
84
- auth: string;
85
- guildId: string;
86
- streamer: string;
87
- platform: 'kick';
88
- type: RT;
89
- subTypeOrId: KickRolesSubType<RT>;
90
- data: KickRolesData<RT>;
91
- };
92
- 'deleteKickStreamerRoles': {
93
- auth: string;
94
- guildId: string;
95
- streamer: string;
96
- platform: 'kick';
97
- type: RT;
98
- subTypeOrId: KickRolesSubType<RT>;
99
- };
100
59
  };
101
60
  export type GuildPlatformReturnTypes = {
102
61
  'getGuildStreamersRaw': Awaited<ReturnType<APIGuildPlatform['getGuildStreamers']>>;
@@ -111,14 +70,6 @@ export type GuildPlatformReturnTypes = {
111
70
  'deleteGuildStreamerSuccess': CancelOutWebResponses<Awaited<ReturnType<APIGuildPlatform['deleteGuildStreamer']>>>;
112
71
  'sendTestNotificationRaw': Awaited<ReturnType<APIGuildPlatform['sendTestNotification']>>;
113
72
  'sendTestNotificationSuccess': CancelOutWebResponses<Awaited<ReturnType<APIGuildPlatform['sendTestNotification']>>>;
114
- 'createOrUpdateStreamerMessageRaw': Awaited<ReturnType<APIGuildPlatform['createOrUpdateStreamerMessage']>>;
115
- 'createOrUpdateStreamerMessageSuccess': CancelOutWebResponses<Awaited<ReturnType<APIGuildPlatform['createOrUpdateStreamerMessage']>>>;
116
- 'deleteStreamerMessageRaw': Awaited<ReturnType<APIGuildPlatform['deleteStreamerMessage']>>;
117
- 'deleteStreamerMessageSuccess': CancelOutWebResponses<Awaited<ReturnType<APIGuildPlatform['deleteStreamerMessage']>>>;
118
- 'createOrUpdateKickStreamerRolesRaw': Awaited<ReturnType<APIGuildPlatform['createOrUpdateKickStreamerRoles']>>;
119
- 'createOrUpdateKickStreamerRolesSuccess': CancelOutWebResponses<Awaited<ReturnType<APIGuildPlatform['createOrUpdateKickStreamerRoles']>>>;
120
- 'deleteKickStreamerRolesRaw': Awaited<ReturnType<APIGuildPlatform['deleteKickStreamerRoles']>>;
121
- 'deleteKickStreamerRolesSuccess': CancelOutWebResponses<Awaited<ReturnType<APIGuildPlatform['deleteKickStreamerRoles']>>>;
122
73
  };
123
74
  export type SubType = 'live' | 'video';
124
75
  export type RumbleType = 'user' | 'channel';
@@ -128,10 +79,6 @@ export type UsersForLiveRole = {
128
79
  }[];
129
80
  export type GuildSingleStreamer<T extends AllPlatforms> = T extends 'kick' ? KickStreamerZod : T extends 'twitch' ? TwitchStreamerZod : T extends 'rumble' ? RumbleStreamerZod : T extends 'tiktok' ? TikTokStreamerZod : T extends 'youtube' ? YouTubeStreamerZod : never;
130
81
  export type GuildSingleStreamerWithFormatedRole<T extends AllPlatforms> = T extends 'kick' ? KickStreamer & UsersForLiveRole : T extends 'twitch' ? TwitchStreamer & UsersForLiveRole : T extends 'rumble' ? RumbleStreamer & UsersForLiveRole : T extends 'tiktok' ? TikTokStreamer & UsersForLiveRole : T extends 'youtube' ? YouTubeStreamerZod & UsersForLiveRole : never;
131
- export type StreamerUpdateMessage = (KickStreamerZod | TwitchStreamerZod | RumbleStreamerZod | TikTokStreamerZod | YouTubeStreamerZod)['customMessages'][number];
132
- export type KickRolesType = 'leaderboardSyncRoles' | 'giftedSubRoles';
133
- export type KickRolesSubType<T extends KickRolesType> = T extends 'leaderboardSyncRoles' ? LeaderBoardTypesEnum : T extends 'giftedSubRoles' ? string : never;
134
- export type KickRolesData<T extends KickRolesType> = T extends 'leaderboardSyncRoles' ? KickStreamerZod['leaderBoardSyncRoles'][number] : T extends 'giftedSubRoles' ? KickStreamerZod['giftedSubRoles'][number] : never;
135
82
  export type Platformstreamers<T extends boolean, P extends AllPlatforms> = {
136
83
  streamers: T extends true ? P extends 'kick' ? {
137
84
  streamerUserName: string;
@@ -153,7 +100,7 @@ export type Platformstreamers<T extends boolean, P extends AllPlatforms> = {
153
100
  streamerUserName: string;
154
101
  streamerId: string;
155
102
  guildId: string | null;
156
- }[] : never : P extends 'kick' ? KickStreamer[] : P extends 'twitch' ? TwitchStreamer[] : P extends 'rumble' ? RumbleStreamer[] : P extends 'tiktok' ? TikTokStreamer[] : never;
103
+ }[] : never : P extends 'kick' ? KickStreamer[] : P extends 'twitch' ? TwitchStreamer[] : P extends 'rumble' ? RumbleStreamer[] : P extends 'tiktok' ? TikTokStreamer[] : P extends 'youtube' ? YouTubeStreamer[] : never;
157
104
  currentTotal: number;
158
105
  maxLimit: number;
159
106
  premium: {
@@ -57,43 +57,5 @@ class APIGuildPlatform {
57
57
  }),
58
58
  });
59
59
  }
60
- async createOrUpdateStreamerMessage({ auth, guildId, streamer, platform, type, subTypeOrId, data, rumbleType }) {
61
- return await this.web.request({
62
- method: 'PATCH', auth, body: data,
63
- endpoint: this.web.qp(`/data/guild/${guildId}/${platform}/${streamer}/updateArray`, {
64
- type: type,
65
- subTypeOrId: subTypeOrId,
66
- rumbleType: (platform === 'rumble' ? rumbleType : undefined),
67
- }),
68
- });
69
- }
70
- async createOrUpdateKickStreamerRoles({ auth, guildId, streamer, platform, type, subTypeOrId, data }) {
71
- return await this.web.request({
72
- method: 'PATCH', auth, body: data,
73
- endpoint: this.web.qp(`/data/guild/${guildId}/${platform}/${streamer}/updateArray`, {
74
- type: type,
75
- subTypeOrId: subTypeOrId,
76
- }),
77
- });
78
- }
79
- async deleteStreamerMessage({ auth, guildId, streamer, platform, type, subTypeOrId, rumbleType }) {
80
- return await this.web.request({
81
- method: 'DELETE', auth,
82
- endpoint: this.web.qp(`/data/guild/${guildId}/${platform}/${streamer}/deleteArray`, {
83
- type: type,
84
- subTypeOrId: subTypeOrId,
85
- rumbleType: (platform === 'rumble' ? rumbleType : undefined),
86
- }),
87
- });
88
- }
89
- async deleteKickStreamerRoles({ auth, guildId, streamer, platform, type, subTypeOrId }) {
90
- return await this.web.request({
91
- method: 'DELETE', auth,
92
- endpoint: this.web.qp(`/data/guild/${guildId}/${platform}/${streamer}/deleteArray`, {
93
- type: type,
94
- subTypeOrId: subTypeOrId,
95
- }),
96
- });
97
- }
98
60
  }
99
61
  exports.APIGuildPlatform = APIGuildPlatform;
@@ -1,3 +1,6 @@
1
+ import { AllPlatforms, KickStreamerZod, RumbleStreamerZod, TikTokStreamerZod, TwitchStreamerZod, YouTubeStreamerZod } from '../other/prisma';
2
+ import { LeaderBoardTypesEnum, StreamerMessageTypeEnum } from '@prisma/client';
3
+ import { RumbleType } from './guildPlatform';
1
4
  import { CancelOutWebResponses } from '../types';
2
5
  import { WebDataManager } from '../core/manager';
3
6
  export declare class APIPlatformAction {
@@ -5,8 +8,12 @@ export declare class APIPlatformAction {
5
8
  constructor(web: WebDataManager);
6
9
  getStreamerEmojisInfo<P extends 'kick'>({ auth, guildId, platform, username, getEmojis }: PlatformActionFunctionsInput<P>['getStreamerEmojisInfo']): Promise<import("../types").WebResponse<StreamerEmojis>>;
7
10
  addStreamerEmojis<P extends 'kick'>({ auth, guildId, platform, username, emojis, lockToSubIfSet }: PlatformActionFunctionsInput<P>['addStreamerEmojis']): Promise<import("../types").WebResponse<AddEmojisInfo>>;
11
+ createOrUpdateStreamerMessage<P extends AllPlatforms>({ auth, guildId, platform, username, subTypeOrId, data, rumbleType }: PlatformActionFunctionsInput<P>['createOrUpdateStreamerMessage']): Promise<import("../types").WebResponse<string>>;
12
+ createOrUpdateKickStreamerRoles<T extends KickRolesType>({ auth, guildId, username, type, subTypeOrId, data }: PlatformActionFunctionsInput<'kick', T>['createOrUpdateKickStreamerRoles']): Promise<import("../types").WebResponse<string>>;
13
+ deleteStreamerMessage<P extends AllPlatforms>({ auth, guildId, platform, username, subTypeOrId, rumbleType }: PlatformActionFunctionsInput<P>['deleteStreamerMessage']): Promise<import("../types").WebResponse<string>>;
14
+ deleteKickStreamerRoles<T extends KickRolesType>({ auth, guildId, username, type, subTypeOrId }: PlatformActionFunctionsInput<'kick', T>['deleteKickStreamerRoles']): Promise<import("../types").WebResponse<string>>;
8
15
  }
9
- export type PlatformActionFunctionsInput<P extends 'kick' = never> = {
16
+ export type PlatformActionFunctionsInput<P extends 'kick' | AllPlatforms = never, T extends KickRolesType = never> = {
10
17
  'getStreamerEmojisInfo': {
11
18
  auth: string;
12
19
  guildId: string;
@@ -22,11 +29,61 @@ export type PlatformActionFunctionsInput<P extends 'kick' = never> = {
22
29
  emojis: EmojiAddSchema['emojis'];
23
30
  lockToSubIfSet: boolean;
24
31
  };
32
+ 'createOrUpdateStreamerMessage': {
33
+ auth: string;
34
+ guildId: string;
35
+ platform: P;
36
+ username: string;
37
+ type: 'customMessages';
38
+ subTypeOrId: StreamerMessageTypeEnum;
39
+ data: StreamerUpdateMessage;
40
+ rumbleType?: RumbleType;
41
+ };
42
+ 'deleteStreamerMessage': {
43
+ auth: string;
44
+ guildId: string;
45
+ platform: P;
46
+ username: string;
47
+ type: 'customMessages';
48
+ subTypeOrId: StreamerMessageTypeEnum;
49
+ rumbleType?: RumbleType;
50
+ };
51
+ 'createOrUpdateKickStreamerRoles': {
52
+ auth: string;
53
+ guildId: string;
54
+ platform: 'kick';
55
+ username: string;
56
+ type: T;
57
+ subTypeOrId: KickRolesSubType<T>;
58
+ data: KickRolesData<T>;
59
+ };
60
+ 'deleteKickStreamerRoles': {
61
+ auth: string;
62
+ guildId: string;
63
+ platform: 'kick';
64
+ username: string;
65
+ type: T;
66
+ subTypeOrId: KickRolesSubType<T>;
67
+ };
25
68
  };
26
69
  export type PlatformActionReturnTypes = {
27
70
  'getStreamerEmojisInfoRaw': Awaited<ReturnType<APIPlatformAction['getStreamerEmojisInfo']>>;
28
71
  'getStreamerEmojisInfoSuccess': CancelOutWebResponses<Awaited<ReturnType<APIPlatformAction['getStreamerEmojisInfo']>>>;
72
+ 'addStreamerEmojisRaw': Awaited<ReturnType<APIPlatformAction['addStreamerEmojis']>>;
73
+ 'addStreamerEmojisSuccess': CancelOutWebResponses<Awaited<ReturnType<APIPlatformAction['addStreamerEmojis']>>>;
74
+ 'createOrUpdateStreamerMessageRaw': Awaited<ReturnType<APIPlatformAction['createOrUpdateStreamerMessage']>>;
75
+ 'createOrUpdateStreamerMessageSuccess': CancelOutWebResponses<Awaited<ReturnType<APIPlatformAction['createOrUpdateStreamerMessage']>>>;
76
+ 'createOrUpdateKickStreamerRolesRaw': Awaited<ReturnType<APIPlatformAction['createOrUpdateKickStreamerRoles']>>;
77
+ 'createOrUpdateKickStreamerRolesSuccess': CancelOutWebResponses<Awaited<ReturnType<APIPlatformAction['createOrUpdateKickStreamerRoles']>>>;
78
+ 'deleteStreamerMessageRaw': Awaited<ReturnType<APIPlatformAction['deleteStreamerMessage']>>;
79
+ 'deleteStreamerMessageSuccess': CancelOutWebResponses<Awaited<ReturnType<APIPlatformAction['deleteStreamerMessage']>>>;
80
+ 'deleteKickStreamerRolesRaw': Awaited<ReturnType<APIPlatformAction['deleteKickStreamerRoles']>>;
81
+ 'deleteKickStreamerRolesSuccess': CancelOutWebResponses<Awaited<ReturnType<APIPlatformAction['deleteKickStreamerRoles']>>>;
29
82
  };
83
+ export type StreamerUpdateMessage = (KickStreamerZod | TwitchStreamerZod | RumbleStreamerZod | TikTokStreamerZod | YouTubeStreamerZod)['customMessages'][number];
84
+ export type KickRolesType = 'leaderboardSyncRoles' | 'giftedSubRoles';
85
+ export type KickRolesSubType<T extends KickRolesType> = T extends 'leaderboardSyncRoles' ? LeaderBoardTypesEnum : T extends 'giftedSubRoles' ? string : never;
86
+ export type KickRolesData<T extends KickRolesType> = T extends 'leaderboardSyncRoles' ? KickStreamerZod['leaderBoardSyncRoles'][number] : T extends 'giftedSubRoles' ? KickStreamerZod['giftedSubRoles'][number] : never;
30
87
  export type StreamerEmojis = {
31
88
  subRole?: string;
32
89
  kickEmojis: KickEmojisParsed | null;
@@ -22,5 +22,43 @@ class APIPlatformAction {
22
22
  endpoint: this.web.qp(`/data/guild/${guildId}/${platform}/${username}/emojis`),
23
23
  });
24
24
  }
25
+ async createOrUpdateStreamerMessage({ auth, guildId, platform, username, subTypeOrId, data, rumbleType }) {
26
+ return await this.web.request({
27
+ method: 'PATCH', auth, body: data,
28
+ endpoint: this.web.qp(`/data/guild/${guildId}/${platform}/${username}/updateArray`, {
29
+ type: 'customMessages',
30
+ subTypeOrId: subTypeOrId,
31
+ rumbleType: (platform === 'rumble' ? rumbleType : undefined),
32
+ }),
33
+ });
34
+ }
35
+ async createOrUpdateKickStreamerRoles({ auth, guildId, username, type, subTypeOrId, data }) {
36
+ return await this.web.request({
37
+ method: 'PATCH', auth, body: data,
38
+ endpoint: this.web.qp(`/data/guild/${guildId}/kick/${username}/updateArray`, {
39
+ type: type,
40
+ subTypeOrId: subTypeOrId,
41
+ }),
42
+ });
43
+ }
44
+ async deleteStreamerMessage({ auth, guildId, platform, username, subTypeOrId, rumbleType }) {
45
+ return await this.web.request({
46
+ method: 'DELETE', auth,
47
+ endpoint: this.web.qp(`/data/guild/${guildId}/${platform}/${username}/deleteArray`, {
48
+ type: 'customMessages',
49
+ subTypeOrId: subTypeOrId,
50
+ rumbleType: (platform === 'rumble' ? rumbleType : undefined),
51
+ }),
52
+ });
53
+ }
54
+ async deleteKickStreamerRoles({ auth, guildId, username, type, subTypeOrId }) {
55
+ return await this.web.request({
56
+ method: 'DELETE', auth,
57
+ endpoint: this.web.qp(`/data/guild/${guildId}/kick/${username}/deleteArray`, {
58
+ type: type,
59
+ subTypeOrId: subTypeOrId,
60
+ }),
61
+ });
62
+ }
25
63
  }
26
64
  exports.APIPlatformAction = APIPlatformAction;
@@ -55,8 +55,8 @@ export type GuildStarboardFunctionsInput = {
55
55
  };
56
56
  };
57
57
  export type GuildStarboardReturnTypes = {
58
- 'getGuildStreamersRaw': Awaited<ReturnType<APIGuildStarboard['getGuildStarboards']>>;
59
- 'getGuildStreamersSuccess': CancelOutWebResponses<Awaited<ReturnType<APIGuildStarboard['getGuildStarboards']>>>;
58
+ 'getGuildStarboardsRaw': Awaited<ReturnType<APIGuildStarboard['getGuildStarboards']>>;
59
+ 'getGuildStarboardsSuccess': CancelOutWebResponses<Awaited<ReturnType<APIGuildStarboard['getGuildStarboards']>>>;
60
60
  'createStarboardRaw': Awaited<ReturnType<APIGuildStarboard['createStarboard']>>;
61
61
  'createStarboardSuccess': CancelOutWebResponses<Awaited<ReturnType<APIGuildStarboard['createStarboard']>>>;
62
62
  'updateStarboardRaw': Awaited<ReturnType<APIGuildStarboard['updateStarboard']>>;
@@ -3,18 +3,21 @@ import { CancelOutWebResponses } from '../types';
3
3
  export declare class APILinked {
4
4
  private web;
5
5
  constructor(web: WebDataManager);
6
- getLinkedRolesUrl(): Promise<import("../types").WebResponse<string>>;
7
- authorizeLinkedRoles({ code }: {
8
- code: string;
9
- }): Promise<import("../types").WebResponse<true>>;
10
- unlinkRoles(): Promise<import("../types").WebResponse<true>>;
6
+ getLinkedRolesUrl({ state }: LinkedFunctionsInput['getLinkedRolesUrl']): Promise<import("../types").WebResponse<string>>;
7
+ authorizeLinkedRoles({ code, state }: LinkedFunctionsInput['authorizeLinkedRoles']): Promise<import("../types").WebResponse<true>>;
8
+ unlinkRoles({ auth }: LinkedFunctionsInput['unlinkRoles']): Promise<import("../types").WebResponse<true>>;
11
9
  }
12
10
  export type LinkedFunctionsInput = {
13
- 'getLinkedRolesUrl': never;
11
+ 'getLinkedRolesUrl': {
12
+ state?: string;
13
+ };
14
14
  'authorizeLinkedRoles': {
15
15
  code: string;
16
+ state?: string;
17
+ };
18
+ 'unlinkRoles': {
19
+ auth: string;
16
20
  };
17
- 'unlinkRoles': never;
18
21
  };
19
22
  export type LinkedReturnTypes = {
20
23
  'getLinkedRolesUrlRaw': Awaited<ReturnType<APILinked['getLinkedRolesUrl']>>;
@@ -8,23 +8,26 @@ class APILinked {
8
8
  this.web = web;
9
9
  }
10
10
  // Methods.
11
- async getLinkedRolesUrl() {
11
+ async getLinkedRolesUrl({ state }) {
12
12
  return await this.web.request({
13
13
  method: 'GET',
14
- endpoint: this.web.qp('/linked'),
14
+ endpoint: this.web.qp('/linked', {
15
+ state,
16
+ }),
15
17
  });
16
18
  }
17
- async authorizeLinkedRoles({ code }) {
19
+ async authorizeLinkedRoles({ code, state }) {
18
20
  return await this.web.request({
19
21
  method: 'POST',
20
22
  endpoint: this.web.qp('/linked', {
21
23
  code,
24
+ state,
22
25
  }),
23
26
  });
24
27
  }
25
- async unlinkRoles() {
28
+ async unlinkRoles({ auth }) {
26
29
  return await this.web.request({
27
- method: 'DELETE',
30
+ method: 'DELETE', auth,
28
31
  endpoint: this.web.qp('/linked'),
29
32
  });
30
33
  }
@@ -6,28 +6,50 @@ export declare class APIOther {
6
6
  status<T extends boolean>({ withTopServers }?: {
7
7
  withTopServers?: T;
8
8
  }): Promise<import("../types").WebResponse<StatusType<T>>>;
9
+ guildStatus({ auth, guildId }: OtherFunctionsInput['guildStatus']): Promise<import("../types").WebResponse<GuildStatusType>>;
9
10
  recentActivity(): Promise<import("../types").WebResponse<RecentActivityType>>;
11
+ scheduler({ auth, body }: OtherFunctionsInput['scheduler']): Promise<import("../types").WebResponse<string>>;
10
12
  checkRateLimit({ auth }: OtherFunctionsInput['checkRateLimit']): Promise<import("../types").WebResponse<string>>;
11
13
  getAllLanguages(): Promise<import("../types").WebResponse<LanguageList>>;
12
- oAuth2({ guildId }: OtherFunctionsInput['oAuth2']): Promise<import("../types").WebResponse<OAuth2Type>>;
14
+ oAuth2({ state, guildId }?: OtherFunctionsInput['oAuth2']): Promise<import("../types").WebResponse<OAuth2Type>>;
15
+ eval({ auth, body }: OtherFunctionsInput['eval']): Promise<import("../types").WebResponse<unknown>>;
13
16
  isDown(): Promise<boolean>;
14
17
  }
15
18
  export type OtherFunctionsInput = {
19
+ 'guildStatus': {
20
+ auth: string;
21
+ guildId: string;
22
+ };
23
+ 'scheduler': {
24
+ auth: string;
25
+ body: SchedulerBody;
26
+ };
16
27
  'checkRateLimit': {
17
28
  auth: string;
18
29
  };
19
30
  'getAllLanguages': never;
20
31
  'oAuth2': {
32
+ state?: OAuth2State;
21
33
  guildId?: string;
22
34
  };
35
+ 'eval': {
36
+ auth: string;
37
+ body: EvalBody;
38
+ };
23
39
  };
24
40
  export type OtherReturnTypes = {
41
+ 'guildStatusRaw': Awaited<ReturnType<APIOther['guildStatus']>>;
42
+ 'guildStatusSuccess': CancelOutWebResponses<Awaited<ReturnType<APIOther['guildStatus']>>>;
43
+ 'schedulerRaw': Awaited<ReturnType<APIOther['scheduler']>>;
44
+ 'schedulerSuccess': CancelOutWebResponses<Awaited<ReturnType<APIOther['scheduler']>>>;
25
45
  'checkRateLimitRaw': Awaited<ReturnType<APIOther['checkRateLimit']>>;
26
46
  'checkRateLimitSuccess': CancelOutWebResponses<Awaited<ReturnType<APIOther['checkRateLimit']>>>;
27
47
  'getAllLanguagesRaw': Awaited<ReturnType<APIOther['getAllLanguages']>>;
28
48
  'getAllLanguagesSuccess': CancelOutWebResponses<Awaited<ReturnType<APIOther['getAllLanguages']>>>;
29
49
  'oAuth2Raw': Awaited<ReturnType<APIOther['oAuth2']>>;
30
50
  'oAuth2Success': CancelOutWebResponses<Awaited<ReturnType<APIOther['oAuth2']>>>;
51
+ 'evalRaw': Awaited<ReturnType<APIOther['eval']>>;
52
+ 'evalSuccess': CancelOutWebResponses<Awaited<ReturnType<APIOther['eval']>>>;
31
53
  };
32
54
  export type LanguageList = {
33
55
  name: string;
@@ -38,14 +60,34 @@ export type RecentActivityType = {
38
60
  message: string;
39
61
  createdAt: number;
40
62
  }[];
63
+ export type OAuth2State = 'l' | 'd' | 'c';
41
64
  export type OAuth2Type = {
42
65
  login: string;
43
66
  invite: string;
44
67
  };
68
+ export type SchedulerBody = Record<string, unknown>;
69
+ export type EvalBody = {
70
+ code: string;
71
+ context: 'client' | 'manager';
72
+ };
73
+ export type EvalResponse = unknown;
74
+ export type GuildStatusType = {
75
+ id: string;
76
+ name: string;
77
+ icon: string | null;
78
+ isVerified: boolean;
79
+ isPartnered: boolean;
80
+ shardData: {
81
+ shardId: number;
82
+ shardPing: number;
83
+ status: string;
84
+ };
85
+ };
45
86
  export type StatusType<T extends boolean = false> = {
46
87
  devMode: boolean;
47
88
  shardsPerClusters: number;
48
89
  totalStreamers: number;
90
+ totalGiveaways: number;
49
91
  totalNotifications: number;
50
92
  totalStatChannels: number;
51
93
  totalStatusRoles: number;
@@ -16,12 +16,24 @@ class APIOther {
16
16
  }),
17
17
  });
18
18
  }
19
+ async guildStatus({ auth, guildId }) {
20
+ return await this.web.request({
21
+ method: 'GET', auth,
22
+ endpoint: this.web.qp('/status/' + guildId),
23
+ });
24
+ }
19
25
  async recentActivity() {
20
26
  return await this.web.request({
21
27
  method: 'GET',
22
28
  endpoint: this.web.qp('/recent'),
23
29
  });
24
30
  }
31
+ async scheduler({ auth, body }) {
32
+ return await this.web.request({
33
+ method: 'POST', auth, body,
34
+ endpoint: this.web.qp('/scheduler'),
35
+ });
36
+ }
25
37
  async checkRateLimit({ auth }) {
26
38
  return await this.web.request({
27
39
  method: 'GET', auth,
@@ -34,14 +46,21 @@ class APIOther {
34
46
  endpoint: this.web.qp('/data/languages'),
35
47
  });
36
48
  }
37
- async oAuth2({ guildId }) {
49
+ async oAuth2({ state, guildId } = {}) {
38
50
  return await this.web.request({
39
51
  method: 'GET',
40
52
  endpoint: this.web.qp('/oauth2', {
53
+ state,
41
54
  guildId,
42
55
  }),
43
56
  });
44
57
  }
58
+ async eval({ auth, body }) {
59
+ return await this.web.request({
60
+ method: 'POST', auth, body,
61
+ endpoint: this.web.qp('/eval'),
62
+ });
63
+ }
45
64
  async isDown() {
46
65
  const response = await this.web.request({
47
66
  method: 'GET',
@@ -4,8 +4,8 @@ import { AllPlatforms } from '../other/prisma';
4
4
  export declare class APIPlatform {
5
5
  private web;
6
6
  constructor(web: WebDataManager);
7
- getActivePlatforms({ auth }: PlatformFunctionsInput['getActivePlatforms']): Promise<import("../types").WebResponse<string[]>>;
8
- getPlatformWorkerStats<P extends AllPlatforms>({ auth, platform }: PlatformFunctionsInput<P>['getPlatformWorkerStats']): Promise<import("../types").WebResponse<PlatformStats>>;
7
+ getActivePlatforms({ auth }: PlatformFunctionsInput['getActivePlatforms']): Promise<import("../types").WebResponse<AllPlatforms[]>>;
8
+ getPlatformWorkerStats<P extends AllPlatforms>({ auth, platform, page, limit }: PlatformFunctionsInput<P>['getPlatformWorkerStats']): Promise<import("../types").WebResponse<PlatformStats>>;
9
9
  getGuildsForStreamer<P extends AllPlatforms>({ auth, platform, username }: PlatformFunctionsInput<P>['getGuildsForStreamer']): Promise<import("../types").WebResponse<GuildsForStreamer>>;
10
10
  }
11
11
  export type PlatformFunctionsInput<P extends AllPlatforms = never> = {
@@ -15,6 +15,8 @@ export type PlatformFunctionsInput<P extends AllPlatforms = never> = {
15
15
  'getPlatformWorkerStats': {
16
16
  auth: string;
17
17
  platform: P;
18
+ page?: number;
19
+ limit?: number;
18
20
  };
19
21
  'getGuildsForStreamer': {
20
22
  auth: string;
@@ -31,7 +33,10 @@ export type PlatformReturnTypes = {
31
33
  'getGuildsForStreamerSuccess': CancelOutWebResponses<Awaited<ReturnType<APIPlatform['getGuildsForStreamer']>>>;
32
34
  };
33
35
  export type PlatformStats = {
34
- monitoredUsernames: string[];
36
+ monitoredUsernames: {
37
+ username: string;
38
+ isLive: boolean | null;
39
+ }[];
35
40
  status: 'online' | 'offline';
36
41
  lastUpdated: number;
37
42
  workerId: number;
@@ -14,10 +14,13 @@ class APIPlatform {
14
14
  endpoint: this.web.qp('/data/platforms'),
15
15
  });
16
16
  }
17
- async getPlatformWorkerStats({ auth, platform }) {
17
+ async getPlatformWorkerStats({ auth, platform, page, limit }) {
18
18
  return await this.web.request({
19
19
  method: 'GET', auth,
20
- endpoint: this.web.qp('/data/platforms/' + platform),
20
+ endpoint: this.web.qp('/data/platforms/' + platform, {
21
+ page: page,
22
+ limit: limit,
23
+ }),
21
24
  });
22
25
  }
23
26
  async getGuildsForStreamer({ auth, platform, username }) {