seyfert 4.0.1-dev-20179130059.0 → 4.0.1-dev-20381375647.0

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.
@@ -1,5 +1,5 @@
1
1
  import type { Identify, OmitInsert } from '../../common';
2
- import type { APIThreadChannel, RESTDeleteAPIAutoModerationRuleResult, RESTDeleteAPIGuildBanResult, RESTDeleteAPIGuildEmojiResult, RESTDeleteAPIGuildIntegrationResult, RESTDeleteAPIGuildMemberResult, RESTDeleteAPIGuildMemberRoleResult, RESTDeleteAPIGuildResult, RESTDeleteAPIGuildRoleResult, RESTDeleteAPIGuildScheduledEventResult, RESTDeleteAPIGuildStickerResult, RESTDeleteAPIGuildTemplateResult, RESTGetAPIAuditLogQuery, RESTGetAPIAuditLogResult, RESTGetAPIAutoModerationRuleResult, RESTGetAPIAutoModerationRulesResult, RESTGetAPICurrentUserVoiceState, RESTGetAPIGuildBanResult, RESTGetAPIGuildBansQuery, RESTGetAPIGuildBansResult, RESTGetAPIGuildChannelsResult, RESTGetAPIGuildEmojiResult, RESTGetAPIGuildEmojisResult, RESTGetAPIGuildIntegrationsResult, RESTGetAPIGuildInvitesResult, RESTGetAPIGuildMemberResult, RESTGetAPIGuildMembersQuery, RESTGetAPIGuildMembersResult, RESTGetAPIGuildMembersSearchQuery, RESTGetAPIGuildMembersSearchResult, RESTGetAPIGuildPreviewResult, RESTGetAPIGuildPruneCountQuery, RESTGetAPIGuildPruneCountResult, RESTGetAPIGuildQuery, RESTGetAPIGuildResult, RESTGetAPIGuildRoleResult, RESTGetAPIGuildRolesResult, RESTGetAPIGuildScheduledEventQuery, RESTGetAPIGuildScheduledEventResult, RESTGetAPIGuildScheduledEventsQuery, RESTGetAPIGuildScheduledEventsResult, RESTGetAPIGuildScheduledEventUsersQuery, RESTGetAPIGuildScheduledEventUsersResult, RESTGetAPIGuildSoundboardSoundsResult, RESTGetAPIGuildStickerResult, RESTGetAPIGuildStickersResult, RESTGetAPIGuildTemplatesResult, RESTGetAPIGuildThreadsResult, RESTGetAPIGuildVanityUrlResult, RESTGetAPIGuildVoiceRegionsResult, RESTGetAPIGuildWebhooksResult, RESTGetAPIGuildWelcomeScreenResult, RESTGetAPIGuildWidgetImageQuery, RESTGetAPIGuildWidgetImageResult, RESTGetAPIGuildWidgetJSONResult, RESTGetAPIGuildWidgetSettingsResult, RESTGetAPITemplateResult, RESTGetAPIUserVoiceState, RESTPatchAPIAutoModerationRuleJSONBody, RESTPatchAPIAutoModerationRuleResult, RESTPatchAPICurrentGuildMemberJSONBody, RESTPatchAPIGuildChannelPositionsJSONBody, RESTPatchAPIGuildChannelPositionsResult, RESTPatchAPIGuildEmojiJSONBody, RESTPatchAPIGuildEmojiResult, RESTPatchAPIGuildJSONBody, RESTPatchAPIGuildMemberJSONBody, RESTPatchAPIGuildMemberResult, RESTPatchAPIGuildResult, RESTPatchAPIGuildRoleJSONBody, RESTPatchAPIGuildRolePositionsJSONBody, RESTPatchAPIGuildRolePositionsResult, RESTPatchAPIGuildRoleResult, RESTPatchAPIGuildScheduledEventJSONBody, RESTPatchAPIGuildScheduledEventResult, RESTPatchAPIGuildSoundboardSound, RESTPatchAPIGuildSoundboardSoundResult, RESTPatchAPIGuildStickerJSONBody, RESTPatchAPIGuildStickerResult, RESTPatchAPIGuildTemplateJSONBody, RESTPatchAPIGuildTemplateResult, RESTPatchAPIGuildVoiceStateCurrentMemberJSONBody, RESTPatchAPIGuildVoiceStateCurrentMemberResult, RESTPatchAPIGuildVoiceStateUserJSONBody, RESTPatchAPIGuildVoiceStateUserResult, RESTPatchAPIGuildWelcomeScreenJSONBody, RESTPatchAPIGuildWelcomeScreenResult, RESTPatchAPIGuildWidgetSettingsJSONBody, RESTPatchAPIGuildWidgetSettingsResult, RESTPostAPIAutoModerationRuleJSONBody, RESTPostAPIAutoModerationRuleResult, RESTPostAPIGuildBulkBanJSONBody, RESTPostAPIGuildBulkBanResult, RESTPostAPIGuildChannelJSONBody, RESTPostAPIGuildChannelResult, RESTPostAPIGuildEmojiJSONBody, RESTPostAPIGuildEmojiResult, RESTPostAPIGuildPruneJSONBody, RESTPostAPIGuildPruneResult, RESTPostAPIGuildRoleJSONBody, RESTPostAPIGuildRoleResult, RESTPostAPIGuildScheduledEventJSONBody, RESTPostAPIGuildScheduledEventResult, RESTPostAPIGuildSoundboardSound, RESTPostAPIGuildSoundboardSoundResult, RESTPostAPIGuildStickerFormDataBody, RESTPostAPIGuildStickerResult, RESTPostAPIGuildsMFAJSONBody, RESTPostAPIGuildsMFAResult, RESTPostAPIGuildTemplatesJSONBody, RESTPostAPIGuildTemplatesResult, RESTPostAPITemplateCreateGuildJSONBody, RESTPostAPITemplateCreateGuildResult, RESTPutAPIGuildBanJSONBody, RESTPutAPIGuildBanResult, RESTPutAPIGuildMemberJSONBody, RESTPutAPIGuildMemberResult, RESTPutAPIGuildMemberRoleResult, RESTPutAPIGuildTemplateSyncResult } from '../../types';
2
+ import type { APIThreadChannel, RESTDeleteAPIAutoModerationRuleResult, RESTDeleteAPIGuildBanResult, RESTDeleteAPIGuildEmojiResult, RESTDeleteAPIGuildIntegrationResult, RESTDeleteAPIGuildMemberResult, RESTDeleteAPIGuildMemberRoleResult, RESTDeleteAPIGuildResult, RESTDeleteAPIGuildRoleResult, RESTDeleteAPIGuildScheduledEventResult, RESTDeleteAPIGuildStickerResult, RESTDeleteAPIGuildTemplateResult, RESTGetAPIAuditLogQuery, RESTGetAPIAuditLogResult, RESTGetAPIAutoModerationRuleResult, RESTGetAPIAutoModerationRulesResult, RESTGetAPICurrentUserVoiceState, RESTGetAPIGuildBanResult, RESTGetAPIGuildBansQuery, RESTGetAPIGuildBansResult, RESTGetAPIGuildChannelsResult, RESTGetAPIGuildEmojiResult, RESTGetAPIGuildEmojisResult, RESTGetAPIGuildIntegrationsResult, RESTGetAPIGuildInvitesResult, RESTGetAPIGuildMemberResult, RESTGetAPIGuildMembersQuery, RESTGetAPIGuildMembersResult, RESTGetAPIGuildMembersSearchQuery, RESTGetAPIGuildMembersSearchResult, RESTGetAPIGuildPreviewResult, RESTGetAPIGuildPruneCountQuery, RESTGetAPIGuildPruneCountResult, RESTGetAPIGuildQuery, RESTGetAPIGuildResult, RESTGetAPIGuildRoleMemberCountsResult, RESTGetAPIGuildRoleResult, RESTGetAPIGuildRolesResult, RESTGetAPIGuildScheduledEventQuery, RESTGetAPIGuildScheduledEventResult, RESTGetAPIGuildScheduledEventsQuery, RESTGetAPIGuildScheduledEventsResult, RESTGetAPIGuildScheduledEventUsersQuery, RESTGetAPIGuildScheduledEventUsersResult, RESTGetAPIGuildSoundboardSoundsResult, RESTGetAPIGuildStickerResult, RESTGetAPIGuildStickersResult, RESTGetAPIGuildTemplatesResult, RESTGetAPIGuildThreadsResult, RESTGetAPIGuildVanityUrlResult, RESTGetAPIGuildVoiceRegionsResult, RESTGetAPIGuildWebhooksResult, RESTGetAPIGuildWelcomeScreenResult, RESTGetAPIGuildWidgetImageQuery, RESTGetAPIGuildWidgetImageResult, RESTGetAPIGuildWidgetJSONResult, RESTGetAPIGuildWidgetSettingsResult, RESTGetAPITemplateResult, RESTGetAPIUserVoiceState, RESTPatchAPIAutoModerationRuleJSONBody, RESTPatchAPIAutoModerationRuleResult, RESTPatchAPICurrentGuildMemberJSONBody, RESTPatchAPIGuildChannelPositionsJSONBody, RESTPatchAPIGuildChannelPositionsResult, RESTPatchAPIGuildEmojiJSONBody, RESTPatchAPIGuildEmojiResult, RESTPatchAPIGuildJSONBody, RESTPatchAPIGuildMemberJSONBody, RESTPatchAPIGuildMemberResult, RESTPatchAPIGuildResult, RESTPatchAPIGuildRoleJSONBody, RESTPatchAPIGuildRolePositionsJSONBody, RESTPatchAPIGuildRolePositionsResult, RESTPatchAPIGuildRoleResult, RESTPatchAPIGuildScheduledEventJSONBody, RESTPatchAPIGuildScheduledEventResult, RESTPatchAPIGuildSoundboardSound, RESTPatchAPIGuildSoundboardSoundResult, RESTPatchAPIGuildStickerJSONBody, RESTPatchAPIGuildStickerResult, RESTPatchAPIGuildTemplateJSONBody, RESTPatchAPIGuildTemplateResult, RESTPatchAPIGuildVoiceStateCurrentMemberJSONBody, RESTPatchAPIGuildVoiceStateCurrentMemberResult, RESTPatchAPIGuildVoiceStateUserJSONBody, RESTPatchAPIGuildVoiceStateUserResult, RESTPatchAPIGuildWelcomeScreenJSONBody, RESTPatchAPIGuildWelcomeScreenResult, RESTPatchAPIGuildWidgetSettingsJSONBody, RESTPatchAPIGuildWidgetSettingsResult, RESTPostAPIAutoModerationRuleJSONBody, RESTPostAPIAutoModerationRuleResult, RESTPostAPIGuildBulkBanJSONBody, RESTPostAPIGuildBulkBanResult, RESTPostAPIGuildChannelJSONBody, RESTPostAPIGuildChannelResult, RESTPostAPIGuildEmojiJSONBody, RESTPostAPIGuildEmojiResult, RESTPostAPIGuildPruneJSONBody, RESTPostAPIGuildPruneResult, RESTPostAPIGuildRoleJSONBody, RESTPostAPIGuildRoleResult, RESTPostAPIGuildScheduledEventJSONBody, RESTPostAPIGuildScheduledEventResult, RESTPostAPIGuildSoundboardSound, RESTPostAPIGuildSoundboardSoundResult, RESTPostAPIGuildStickerFormDataBody, RESTPostAPIGuildStickerResult, RESTPostAPIGuildsMFAJSONBody, RESTPostAPIGuildsMFAResult, RESTPostAPIGuildTemplatesJSONBody, RESTPostAPIGuildTemplatesResult, RESTPostAPITemplateCreateGuildJSONBody, RESTPostAPITemplateCreateGuildResult, RESTPutAPIGuildBanJSONBody, RESTPutAPIGuildBanResult, RESTPutAPIGuildMemberJSONBody, RESTPutAPIGuildMemberResult, RESTPutAPIGuildMemberRoleResult, RESTPutAPIGuildTemplateSyncResult } from '../../types';
3
3
  import type { RestArguments, RestArgumentsNoBody } from '../api';
