@stoatx/client 0.1.1 → 0.2.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/LICENSE +21 -674
- package/README.md +3 -3
- package/dist/index.cjs +170 -29
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +131 -18
- package/dist/index.d.ts +131 -18
- package/dist/index.js +170 -29
- package/dist/index.js.map +1 -0
- package/package.json +4 -8
package/dist/index.d.cts
CHANGED
|
@@ -26,8 +26,8 @@ declare class StoatAPIError extends Error {
|
|
|
26
26
|
apiType: string;
|
|
27
27
|
location: string;
|
|
28
28
|
rawData: any;
|
|
29
|
-
method?: string;
|
|
30
|
-
path?: string;
|
|
29
|
+
method?: string | undefined;
|
|
30
|
+
path?: string | undefined;
|
|
31
31
|
constructor(statusCode: number, data: any, method?: string, path?: string);
|
|
32
32
|
}
|
|
33
33
|
declare class RESTManager {
|
|
@@ -217,9 +217,9 @@ declare class Collection<K, V> extends Map<K, V> {
|
|
|
217
217
|
* @template Holds The type of the Structure this manager holds
|
|
218
218
|
*/
|
|
219
219
|
declare abstract class BaseManager<K, Holds> {
|
|
220
|
-
client: Client;
|
|
221
220
|
cache: Collection<K, Holds>;
|
|
222
|
-
|
|
221
|
+
protected readonly client: Client;
|
|
222
|
+
protected constructor(client: Client, limit?: number);
|
|
223
223
|
/**
|
|
224
224
|
* Defines how to extract the unique ID from a raw API payload.
|
|
225
225
|
* @internal
|
|
@@ -264,8 +264,32 @@ declare class MemberManager extends BaseManager<string, Member> {
|
|
|
264
264
|
* @internal
|
|
265
265
|
*/
|
|
266
266
|
protected construct(data: any): Member;
|
|
267
|
+
/**
|
|
268
|
+
* Resolve a string or mention to Member
|
|
269
|
+
* @param member The MemberResolvable to resolve
|
|
270
|
+
* @returns The resolved Member or undefined if not found
|
|
271
|
+
*/
|
|
267
272
|
resolve(member: MemberResolvable): Member | undefined;
|
|
273
|
+
/**
|
|
274
|
+
* Resolve a Member to their ID string.
|
|
275
|
+
* @param member The MemberResolvable to resolve
|
|
276
|
+
* @returns The resolved ID string
|
|
277
|
+
* @throws {TypeError} If the provided resolvable is invalid
|
|
278
|
+
*/
|
|
268
279
|
resolveId(member: MemberResolvable): string;
|
|
280
|
+
/**
|
|
281
|
+
* Fetches a member from the server, or returns the cached version if available and not forced.
|
|
282
|
+
* @param member The MemberResolvable to fetch
|
|
283
|
+
* @param force Whether to bypass the cache and fetch fresh data from the API
|
|
284
|
+
* @returns A promise that resolves to the fetched Member
|
|
285
|
+
* @throws {Error} If the API request fails or the member is not found
|
|
286
|
+
* @example
|
|
287
|
+
* // Fetch a member by ID, using cache if available
|
|
288
|
+
* const member = await server.members.fetch("1234567890");
|
|
289
|
+
*
|
|
290
|
+
* // Fetch a member by mention, bypassing cache
|
|
291
|
+
* const member = await server.members.fetch("<@1234567890>", true);
|
|
292
|
+
*/
|
|
269
293
|
fetch(member: MemberResolvable, force?: boolean): Promise<Member>;
|
|
270
294
|
/**
|
|
271
295
|
* Fetches multiple members from the server.
|
|
@@ -284,24 +308,50 @@ declare class MemberManager extends BaseManager<string, Member> {
|
|
|
284
308
|
* Edits a member in the server.
|
|
285
309
|
* @param member The MemberResolvable to edit.
|
|
286
310
|
* @param options The fields to update (nickname, roles, timeout, etc.).
|
|
311
|
+
* @returns A promise that resolves to the updated Member.
|
|
312
|
+
* @throws {Error} If the API request fails or the member is not found.
|
|
313
|
+
* @example
|
|
314
|
+
* // Change a member's nickname and add a role
|
|
315
|
+
* const updatedMember = await server.members.edit("1234567890", {
|
|
316
|
+
* nickname: "New Nickname",
|
|
317
|
+
* roles: ["roleId1", "roleId2"],
|
|
318
|
+
* });
|
|
287
319
|
*/
|
|
288
320
|
edit(member: MemberResolvable, options: MemberEditOptions): Promise<Member>;
|
|
289
321
|
/**
|
|
290
322
|
* Kicks a member from the server.
|
|
291
323
|
* @param member The MemberResolvable to kick.
|
|
324
|
+
* @example
|
|
325
|
+
* // Kick a member by ID
|
|
326
|
+
* await server.members.kick("1234567890");
|
|
292
327
|
*/
|
|
293
328
|
kick(member: MemberResolvable): Promise<void>;
|
|
294
329
|
/**
|
|
295
330
|
* Bans a member from the server.
|
|
296
331
|
* @param member The MemberResolvable to ban.
|
|
297
332
|
* @param options The ban options
|
|
333
|
+
* @example
|
|
334
|
+
* // Ban a member by ID
|
|
335
|
+
* await server.members.ban("1234567890", { reason: "Spamming", deleteMessageSeconds: 3600 });
|
|
298
336
|
*/
|
|
299
337
|
ban(member: MemberResolvable, options?: MemberBanOptions): Promise<void>;
|
|
300
338
|
/**
|
|
301
339
|
* Unbans a user from the server
|
|
302
340
|
* @param member The MemberResolvable to unban
|
|
341
|
+
* @example
|
|
342
|
+
* // Unban a member by ID
|
|
343
|
+
* await server.members.unban("1234567890");
|
|
303
344
|
*/
|
|
304
345
|
unban(member: MemberResolvable): Promise<void>;
|
|
346
|
+
/**
|
|
347
|
+
* Timeouts a member in the server for a specified duration.
|
|
348
|
+
* @param member The MemberResolvable to timeout
|
|
349
|
+
* @param duration The duration of the timeout in milliseconds
|
|
350
|
+
* @example
|
|
351
|
+
* // Timeout a member for 10 minutes
|
|
352
|
+
* await server.members.setTimeout("1234567890", 10 * 60 * 1000);
|
|
353
|
+
*/
|
|
354
|
+
setTimeout(member: MemberResolvable, duration: number): Promise<void>;
|
|
305
355
|
[util.inspect.custom](): Collection<string, Member>;
|
|
306
356
|
}
|
|
307
357
|
|
|
@@ -356,7 +406,7 @@ declare class Permissions {
|
|
|
356
406
|
|
|
357
407
|
declare class DMChannel extends BaseChannel {
|
|
358
408
|
active: boolean;
|
|
359
|
-
recipients:
|
|
409
|
+
recipients: string[];
|
|
360
410
|
lastMessageId: string | null;
|
|
361
411
|
constructor(client: any, data: any);
|
|
362
412
|
_patch(data: any): void;
|
|
@@ -860,7 +910,7 @@ declare class RoleManager extends BaseManager<string, Role> {
|
|
|
860
910
|
* console.log("Role deleted successfully.");
|
|
861
911
|
*
|
|
862
912
|
* // Delete a role using a Role object
|
|
863
|
-
* const role = await server.roles.fetch("
|
|
913
|
+
* const role = await server.roles.fetch("01JE2MM759J5D7CHJF084R7");
|
|
864
914
|
* await server.roles.delete(role);
|
|
865
915
|
* console.log("Role deleted successfully.");
|
|
866
916
|
*
|
|
@@ -1057,11 +1107,17 @@ declare class MemberRoleManager {
|
|
|
1057
1107
|
set(roles: RoleResolvable[]): Promise<Member>;
|
|
1058
1108
|
}
|
|
1059
1109
|
|
|
1110
|
+
/**
|
|
1111
|
+
* Represents a member of a server on Stoat
|
|
1112
|
+
*
|
|
1113
|
+
* @extends {Base}
|
|
1114
|
+
*/
|
|
1060
1115
|
declare class Member extends Base {
|
|
1061
1116
|
serverId: string;
|
|
1062
1117
|
nickname: string | null;
|
|
1063
|
-
avatar:
|
|
1064
|
-
|
|
1118
|
+
avatar: Attachment | null;
|
|
1119
|
+
/** @internal */
|
|
1120
|
+
private _roles;
|
|
1065
1121
|
joinedAt: Date;
|
|
1066
1122
|
timeout: Date | null;
|
|
1067
1123
|
canPublish: boolean;
|
|
@@ -1069,30 +1125,63 @@ declare class Member extends Base {
|
|
|
1069
1125
|
roles: MemberRoleManager;
|
|
1070
1126
|
constructor(client: Client, data: any);
|
|
1071
1127
|
_patch(data: any): void;
|
|
1128
|
+
/**
|
|
1129
|
+
* Get member role IDs
|
|
1130
|
+
*/
|
|
1131
|
+
get roleIds(): string[];
|
|
1072
1132
|
/** Gets the global User object for this member */
|
|
1073
1133
|
get user(): User | undefined;
|
|
1074
1134
|
/** Gets the Server object this member belongs to */
|
|
1075
1135
|
get server(): Server | undefined;
|
|
1076
|
-
/** Resolves the array of role strings into actual Role objects */
|
|
1077
|
-
get roleObjects(): Role[];
|
|
1078
1136
|
/** Calculates the member's total permissions using BigInt */
|
|
1079
1137
|
get permissions(): bigint;
|
|
1138
|
+
/** Get avatar URL for this member, or null if they don't have one.
|
|
1139
|
+
* @example
|
|
1140
|
+
* // Get a member's avatar URL
|
|
1141
|
+
* const avatarURL = member.avatarURL;
|
|
1142
|
+
* console.log(avatarURL); // https://cdn.stoat.chat/attachments/avatars/1234567890/avatar.png
|
|
1143
|
+
*/
|
|
1144
|
+
get avatarURL(): string | null;
|
|
1145
|
+
/**
|
|
1146
|
+
* Ban this member from the server.
|
|
1147
|
+
* @param options The options for this ban
|
|
1148
|
+
* @example
|
|
1149
|
+
* // Ban a member with a reason and delete their messages from the last hour
|
|
1150
|
+
* await member.ban({ reason: "Spamming", deleteMessageSeconds: 3600 });
|
|
1151
|
+
*/
|
|
1152
|
+
ban(options?: MemberBanOptions): Promise<void>;
|
|
1153
|
+
/**
|
|
1154
|
+
* Creates a DM channel between the client's user and this member.
|
|
1155
|
+
* @param force If true, forces the creation of a new DM channel even if one already exists.
|
|
1156
|
+
* @returns A promise that resolves to the created DMChannel object.
|
|
1157
|
+
* @throws {Error} If the API request fails.
|
|
1158
|
+
* @example
|
|
1159
|
+
* // Create a DM with this member
|
|
1160
|
+
* const dm = await member.createDM();
|
|
1161
|
+
* console.log(`DM channel ID: ${dm.id}`);
|
|
1162
|
+
*/
|
|
1163
|
+
createDM(force?: boolean): Promise<void>;
|
|
1164
|
+
/**
|
|
1165
|
+
* Timeout this member for a specified duration.
|
|
1166
|
+
* @param duration The duration of the timeout in milliseconds.
|
|
1167
|
+
* @example
|
|
1168
|
+
* // Timeout a member for 10 minutes (600,000 milliseconds)
|
|
1169
|
+
* await member.setTimeout(600000);
|
|
1170
|
+
*/
|
|
1171
|
+
setTimeout(duration: number): Promise<void>;
|
|
1080
1172
|
/** Checks if the member has a specific permission */
|
|
1081
1173
|
hasPermission(permission: PermissionResolvable): boolean;
|
|
1082
1174
|
/**
|
|
1083
|
-
*
|
|
1175
|
+
* Edit this member.
|
|
1176
|
+
* @param options The options to edit the member with (nickname, roles, timeout, etc.)
|
|
1177
|
+
* @returns A promise that resolves to the updated Member.
|
|
1084
1178
|
*/
|
|
1085
1179
|
edit(options: MemberEditOptions): Promise<this>;
|
|
1086
1180
|
/**
|
|
1087
|
-
*
|
|
1181
|
+
* Kick this member from the server.
|
|
1088
1182
|
*/
|
|
1089
1183
|
kick(): Promise<void>;
|
|
1090
|
-
/**
|
|
1091
|
-
* Bans this member from the server.
|
|
1092
|
-
* @param options The options for this ban
|
|
1093
|
-
*/
|
|
1094
|
-
ban(options?: MemberBanOptions): Promise<void>;
|
|
1095
|
-
unban(): Promise<void>;
|
|
1184
|
+
/** @internal */
|
|
1096
1185
|
[util.inspect.custom](depth: number, options: util.InspectOptions, inspect: typeof util.inspect): string;
|
|
1097
1186
|
}
|
|
1098
1187
|
|
|
@@ -1267,6 +1356,30 @@ declare class UserManager extends BaseManager<string, User> {
|
|
|
1267
1356
|
* await client.users.editMe({ avatar: null, displayName: null });
|
|
1268
1357
|
*/
|
|
1269
1358
|
editMe(options: UserEditOptions): Promise<User>;
|
|
1359
|
+
/**
|
|
1360
|
+
* The DM between the client's user and a user
|
|
1361
|
+
*
|
|
1362
|
+
* @param {string} userId The user id
|
|
1363
|
+
* @returns {?DMChannel}
|
|
1364
|
+
* @private
|
|
1365
|
+
*/
|
|
1366
|
+
dmChannel(userId: string): DMChannel | null;
|
|
1367
|
+
/**
|
|
1368
|
+
* Creates a DM channel between the client's user and another user.
|
|
1369
|
+
* @param user The UserResolvable to create a DM with.
|
|
1370
|
+
* @param options Additional options for DM creation.
|
|
1371
|
+
* @param options.force If true, forces the creation of a new DM channel even if one already exists.
|
|
1372
|
+
* @returns A promise that resolves to the created DMChannel object.
|
|
1373
|
+
* @throws {TypeError} If an invalid UserResolvable is provided.
|
|
1374
|
+
* @throws {Error} If the API request fails.
|
|
1375
|
+
* @example
|
|
1376
|
+
* // Create a DM with a user by ID
|
|
1377
|
+
* const dm = await client.users.createDM("1234567890");
|
|
1378
|
+
* console.log(`DM channel ID: ${dm.id}`);
|
|
1379
|
+
*/
|
|
1380
|
+
createDM(user: UserResolvable, { force }?: {
|
|
1381
|
+
force?: boolean | undefined;
|
|
1382
|
+
}): Promise<DMChannel>;
|
|
1270
1383
|
}
|
|
1271
1384
|
|
|
1272
1385
|
/**
|
package/dist/index.d.ts
CHANGED
|
@@ -26,8 +26,8 @@ declare class StoatAPIError extends Error {
|
|
|
26
26
|
apiType: string;
|
|
27
27
|
location: string;
|
|
28
28
|
rawData: any;
|
|
29
|
-
method?: string;
|
|
30
|
-
path?: string;
|
|
29
|
+
method?: string | undefined;
|
|
30
|
+
path?: string | undefined;
|
|
31
31
|
constructor(statusCode: number, data: any, method?: string, path?: string);
|
|
32
32
|
}
|
|
33
33
|
declare class RESTManager {
|
|
@@ -217,9 +217,9 @@ declare class Collection<K, V> extends Map<K, V> {
|
|
|
217
217
|
* @template Holds The type of the Structure this manager holds
|
|
218
218
|
*/
|
|
219
219
|
declare abstract class BaseManager<K, Holds> {
|
|
220
|
-
client: Client;
|
|
221
220
|
cache: Collection<K, Holds>;
|
|
222
|
-
|
|
221
|
+
protected readonly client: Client;
|
|
222
|
+
protected constructor(client: Client, limit?: number);
|
|
223
223
|
/**
|
|
224
224
|
* Defines how to extract the unique ID from a raw API payload.
|
|
225
225
|
* @internal
|
|
@@ -264,8 +264,32 @@ declare class MemberManager extends BaseManager<string, Member> {
|
|
|
264
264
|
* @internal
|
|
265
265
|
*/
|
|
266
266
|
protected construct(data: any): Member;
|
|
267
|
+
/**
|
|
268
|
+
* Resolve a string or mention to Member
|
|
269
|
+
* @param member The MemberResolvable to resolve
|
|
270
|
+
* @returns The resolved Member or undefined if not found
|
|
271
|
+
*/
|
|
267
272
|
resolve(member: MemberResolvable): Member | undefined;
|
|
273
|
+
/**
|
|
274
|
+
* Resolve a Member to their ID string.
|
|
275
|
+
* @param member The MemberResolvable to resolve
|
|
276
|
+
* @returns The resolved ID string
|
|
277
|
+
* @throws {TypeError} If the provided resolvable is invalid
|
|
278
|
+
*/
|
|
268
279
|
resolveId(member: MemberResolvable): string;
|
|
280
|
+
/**
|
|
281
|
+
* Fetches a member from the server, or returns the cached version if available and not forced.
|
|
282
|
+
* @param member The MemberResolvable to fetch
|
|
283
|
+
* @param force Whether to bypass the cache and fetch fresh data from the API
|
|
284
|
+
* @returns A promise that resolves to the fetched Member
|
|
285
|
+
* @throws {Error} If the API request fails or the member is not found
|
|
286
|
+
* @example
|
|
287
|
+
* // Fetch a member by ID, using cache if available
|
|
288
|
+
* const member = await server.members.fetch("1234567890");
|
|
289
|
+
*
|
|
290
|
+
* // Fetch a member by mention, bypassing cache
|
|
291
|
+
* const member = await server.members.fetch("<@1234567890>", true);
|
|
292
|
+
*/
|
|
269
293
|
fetch(member: MemberResolvable, force?: boolean): Promise<Member>;
|
|
270
294
|
/**
|
|
271
295
|
* Fetches multiple members from the server.
|
|
@@ -284,24 +308,50 @@ declare class MemberManager extends BaseManager<string, Member> {
|
|
|
284
308
|
* Edits a member in the server.
|
|
285
309
|
* @param member The MemberResolvable to edit.
|
|
286
310
|
* @param options The fields to update (nickname, roles, timeout, etc.).
|
|
311
|
+
* @returns A promise that resolves to the updated Member.
|
|
312
|
+
* @throws {Error} If the API request fails or the member is not found.
|
|
313
|
+
* @example
|
|
314
|
+
* // Change a member's nickname and add a role
|
|
315
|
+
* const updatedMember = await server.members.edit("1234567890", {
|
|
316
|
+
* nickname: "New Nickname",
|
|
317
|
+
* roles: ["roleId1", "roleId2"],
|
|
318
|
+
* });
|
|
287
319
|
*/
|
|
288
320
|
edit(member: MemberResolvable, options: MemberEditOptions): Promise<Member>;
|
|
289
321
|
/**
|
|
290
322
|
* Kicks a member from the server.
|
|
291
323
|
* @param member The MemberResolvable to kick.
|
|
324
|
+
* @example
|
|
325
|
+
* // Kick a member by ID
|
|
326
|
+
* await server.members.kick("1234567890");
|
|
292
327
|
*/
|
|
293
328
|
kick(member: MemberResolvable): Promise<void>;
|
|
294
329
|
/**
|
|
295
330
|
* Bans a member from the server.
|
|
296
331
|
* @param member The MemberResolvable to ban.
|
|
297
332
|
* @param options The ban options
|
|
333
|
+
* @example
|
|
334
|
+
* // Ban a member by ID
|
|
335
|
+
* await server.members.ban("1234567890", { reason: "Spamming", deleteMessageSeconds: 3600 });
|
|
298
336
|
*/
|
|
299
337
|
ban(member: MemberResolvable, options?: MemberBanOptions): Promise<void>;
|
|
300
338
|
/**
|
|
301
339
|
* Unbans a user from the server
|
|
302
340
|
* @param member The MemberResolvable to unban
|
|
341
|
+
* @example
|
|
342
|
+
* // Unban a member by ID
|
|
343
|
+
* await server.members.unban("1234567890");
|
|
303
344
|
*/
|
|
304
345
|
unban(member: MemberResolvable): Promise<void>;
|
|
346
|
+
/**
|
|
347
|
+
* Timeouts a member in the server for a specified duration.
|
|
348
|
+
* @param member The MemberResolvable to timeout
|
|
349
|
+
* @param duration The duration of the timeout in milliseconds
|
|
350
|
+
* @example
|
|
351
|
+
* // Timeout a member for 10 minutes
|
|
352
|
+
* await server.members.setTimeout("1234567890", 10 * 60 * 1000);
|
|
353
|
+
*/
|
|
354
|
+
setTimeout(member: MemberResolvable, duration: number): Promise<void>;
|
|
305
355
|
[util.inspect.custom](): Collection<string, Member>;
|
|
306
356
|
}
|
|
307
357
|
|
|
@@ -356,7 +406,7 @@ declare class Permissions {
|
|
|
356
406
|
|
|
357
407
|
declare class DMChannel extends BaseChannel {
|
|
358
408
|
active: boolean;
|
|
359
|
-
recipients:
|
|
409
|
+
recipients: string[];
|
|
360
410
|
lastMessageId: string | null;
|
|
361
411
|
constructor(client: any, data: any);
|
|
362
412
|
_patch(data: any): void;
|
|
@@ -860,7 +910,7 @@ declare class RoleManager extends BaseManager<string, Role> {
|
|
|
860
910
|
* console.log("Role deleted successfully.");
|
|
861
911
|
*
|
|
862
912
|
* // Delete a role using a Role object
|
|
863
|
-
* const role = await server.roles.fetch("
|
|
913
|
+
* const role = await server.roles.fetch("01JE2MM759J5D7CHJF084R7");
|
|
864
914
|
* await server.roles.delete(role);
|
|
865
915
|
* console.log("Role deleted successfully.");
|
|
866
916
|
*
|
|
@@ -1057,11 +1107,17 @@ declare class MemberRoleManager {
|
|
|
1057
1107
|
set(roles: RoleResolvable[]): Promise<Member>;
|
|
1058
1108
|
}
|
|
1059
1109
|
|
|
1110
|
+
/**
|
|
1111
|
+
* Represents a member of a server on Stoat
|
|
1112
|
+
*
|
|
1113
|
+
* @extends {Base}
|
|
1114
|
+
*/
|
|
1060
1115
|
declare class Member extends Base {
|
|
1061
1116
|
serverId: string;
|
|
1062
1117
|
nickname: string | null;
|
|
1063
|
-
avatar:
|
|
1064
|
-
|
|
1118
|
+
avatar: Attachment | null;
|
|
1119
|
+
/** @internal */
|
|
1120
|
+
private _roles;
|
|
1065
1121
|
joinedAt: Date;
|
|
1066
1122
|
timeout: Date | null;
|
|
1067
1123
|
canPublish: boolean;
|
|
@@ -1069,30 +1125,63 @@ declare class Member extends Base {
|
|
|
1069
1125
|
roles: MemberRoleManager;
|
|
1070
1126
|
constructor(client: Client, data: any);
|
|
1071
1127
|
_patch(data: any): void;
|
|
1128
|
+
/**
|
|
1129
|
+
* Get member role IDs
|
|
1130
|
+
*/
|
|
1131
|
+
get roleIds(): string[];
|
|
1072
1132
|
/** Gets the global User object for this member */
|
|
1073
1133
|
get user(): User | undefined;
|
|
1074
1134
|
/** Gets the Server object this member belongs to */
|
|
1075
1135
|
get server(): Server | undefined;
|
|
1076
|
-
/** Resolves the array of role strings into actual Role objects */
|
|
1077
|
-
get roleObjects(): Role[];
|
|
1078
1136
|
/** Calculates the member's total permissions using BigInt */
|
|
1079
1137
|
get permissions(): bigint;
|
|
1138
|
+
/** Get avatar URL for this member, or null if they don't have one.
|
|
1139
|
+
* @example
|
|
1140
|
+
* // Get a member's avatar URL
|
|
1141
|
+
* const avatarURL = member.avatarURL;
|
|
1142
|
+
* console.log(avatarURL); // https://cdn.stoat.chat/attachments/avatars/1234567890/avatar.png
|
|
1143
|
+
*/
|
|
1144
|
+
get avatarURL(): string | null;
|
|
1145
|
+
/**
|
|
1146
|
+
* Ban this member from the server.
|
|
1147
|
+
* @param options The options for this ban
|
|
1148
|
+
* @example
|
|
1149
|
+
* // Ban a member with a reason and delete their messages from the last hour
|
|
1150
|
+
* await member.ban({ reason: "Spamming", deleteMessageSeconds: 3600 });
|
|
1151
|
+
*/
|
|
1152
|
+
ban(options?: MemberBanOptions): Promise<void>;
|
|
1153
|
+
/**
|
|
1154
|
+
* Creates a DM channel between the client's user and this member.
|
|
1155
|
+
* @param force If true, forces the creation of a new DM channel even if one already exists.
|
|
1156
|
+
* @returns A promise that resolves to the created DMChannel object.
|
|
1157
|
+
* @throws {Error} If the API request fails.
|
|
1158
|
+
* @example
|
|
1159
|
+
* // Create a DM with this member
|
|
1160
|
+
* const dm = await member.createDM();
|
|
1161
|
+
* console.log(`DM channel ID: ${dm.id}`);
|
|
1162
|
+
*/
|
|
1163
|
+
createDM(force?: boolean): Promise<void>;
|
|
1164
|
+
/**
|
|
1165
|
+
* Timeout this member for a specified duration.
|
|
1166
|
+
* @param duration The duration of the timeout in milliseconds.
|
|
1167
|
+
* @example
|
|
1168
|
+
* // Timeout a member for 10 minutes (600,000 milliseconds)
|
|
1169
|
+
* await member.setTimeout(600000);
|
|
1170
|
+
*/
|
|
1171
|
+
setTimeout(duration: number): Promise<void>;
|
|
1080
1172
|
/** Checks if the member has a specific permission */
|
|
1081
1173
|
hasPermission(permission: PermissionResolvable): boolean;
|
|
1082
1174
|
/**
|
|
1083
|
-
*
|
|
1175
|
+
* Edit this member.
|
|
1176
|
+
* @param options The options to edit the member with (nickname, roles, timeout, etc.)
|
|
1177
|
+
* @returns A promise that resolves to the updated Member.
|
|
1084
1178
|
*/
|
|
1085
1179
|
edit(options: MemberEditOptions): Promise<this>;
|
|
1086
1180
|
/**
|
|
1087
|
-
*
|
|
1181
|
+
* Kick this member from the server.
|
|
1088
1182
|
*/
|
|
1089
1183
|
kick(): Promise<void>;
|
|
1090
|
-
/**
|
|
1091
|
-
* Bans this member from the server.
|
|
1092
|
-
* @param options The options for this ban
|
|
1093
|
-
*/
|
|
1094
|
-
ban(options?: MemberBanOptions): Promise<void>;
|
|
1095
|
-
unban(): Promise<void>;
|
|
1184
|
+
/** @internal */
|
|
1096
1185
|
[util.inspect.custom](depth: number, options: util.InspectOptions, inspect: typeof util.inspect): string;
|
|
1097
1186
|
}
|
|
1098
1187
|
|
|
@@ -1267,6 +1356,30 @@ declare class UserManager extends BaseManager<string, User> {
|
|
|
1267
1356
|
* await client.users.editMe({ avatar: null, displayName: null });
|
|
1268
1357
|
*/
|
|
1269
1358
|
editMe(options: UserEditOptions): Promise<User>;
|
|
1359
|
+
/**
|
|
1360
|
+
* The DM between the client's user and a user
|
|
1361
|
+
*
|
|
1362
|
+
* @param {string} userId The user id
|
|
1363
|
+
* @returns {?DMChannel}
|
|
1364
|
+
* @private
|
|
1365
|
+
*/
|
|
1366
|
+
dmChannel(userId: string): DMChannel | null;
|
|
1367
|
+
/**
|
|
1368
|
+
* Creates a DM channel between the client's user and another user.
|
|
1369
|
+
* @param user The UserResolvable to create a DM with.
|
|
1370
|
+
* @param options Additional options for DM creation.
|
|
1371
|
+
* @param options.force If true, forces the creation of a new DM channel even if one already exists.
|
|
1372
|
+
* @returns A promise that resolves to the created DMChannel object.
|
|
1373
|
+
* @throws {TypeError} If an invalid UserResolvable is provided.
|
|
1374
|
+
* @throws {Error} If the API request fails.
|
|
1375
|
+
* @example
|
|
1376
|
+
* // Create a DM with a user by ID
|
|
1377
|
+
* const dm = await client.users.createDM("1234567890");
|
|
1378
|
+
* console.log(`DM channel ID: ${dm.id}`);
|
|
1379
|
+
*/
|
|
1380
|
+
createDM(user: UserResolvable, { force }?: {
|
|
1381
|
+
force?: boolean | undefined;
|
|
1382
|
+
}): Promise<DMChannel>;
|
|
1270
1383
|
}
|
|
1271
1384
|
|
|
1272
1385
|
/**
|