@stoatx/client 0.4.0 → 0.5.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.
package/dist/index.d.cts CHANGED
@@ -1,4 +1,7 @@
1
1
  import { EventEmitter } from 'events';
2
+ import { APIRoutes, File, User as User$1, Member as Member$1, Channel, Message as Message$1, Role as Role$1, Invite, ServerBan as ServerBan$1, Server as Server$1, Emoji as Emoji$1, Category, Embed } from 'stoat-api';
3
+ import * as stoatApi from 'stoat-api';
4
+ export { stoatApi as API };
2
5
  import * as util from 'node:util';
3
6
 
4
7
  declare class GatewayManager {
@@ -40,6 +43,18 @@ declare class AttachmentBuilder {
40
43
  upload(rest: RESTManager, tag: CDNTag): Promise<string>;
41
44
  }
42
45
 
46
+ type ValidPath<M extends APIRoutes["method"]> = Extract<APIRoutes, {
47
+ method: M;
48
+ }>["path"];
49
+ type RouteResponse<M extends APIRoutes["method"], P extends string> = Extract<APIRoutes, {
50
+ method: M;
51
+ path: P;
52
+ }>["response"];
53
+ type RouteParams<M extends APIRoutes["method"], P extends string> = Extract<APIRoutes, {
54
+ method: M;
55
+ path: P;
56
+ }>["params"];
57
+
43
58
  /**
44
59
  * Custom Error class for Stoat API failures
45
60
  */
@@ -63,17 +78,17 @@ declare class RESTManager {
63
78
  * Generates a local identifier for the bucket based on method and path.
64
79
  */
65
80
  private getRouteKey;
66
- makeRequest(method: string, endpoint: string, body?: any): Promise<any>;
81
+ makeRequest<M extends APIRoutes["method"], P extends ValidPath<M>>(method: M, endpoint: P, params?: RouteParams<M, P>): Promise<RouteResponse<M, P>>;
67
82
  private execute;
68
83
  /**
69
84
  * Uploads a file to Stoat's CDN and returns the File ID
70
85
  */
71
86
  uploadFile(tag: CDNTag, fileBuffer: Buffer | Blob, filename?: string): Promise<string>;
72
- get(endpoint: string): Promise<any>;
73
- post(endpoint: string, body?: any): Promise<any>;
74
- patch(endpoint: string, body?: any): Promise<any>;
75
- delete(endpoint: string, body?: any): Promise<any>;
76
- put(endpoint: string, body?: any): Promise<any>;
87
+ get<P extends ValidPath<"get">>(endpoint: P, params?: RouteParams<"get", P>): Promise<RouteResponse<"get", P>>;
88
+ post<P extends ValidPath<"post">>(endpoint: P, params?: RouteParams<"post", P>): Promise<RouteResponse<"post", P>>;
89
+ patch<P extends ValidPath<"patch">>(endpoint: P, params?: RouteParams<"patch", P>): Promise<RouteResponse<"patch", P>>;
90
+ delete<P extends ValidPath<"delete">>(endpoint: P, params?: RouteParams<"delete", P>): Promise<RouteResponse<"delete", P>>;
91
+ put<P extends ValidPath<"put">>(endpoint: P, params?: RouteParams<"put", P>): Promise<RouteResponse<"put", P>>;
77
92
  }
78
93
 
79
94
  /**
@@ -83,7 +98,7 @@ declare abstract class Base {
83
98
  readonly id: string;
84
99
  cachedAt: number;
85
100
  protected readonly client: Client;
86
- constructor(client: Client, data: {
101
+ protected constructor(client: Client, data: {
87
102
  _id: string;
88
103
  });
89
104
  /**
@@ -110,8 +125,8 @@ type AttachmentMetadata = {
110
125
  type: "Image";
111
126
  width: number;
112
127
  height: number;
113
- thumbhash?: number[];
114
- animated?: boolean;
128
+ thumbhash?: number[] | null;
129
+ animated?: boolean | null;
115
130
  } | {
116
131
  type: "Video";
117
132
  width: number;
@@ -126,11 +141,11 @@ declare class Attachment extends Base {
126
141
  size: number;
127
142
  deleted?: boolean;
128
143
  reported?: boolean;
129
- messageId?: string;
130
- userId?: string;
131
- serverId?: string;
132
- objectId?: string;
133
- constructor(client: Client, data: any);
144
+ messageId?: string | null | undefined;
145
+ userId?: string | null | undefined;
146
+ serverId?: string | null | undefined;
147
+ objectId?: string | null | undefined;
148
+ constructor(client: Client, data: File);
134
149
  /**
135
150
  * Automatically constructs the direct CDN URL for this file
136
151
  */
@@ -141,29 +156,12 @@ declare class Attachment extends Base {
141
156
  get isImage(): boolean;
142
157
  }
143
158
 
144
- declare enum UserRelationship {
145
- None = "None",
146
- User = "User",
147
- Friend = "Friend",
148
- Outgoing = "Outgoing",
149
- Incoming = "Incoming",
150
- Blocked = "Blocked",
151
- BlockedOther = "BlockedOther"
152
- }
153
- declare enum UserPresence {
154
- Online = "Online",
155
- Idle = "Idle",
156
- Focus = "Focus",
157
- Busy = "Busy",
158
- Invisible = "Invisible"
159
- }
159
+ type UserRelationShip = "None" | "User" | "Friend" | "Outgoing" | "Incoming" | "Blocked" | "BlockedOther";
160
160
  interface BotInformation {
161
161
  owner: string;
162
162
  }
163
- interface UserStatus {
164
- presence: UserPresence;
165
- text?: string | null;
166
- }
163
+ type UserStatus = NonNullable<User$1["status"]>;
164
+ type UserPresence = NonNullable<UserStatus["presence"]>;
167
165
  interface UserProfile {
168
166
  background?: string | null;
169
167
  content?: string | null;
@@ -171,7 +169,7 @@ interface UserProfile {
171
169
  declare class User extends Base {
172
170
  discriminator: string;
173
171
  online: boolean;
174
- relationship: UserRelationship;
172
+ relationship: UserRelationShip;
175
173
  username: string;
176
174
  avatar?: Attachment | null;
177
175
  badges?: number;
@@ -180,8 +178,8 @@ declare class User extends Base {
180
178
  flags?: number;
181
179
  privileged?: boolean;
182
180
  status?: UserStatus | null;
183
- constructor(client: Client, data: any);
184
- _patch(data: any, clear?: string[]): void;
181
+ constructor(client: Client, data: User$1);
182
+ _patch(data: User$1, clear?: string[]): void;
185
183
  /**
186
184
  * Convenience getter to return the user's tag (username#discriminator)
187
185
  */
@@ -271,7 +269,8 @@ interface MemberBanOptions {
271
269
  deleteMessageSeconds?: number;
272
270
  }
273
271
  interface FetchMembersOptions {
274
- exclude_offline?: boolean;
272
+ /** Whether to exclude offline users from the fetch */
273
+ excludeOffline?: boolean;
275
274
  }
276
275
  declare class MemberManager extends BaseManager<string, Member> {
277
276
  server: Server;
@@ -280,12 +279,12 @@ declare class MemberManager extends BaseManager<string, Member> {
280
279
  * Tell BaseManager how to handle Revolt's Member IDs
281
280
  * @internal
282
281
  */
283
- protected extractId(data: any): string;
282
+ protected extractId(data: Member$1): string;
284
283
  /**
285
284
  * Tell BaseManager how to build a Member
286
285
  * @internal
287
286
  */
288
- protected construct(data: any): Member;
287
+ protected construct(data: Member$1): Member;
289
288
  /**
290
289
  * Resolve a string or mention to Member
291
290
  * @param member The MemberResolvable to resolve
@@ -552,14 +551,20 @@ declare class Permissions extends BitField {
552
551
  remove(...bits: PermissionResolvable[]): this;
553
552
  }
554
553
 
554
+ type RawDMChannel = Extract<Channel, {
555
+ channel_type: "DirectMessage";
556
+ }>;
555
557
  declare class DMChannel extends BaseChannel {
556
558
  active: boolean;
557
559
  recipients: string[];
558
560
  lastMessageId: string | null;
559
- constructor(client: any, data: any);
560
- _patch(data: any): void;
561
+ constructor(client: Client, data: RawDMChannel);
562
+ _patch(data: RawDMChannel): void;
561
563
  }
562
564
 
565
+ type RawGroupChannel = Extract<Channel, {
566
+ channel_type: "Group";
567
+ }>;
563
568
  declare class GroupChannel extends BaseChannel {
564
569
  name: string;
565
570
  ownerId: string;
@@ -568,8 +573,8 @@ declare class GroupChannel extends BaseChannel {
568
573
  icon: Attachment | null;
569
574
  lastMessageId?: string | null;
570
575
  nsfw: boolean;
571
- constructor(client: Client, data: any);
572
- _patch(data: any, clear?: string[]): void;
576
+ constructor(client: Client, data: RawGroupChannel);
577
+ _patch(data: RawGroupChannel, clear?: string[]): void;
573
578
  /** Gets the User object of the person who owns this group */
574
579
  get owner(): User | undefined;
575
580
  /** Resolves the recipient IDs into an array of cached User objects */
@@ -600,11 +605,11 @@ declare class UserManager extends BaseManager<string, User> {
600
605
  /**
601
606
  * Tell BaseManager how to find the ID for Users
602
607
  */
603
- protected extractId(data: any): string;
608
+ protected extractId(data: User$1): string;
604
609
  /**
605
610
  * Tell BaseManager how to build a User
606
611
  */
607
- protected construct(data: any): User;
612
+ protected construct(data: User$1): User;
608
613
  /**
609
614
  * Resolves a UserResolvable to a User object from the cache.
610
615
  */
@@ -704,11 +709,11 @@ declare class MessageManager extends BaseManager<string, Message> {
704
709
  /**
705
710
  * Tell BaseManager how to find the ID for Messages
706
711
  */
707
- protected extractId(data: any): string;
712
+ protected extractId(data: Message$1): string;
708
713
  /**
709
714
  * Tell BaseManager how to build a Message
710
715
  */
711
- protected construct(data: any): Message;
716
+ protected construct(data: Message$1): Message;
712
717
  fetch(id: string): Promise<Message>;
713
718
  /**
714
719
  * Fetches multiple messages from the channel using specific filter parameters.
@@ -815,8 +820,8 @@ declare class ChannelManager extends BaseManager<string, BaseChannel> {
815
820
  * @param limit The maximum number of channels to hold in the cache.
816
821
  */
817
822
  constructor(client: Client, limit?: number);
818
- protected extractId(data: any): string;
819
- protected construct(data: any): BaseChannel;
823
+ protected extractId(data: Channel): string;
824
+ protected construct(data: Channel): BaseChannel;
820
825
  /**
821
826
  * Resolves a ChannelResolvable to a cached BaseChannel object.
822
827
  * @param channel The ChannelResolvable to resolve.
@@ -920,21 +925,24 @@ declare class ChannelManager extends BaseManager<string, BaseChannel> {
920
925
  bulkDelete(id: string, messages: MessageResolvable[]): Promise<void>;
921
926
  }
922
927
 
928
+ type RawTextChannel = Extract<Channel, {
929
+ channel_type: "TextChannel";
930
+ }>;
923
931
  declare class TextChannel extends BaseChannel {
924
932
  name: string;
925
933
  serverId: string;
926
934
  defaultPermissions?: {
927
935
  a: number;
928
936
  d: number;
929
- };
930
- description?: string | null;
937
+ } | null | undefined;
938
+ description?: string | null | undefined;
931
939
  icon?: Attachment | null;
932
- lastMessageId?: string | null;
940
+ lastMessageId?: string | null | undefined;
933
941
  nsfw?: boolean;
934
942
  slowmode?: number;
935
943
  voice?: any;
936
- constructor(client: Client, data: any);
937
- _patch(data: any, clear?: string[]): void;
944
+ constructor(client: Client, data: RawTextChannel);
945
+ _patch(data: RawTextChannel, clear?: string[]): void;
938
946
  /**
939
947
  * Updates the permission overrides for the channel.
940
948
  * @param roleId The raw string ID of the role to update.
@@ -1128,11 +1136,7 @@ declare class MessageCollector extends Collector<string, Message> {
1128
1136
  endReason(): string | null;
1129
1137
  }
1130
1138
 
1131
- declare enum ChannelType {
1132
- TEXT = "TextChannel",
1133
- DM = "DirectMessage",
1134
- GROUP = "Group"
1135
- }
1139
+ type ChannelType = "SavedMessages" | "DirectMessage" | "Group" | "TextChannel";
1136
1140
  interface ChannelCreateOptions {
1137
1141
  name: string;
1138
1142
  type: "Text" | "Voice";
@@ -1145,7 +1149,7 @@ interface ChannelCreateOptions {
1145
1149
  declare abstract class BaseChannel extends Base {
1146
1150
  type: ChannelType;
1147
1151
  messages: MessageManager;
1148
- protected constructor(client: Client, data: any);
1152
+ protected constructor(client: Client, data: Channel);
1149
1153
  /**
1150
1154
  * Sends a message to this channel.
1151
1155
  * @param contentOrOptions The string content or message options payload.
@@ -1258,17 +1262,17 @@ declare class ServerChannelManager {
1258
1262
  declare class Role extends Base {
1259
1263
  serverId: string;
1260
1264
  name: string;
1261
- color: string | null;
1265
+ color: string | null | undefined;
1262
1266
  hoist: boolean;
1263
1267
  rank: number;
1264
1268
  icon: Attachment | null;
1265
1269
  private _permissions;
1266
- constructor(client: Client, data: any, serverId: string);
1270
+ constructor(client: Client, data: Role$1, serverId: string);
1267
1271
  /**
1268
1272
  * Updates the role instance with new data without losing the object reference.
1269
1273
  * @internal
1270
1274
  */
1271
- _patch(data: any): void;
1275
+ _patch(data: Role$1): void;
1272
1276
  /**
1273
1277
  * The server this role belongs to.
1274
1278
  * Pulls dynamically from the cache to prevent massive memory duplication.
@@ -1427,11 +1431,11 @@ declare class RoleManager extends BaseManager<string, Role> {
1427
1431
  /**
1428
1432
  * Tell BaseManager how to find the ID for Roles
1429
1433
  */
1430
- protected extractId(data: any): string;
1434
+ protected extractId(data: Role$1): string;
1431
1435
  /**
1432
1436
  * Tell BaseManager how to build a Role
1433
1437
  */
1434
- protected construct(data: any): Role;
1438
+ protected construct(data: Role$1): Role;
1435
1439
  /**
1436
1440
  * Adds or updates a role in the local cache.
1437
1441
  * @internal
@@ -1439,7 +1443,7 @@ declare class RoleManager extends BaseManager<string, Role> {
1439
1443
  * @param idParam An optional ID parameter if the payload wraps the role object.
1440
1444
  * @returns The newly created or updated Role object.
1441
1445
  */
1442
- _add(data: any, idParam?: string): Role;
1446
+ _add(data: Role$1, idParam?: string): Role;
1443
1447
  [util.inspect.custom](): Collection<string, Role>;
1444
1448
  /**
1445
1449
  * Resolves a RoleResolvable to a Role object from the cache.
@@ -1554,15 +1558,15 @@ declare class ServerInvite {
1554
1558
  code: string;
1555
1559
  creatorId: string;
1556
1560
  channelId: string;
1557
- constructor(data: any);
1558
- _patch(data: any): void;
1561
+ constructor(data: Invite);
1562
+ _patch(data: Invite): void;
1559
1563
  }
1560
1564
 
1561
1565
  declare class ServerInviteManager extends BaseManager<string, ServerInvite> {
1562
1566
  server: Server;
1563
1567
  constructor(client: Client, server: Server, limit?: number);
1564
- protected extractId(data: any): string;
1565
- protected construct(data: any): ServerInvite;
1568
+ protected extractId(data: Invite): string;
1569
+ protected construct(data: Invite): ServerInvite;
1566
1570
  /**
1567
1571
  * Fetches all active invites for this server.
1568
1572
  */
@@ -1572,8 +1576,8 @@ declare class ServerInviteManager extends BaseManager<string, ServerInvite> {
1572
1576
  declare class ServerBan {
1573
1577
  userId: string;
1574
1578
  reason: string | null;
1575
- constructor(data: any);
1576
- _patch(data: any): void;
1579
+ constructor(data: ServerBan$1);
1580
+ _patch(data: ServerBan$1): void;
1577
1581
  }
1578
1582
 
1579
1583
  declare class ServerBanManager extends BaseManager<string, ServerBan> {
@@ -1618,11 +1622,11 @@ declare class ServerManager extends BaseManager<string, Server> {
1618
1622
  /**
1619
1623
  * Tell BaseManager how to find the ID for Servers
1620
1624
  */
1621
- protected extractId(data: any): string;
1625
+ protected extractId(data: Server$1): string;
1622
1626
  /**
1623
1627
  * Tell BaseManager how to build a Server
1624
1628
  */
1625
- protected construct(data: any): Server;
1629
+ protected construct(data: Server$1): Server;
1626
1630
  /**
1627
1631
  * Fetches a server from the API.
1628
1632
  * @param id The server ID.
@@ -1633,18 +1637,20 @@ declare class ServerManager extends BaseManager<string, Server> {
1633
1637
  [util.inspect.custom](): Collection<string, Server>;
1634
1638
  }
1635
1639
 
1636
- interface EmojiParent {
1637
- id: string;
1640
+ type EmojiParent = {
1638
1641
  type: "Server";
1639
- }
1642
+ id: string;
1643
+ } | {
1644
+ type: "Detached";
1645
+ };
1640
1646
  declare class Emoji extends Base {
1641
1647
  creatorId: string;
1642
1648
  name: string;
1643
1649
  parent: EmojiParent;
1644
1650
  animated: boolean;
1645
1651
  nsfw: boolean;
1646
- constructor(client: Client, data: any);
1647
- _patch(data: any): void;
1652
+ constructor(client: Client, data: Emoji$1);
1653
+ _patch(data: Emoji$1): void;
1648
1654
  }
1649
1655
 
1650
1656
  declare class EmojiManager extends BaseManager<string, Emoji> {
@@ -1662,11 +1668,6 @@ declare class EmojiManager extends BaseManager<string, Emoji> {
1662
1668
  [util.inspect.custom](): Collection<string, Emoji>;
1663
1669
  }
1664
1670
 
1665
- interface Categories {
1666
- channels: string[];
1667
- id: string;
1668
- title: string;
1669
- }
1670
1671
  declare class Server extends Base {
1671
1672
  channelIds: string[];
1672
1673
  defaultPermissions: bigint;
@@ -1674,7 +1675,7 @@ declare class Server extends Base {
1674
1675
  ownerId: string;
1675
1676
  analytics: boolean;
1676
1677
  banner: Attachment | null;
1677
- categories: Categories[];
1678
+ categories: Category[] | null;
1678
1679
  description: string | null;
1679
1680
  discoverable: boolean;
1680
1681
  flags: number;
@@ -1686,11 +1687,11 @@ declare class Server extends Base {
1686
1687
  bans: ServerBanManager;
1687
1688
  invites: ServerInviteManager;
1688
1689
  emojis: EmojiManager;
1689
- constructor(client: Client, data: any);
1690
+ constructor(client: Client, data: Server$1);
1690
1691
  /**
1691
1692
  * Updates the server instance with new data without losing the object reference.
1692
1693
  */
1693
- _patch(data: any, clear?: string[]): void;
1694
+ _patch(data: Server$1, clear?: string[]): void;
1694
1695
  /**
1695
1696
  * Edits this server.
1696
1697
  * @param options The fields to update.
@@ -1699,7 +1700,7 @@ declare class Server extends Base {
1699
1700
  /**
1700
1701
  * Leaves the server
1701
1702
  */
1702
- leave(): Promise<any>;
1703
+ leave(): Promise<never>;
1703
1704
  /**
1704
1705
  * Fetches multiple members from this server.
1705
1706
  * @param options Filter options for the fetch request.
@@ -1757,8 +1758,8 @@ declare class Member extends Base {
1757
1758
  canPublish: boolean;
1758
1759
  canRecieve: boolean;
1759
1760
  roles: MemberRoleManager;
1760
- constructor(client: Client, data: any);
1761
- _patch(data: any): void;
1761
+ constructor(client: Client, data: Member$1, serverId?: string);
1762
+ _patch(data: Member$1): void;
1762
1763
  /**
1763
1764
  * Get member role IDs
1764
1765
  */
@@ -1913,9 +1914,9 @@ interface MessageOptions {
1913
1914
  replies?: ReplyIntent[];
1914
1915
  }
1915
1916
  interface Masquerade {
1916
- avatar?: string;
1917
- name?: string;
1918
- colour?: string;
1917
+ avatar?: string | null;
1918
+ name?: string | null;
1919
+ colour?: string | null;
1919
1920
  }
1920
1921
  interface ReplyIntent {
1921
1922
  id: string;
@@ -1930,19 +1931,19 @@ declare class Message extends Base {
1930
1931
  content: string | null;
1931
1932
  authorId: string;
1932
1933
  channelId: string;
1933
- embeds: any[];
1934
+ embeds: Embed[] | null;
1934
1935
  attachments: Attachment[];
1935
1936
  editedAt: Date | null;
1936
1937
  createdAt: Date | null;
1937
1938
  flags: number;
1938
1939
  interactions: Interaction | null;
1939
1940
  masquerade: Masquerade | null;
1940
- mentions: string[];
1941
- pinned: boolean;
1941
+ mentions: string[] | null;
1942
+ pinned: null | boolean;
1942
1943
  reactions: Record<string, string[]>;
1943
- replies: string[];
1944
- role_mentions: string[];
1945
- constructor(client: Client, data: any);
1944
+ replies: string[] | null;
1945
+ role_mentions: string[] | null;
1946
+ constructor(client: Client, data: Message$1);
1946
1947
  reply(contentOrOptions: string | MessageOptions): Promise<Message>;
1947
1948
  /**
1948
1949
  * Edits this message.
@@ -2024,7 +2025,7 @@ declare class Message extends Base {
2024
2025
  get serverId(): string | undefined;
2025
2026
  /** Gets the Server object from cache */
2026
2027
  get server(): Server | undefined;
2027
- _patch(data: any): void;
2028
+ _patch(data: Message$1): void;
2028
2029
  [util.inspect.custom](depth: number, options: util.InspectOptions, inspect: typeof util.inspect): string;
2029
2030
  }
2030
2031
 
@@ -2032,7 +2033,7 @@ declare class Message extends Base {
2032
2033
  * Represents the authenticated bot's user object.
2033
2034
  */
2034
2035
  declare class ClientUser extends User {
2035
- constructor(client: Client, data: any);
2036
+ constructor(client: Client, data: User$1);
2036
2037
  }
2037
2038
 
2038
2039
  interface SweeperOptions {
@@ -2082,7 +2083,18 @@ interface ClientEvents {
2082
2083
  serverDelete: [server: Server | string];
2083
2084
  userUpdate: [oldUser: User, newUser: User];
2084
2085
  serverMemberJoin: [member: Member];
2085
- serverMemberLeave: [member: Member];
2086
+ serverMemberLeave: [member: Member | {
2087
+ serverId: string;
2088
+ userId: string;
2089
+ }];
2090
+ serverBanAdd: [member: Member | {
2091
+ serverId: string;
2092
+ userId: string;
2093
+ }];
2094
+ serverMemberKick: [member: Member | {
2095
+ serverId: string;
2096
+ userId: string;
2097
+ }];
2086
2098
  }
2087
2099
  interface ClientOptions {
2088
2100
  sweepers?: SweeperOptions;
@@ -2117,7 +2129,7 @@ declare class Client extends EventEmitter {
2117
2129
  * A fallback class for channel types that are not yet officially supported by the library.
2118
2130
  */
2119
2131
  declare class UnknownChannel extends BaseChannel {
2120
- constructor(client: Client, data: any);
2132
+ constructor(client: Client, data: Channel);
2121
2133
  }
2122
2134
 
2123
- export { Attachment, AttachmentBuilder, type AttachmentMetadata, Base, BaseChannel, BitField, type BitFieldResolvable, type BotInformation, type CDNTag, type Categories, type ChannelCreateOptions, type ChannelEditOptions, ChannelManager, type ChannelResolvable, type ChannelRolePermissionOptions, ChannelType, Client, type ClientEvents, type ClientOptions, ClientUser, Collection, Collector, type CollectorOptions, DMChannel, EmbedBuilder, Emoji, EmojiManager, type EmojiParent, type FetchMembersOptions, GatewayManager, type Interaction, type Masquerade, Member, type MemberBanOptions, type MemberEditOptions, MemberManager, type MemberResolvable, Message, MessageCollector, type MessageCollectorOptions, type MessageFetchOptions, MessageManager, type MessageOptions, MessageReaction, type MessageResolvable, PermissionFlags, type PermissionResolvable, type PermissionString, Permissions, RESTManager, ReactionCollector, type ReactionCollectorOptions, type ReplyIntent, Role, type RoleCreateOptions, type RoleEditOptions, RoleManager, type RolePermissionOptions, type RoleResolvable, Server, ServerChannelManager, type ServerEditOptions, ServerManager, StoatAPIError, SweeperManager, type SweeperOptions, TextChannel, type TextEmbedData, UnknownChannel, User, type UserEditOptions, UserManager, UserPresence, type UserProfile, UserRelationship, type UserResolvable, type UserStatus };
2135
+ export { Attachment, AttachmentBuilder, type AttachmentMetadata, Base, BaseChannel, BitField, type BitFieldResolvable, type BotInformation, type CDNTag, type ChannelCreateOptions, type ChannelEditOptions, ChannelManager, type ChannelResolvable, type ChannelRolePermissionOptions, type ChannelType, Client, type ClientEvents, type ClientOptions, ClientUser, Collection, Collector, type CollectorOptions, DMChannel, EmbedBuilder, Emoji, EmojiManager, type EmojiParent, type FetchMembersOptions, GatewayManager, type Interaction, type Masquerade, Member, type MemberBanOptions, type MemberEditOptions, MemberManager, type MemberResolvable, Message, MessageCollector, type MessageCollectorOptions, type MessageFetchOptions, MessageManager, type MessageOptions, MessageReaction, type MessageResolvable, PermissionFlags, type PermissionResolvable, type PermissionString, Permissions, RESTManager, type RawDMChannel, type RawTextChannel, ReactionCollector, type ReactionCollectorOptions, type ReplyIntent, Role, type RoleCreateOptions, type RoleEditOptions, RoleManager, type RolePermissionOptions, type RoleResolvable, Server, ServerChannelManager, type ServerEditOptions, ServerManager, StoatAPIError, SweeperManager, type SweeperOptions, TextChannel, type TextEmbedData, UnknownChannel, User, type UserEditOptions, UserManager, type UserPresence, type UserProfile, type UserRelationShip, type UserResolvable, type UserStatus };