4
4
  import type { RawFile } from '../shared';
5
5
  export interface GuildRoutes {
@@ -72,6 +72,9 @@ export interface GuildRoutes {
72
72
  patch(args: RestArguments<RESTPatchAPIGuildRoleJSONBody>): Promise<RESTPatchAPIGuildRoleResult>;
73
73
  delete(args?: RestArgumentsNoBody): Promise<RESTDeleteAPIGuildRoleResult>;
74
74
  };
75
+ 'member-counts': {
76
+ get(args?: RestArgumentsNoBody): Promise<RESTGetAPIGuildRoleMemberCountsResult>;
77
+ };
75
78
  };
76
79
  bans: {
77
80
  get(args?: RestArgumentsNoBody<RESTGetAPIGuildBansQuery>): Promise<RESTGetAPIGuildBansResult>;
@@ -26,6 +26,7 @@ export declare class CommandContext<T extends OptionsRecord = {}, M extends keyo
26
26
  get(locale?: string): import("./shared").DefaultLocale;
27
27
  };
28
28
  get fullCommandName(): string;
29
+ get deferred(): boolean;
29
30
  write<WR extends boolean = false>(body: InteractionCreateBodyRequest, withResponse?: WR): Promise<When<WR, WebhookMessageStructure | When<InferWithPrefix, MessageStructure, never>, void | WebhookMessageStructure | When<InferWithPrefix, MessageStructure, never>>>;
30
31
  deferReply<WR extends boolean = false>(ephemeral?: boolean, withResponse?: WR): Promise<When<WR, WebhookMessageStructure | When<InferWithPrefix, MessageStructure, never>, When<InferWithPrefix, MessageStructure, never> | undefined>>;
31
32
  editResponse(body: InteractionMessageUpdateBodyRequest): Promise<When<InferWithPrefix, WebhookMessageStructure | MessageStructure, WebhookMessageStructure>>;
@@ -34,6 +34,9 @@ class CommandContext extends basecontext_1.BaseContext {
34
34
  get fullCommandName() {
35
35
  return this.resolver.fullCommandName;
36
36
  }
37
+ get deferred() {
38
+ return !!this.__deferred;
39
+ }
37
40
  async write(body, withResponse) {
38
41
  if (this.interaction)
39
42
  return this.interaction.write(body, withResponse);
@@ -21,6 +21,7 @@ export declare class EntryPointContext<M extends keyof RegisteredMiddlewares = n
21
21
  get(locale?: string): import("./shared").DefaultLocale;
22
22
  };
23
23
  get fullCommandName(): string;
24
+ get deferred(): boolean;
24
25
  write<WR extends boolean = false>(body: InteractionCreateBodyRequest, withResponse?: WR): Promise<When<WR, WebhookMessageStructure, void>>;
25
26
  modal(body: ModalCreateBodyRequest, options?: undefined): Promise<undefined>;
26
27
  modal(body: ModalCreateBodyRequest, options: ModalCreateOptions): Promise<ModalSubmitInteraction | null>;
@@ -23,6 +23,9 @@ class EntryPointContext extends basecontext_1.BaseContext {
23
23
  get fullCommandName() {
24
24
  return this.command.name;
25
25
  }
26
+ get deferred() {
27
+ return !!this.interaction.deferred;
28
+ }
26
29
  write(body, withResponse) {
27
30
  return this.interaction.write(body, withResponse);
28
31
  }
@@ -22,6 +22,7 @@ export declare class MenuCommandContext<T extends MessageCommandInteraction | Us
22
22
  get(locale?: string): import("./shared").DefaultLocale;
23
23
  };
24
24
  get fullCommandName(): string;
25
+ get deferred(): boolean;
25
26
  write<WR extends boolean = false>(body: InteractionCreateBodyRequest, withResponse?: WR): Promise<When<WR, WebhookMessageStructure, void>>;
26
27
  modal(body: ModalCreateBodyRequest, options?: undefined): Promise<undefined>;
27
28
  modal(body: ModalCreateBodyRequest, options: ModalCreateOptions): Promise<ModalSubmitInteraction | null>;
@@ -37,6 +37,9 @@ class MenuCommandContext extends basecontext_1.BaseContext {
37
37
  get fullCommandName() {
38
38
  return this.command.name;
39
39
  }
40
+ get deferred() {
41
+ return !!this.interaction.deferred;
42
+ }
40
43
  write(body, withResponse) {
41
44
  return this.interaction.write(body, withResponse);
42
45
  }
@@ -1,5 +1,5 @@
1
1
  import { type GuildRoleStructure } from '../../client/transformers';
2
- import type { APIRole, RESTPatchAPIGuildRoleJSONBody, RESTPatchAPIGuildRolePositionsJSONBody, RESTPostAPIGuildRoleJSONBody } from '../../types';
2
+ import type { APIRole, RESTGetAPIGuildRoleMemberCountsResult, RESTPatchAPIGuildRoleJSONBody, RESTPatchAPIGuildRolePositionsJSONBody, RESTPostAPIGuildRoleJSONBody } from '../../types';
3
3
  import { BaseShorter } from './base';
4
4
  export declare class RoleShorter extends BaseShorter {
5
5
  /**
@@ -37,6 +37,12 @@ export declare class RoleShorter extends BaseShorter {
37
37
  * @returns A Promise that resolves when the role is deleted.
38
38
  */
39
39
  delete(guildId: string, roleId: string, reason?: string): Promise<void>;
40
+ /**
41
+ * Returns a map of role IDs to the number of members with the role. Does not include the @everyone role.
42
+ * @param guildId The ID of the guild.
43
+ * @returns A Promise that resolves to an object mapping role IDs to member counts.
44
+ */
45
+ memberCounts(guildId: string): Promise<RESTGetAPIGuildRoleMemberCountsResult>;
40
46
  /**
41
47
  * Edits the positions of roles in the guild.
42
48
  * @param guildId The ID of the guild.
@@ -78,6 +78,14 @@ class RoleShorter extends base_1.BaseShorter {
78
78
  await this.client.proxy.guilds(guildId).roles(roleId).delete({ reason });
79
79
  this.client.cache.roles?.removeIfNI('Guilds', roleId, guildId);
80
80
  }
81
+ /**
82
+ * Returns a map of role IDs to the number of members with the role. Does not include the @everyone role.
83
+ * @param guildId The ID of the guild.
84
+ * @returns A Promise that resolves to an object mapping role IDs to member counts.
85
+ */
86
+ memberCounts(guildId) {
87
+ return this.client.proxy.guilds(guildId).roles['member-counts'].get();
88
+ }
81
89
  /**
82
90
  * Edits the positions of roles in the guild.
83
91
  * @param guildId The ID of the guild.
@@ -31,6 +31,7 @@ export declare class BaseInteraction<FromGuild extends boolean = boolean, Type e
31
31
  channel?: AllChannels;
32
32
  message?: MessageStructure;
33
33
  replied?: Promise<boolean | RESTPostAPIInteractionCallbackResult | undefined> | boolean;
34
+ deferred?: boolean;
34
35
  appPermissions: PermissionsBitField;
35
36
  entitlements: EntitlementStructure[];
36
37
  constructor(client: UsingClient, interaction: Type, __reply?: __InternalReplyFunction | undefined);
@@ -24,6 +24,7 @@ class BaseInteraction extends DiscordBase_1.DiscordBase {
24
24
  channel;
25
25
  message;
26
26
  replied;
27
+ deferred;
27
28
  appPermissions;
28
29
  entitlements;
29
30
  constructor(client, interaction, __reply) {
@@ -144,6 +145,7 @@ class BaseInteraction extends DiscordBase_1.DiscordBase {
144
145
  return result;
145
146
  }
146
147
  deferReply(flags, withResponse) {
148
+ this.deferred = true;
147
149
  return this.reply({
148
150
  type: types_1.InteractionResponseType.DeferredChannelMessageWithSource,
149
151
  data: {
@@ -635,6 +635,10 @@ export type RESTPatchAPIGuildRoleResult = APIRole;
635
635
  * https://discord.com/developers/docs/resources/guild#delete-guild-role
636
636
  */
637
637
  export type RESTDeleteAPIGuildRoleResult = undefined;
638
+ /**
639
+ * https://discord.com/developers/docs/resources/guild#get-guild-role-member-counts
640
+ */
641
+ export type RESTGetAPIGuildRoleMemberCountsResult = Record<string, number>;
638
642
  /**
639
643
  * https://discord.com/developers/docs/resources/guild#get-guild-prune-count
640
644
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "seyfert",
3
- "version": "4.0.1-dev-20179130059.0",
3
+ "version": "4.0.1-dev-20381375647.0",
4
4
  "description": "The most advanced framework for discord bots",
5
5
  "main": "./lib/index.js",
6
6
  "module": "./lib/index.js",