lunibee 0.1.4 → 0.1.6
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/README.md +12 -23
- package/dist/builders/components.d.ts +108 -0
- package/dist/builders/index.d.ts +1 -1
- package/dist/builders/index.js +178 -2
- package/dist/builders/index.js.map +3 -3
- package/dist/collection/index.d.ts +6 -0
- package/dist/collection/index.js +33 -2
- package/dist/collection/index.js.map +4 -4
- package/dist/core/events.d.ts +67 -3
- package/dist/core/index.d.ts +120 -90
- package/dist/core/index.js +816 -1021
- package/dist/core/index.js.map +20 -21
- package/dist/formatters/index.js.map +1 -1
- package/dist/index.d.ts +5 -4
- package/dist/index.js +2215 -1392
- package/dist/index.js.map +29 -26
- package/dist/managers/guild.d.ts +30 -0
- package/dist/managers/index.d.ts +56 -75
- package/dist/managers/index.js +339 -48
- package/dist/managers/index.js.map +16 -12
- package/dist/managers/message.d.ts +7 -12
- package/dist/managers/user.d.ts +20 -0
- package/dist/rest/index.d.ts +83 -1
- package/dist/rest/index.js +48 -8
- package/dist/rest/index.js.map +4 -4
- package/dist/rest/routes.d.ts +4 -1
- package/dist/sharding/index.js +4 -1
- package/dist/sharding/index.js.map +4 -4
- package/dist/structures/base.d.ts +99 -48
- package/dist/structures/embed.d.ts +65 -0
- package/dist/structures/index.d.ts +45 -25
- package/dist/structures/index.js +569 -36
- package/dist/structures/index.js.map +10 -8
- package/dist/structures/interactions.d.ts +72 -17
- package/dist/structures/resources.d.ts +9 -5
- package/dist/types/index.d.ts +530 -85
- package/dist/types/index.js +71 -1
- package/dist/types/index.js.map +3 -3
- package/dist/voice/index.js.map +1 -1
- package/dist/ws/index.js +4 -1
- package/dist/ws/index.js.map +4 -4
- package/package.json +15 -15
package/dist/core/index.d.ts
CHANGED
|
@@ -1,58 +1,11 @@
|
|
|
1
1
|
export { Permission, Permissions, PermissionFlagsBits, PermissionSet, PermissionsBitField, PermissionOverwriteType, type PermissionName, } from "./permissions.js";
|
|
2
|
+
export { ClientEvent, type ClientEventName, type ClientListener, } from "./events.js";
|
|
3
|
+
export { GatewayIntentBits, IntentBits, Intents, resolveGatewayIntents, type GatewayIntentResolvable, } from "@lunibee/types";
|
|
2
4
|
import { ApplicationCommandManager, ChannelManager, GuildManager, UserManager } from "@lunibee/managers";
|
|
3
5
|
import { REST } from "@lunibee/rest";
|
|
4
6
|
import { Channel, Message, Interaction, type InteractionClient } from "@lunibee/structures";
|
|
5
7
|
import { Gateway } from "@lunibee/ws";
|
|
6
|
-
import type { APIChannel, APIGuild, APIGuildMember, APIGuildRoleEvent, APIGuildRoleDeleteEvent, APIGuildBanEvent, APIGuildEmojisUpdateEvent, APIMessageDeleteBulkEvent, APIMessageDeleteEvent, APIMessageReactionEvent, APIThreadEvent, ClientOptions, ClientUser } from "@lunibee/types";
|
|
7
|
-
/** Events emitted by the Lunibee client. */
|
|
8
|
-
export interface ClientEvents {
|
|
9
|
-
/** Client is ready. */ ready: [ClientUser];
|
|
10
|
-
/** Raw gateway dispatch envelope. */ raw: [{
|
|
11
|
-
event: string;
|
|
12
|
-
data: unknown;
|
|
13
|
-
}];
|
|
14
|
-
/** Normalized client error. */ error: [Error];
|
|
15
|
-
/** Gateway opened. */ open: [];
|
|
16
|
-
/** Gateway closed. */ close: [{
|
|
17
|
-
code: number;
|
|
18
|
-
action: string;
|
|
19
|
-
}];
|
|
20
|
-
/** Message created. */ messageCreate: [Message];
|
|
21
|
-
/** Message updated. */ messageUpdate: [Message];
|
|
22
|
-
/** Message deleted. */ messageDelete: [APIMessageDeleteEvent];
|
|
23
|
-
/** Messages deleted in bulk. */ messageDeleteBulk: [
|
|
24
|
-
APIMessageDeleteBulkEvent
|
|
25
|
-
];
|
|
26
|
-
/** Guild became available. */ guildCreate: [APIGuild];
|
|
27
|
-
/** Guild updated. */ guildUpdate: [APIGuild];
|
|
28
|
-
/** Guild became unavailable or was removed. */ guildDelete: [
|
|
29
|
-
{
|
|
30
|
-
id: string;
|
|
31
|
-
unavailable?: boolean;
|
|
32
|
-
}
|
|
33
|
-
];
|
|
34
|
-
/** Channel created. */ channelCreate: [Channel];
|
|
35
|
-
/** Channel updated. */ channelUpdate: [Channel];
|
|
36
|
-
/** Channel deleted. */ channelDelete: [APIChannel];
|
|
37
|
-
/** Thread created. */ threadCreate: [Channel];
|
|
38
|
-
/** Thread updated. */ threadUpdate: [Channel];
|
|
39
|
-
/** Thread deleted. */ threadDelete: [APIThreadEvent];
|
|
40
|
-
/** Guild member added. */ guildMemberAdd: [APIGuildMember];
|
|
41
|
-
/** Guild member updated. */ guildMemberUpdate: [APIGuildMember];
|
|
42
|
-
/** Guild member removed. */ guildMemberRemove: [APIGuildMember];
|
|
43
|
-
/** Reaction added. */ messageReactionAdd: [APIMessageReactionEvent];
|
|
44
|
-
/** Reaction removed. */ messageReactionRemove: [APIMessageReactionEvent];
|
|
45
|
-
/** All reactions removed. */ messageReactionRemoveAll: [
|
|
46
|
-
APIMessageDeleteEvent
|
|
47
|
-
];
|
|
48
|
-
/** Interaction created. */ interactionCreate: [Interaction];
|
|
49
|
-
/** Guild role created. */ guildRoleCreate: [APIGuildRoleEvent];
|
|
50
|
-
/** Guild role updated. */ guildRoleUpdate: [APIGuildRoleEvent];
|
|
51
|
-
/** Guild role deleted. */ guildRoleDelete: [APIGuildRoleDeleteEvent];
|
|
52
|
-
/** Guild ban added. */ guildBanAdd: [APIGuildBanEvent];
|
|
53
|
-
/** Guild ban removed. */ guildBanRemove: [APIGuildBanEvent];
|
|
54
|
-
/** Guild emojis updated. */ guildEmojisUpdate: [APIGuildEmojisUpdateEvent];
|
|
55
|
-
}
|
|
8
|
+
import type { APIChannel, APIGuild, APIGuildMember, APIGuildRoleEvent, APIGuildRoleDeleteEvent, APIGuildBanEvent, APIGuildEmojisUpdateEvent, APIGuildStickersUpdateEvent, APIMessageDeleteBulkEvent, APIMessageDeleteEvent, APIMessageReactionEvent, APIMessageReactionRemoveEmojiEvent, APIThreadEvent, APIThreadListSync, APIThreadMembersUpdate, APIVoiceState, APIVoiceServerUpdate, APIPresenceUpdate, APITypingStart, APIInviteCreate, APIInviteDelete, APIWebhooksUpdate, APIAutoModerationRule, APIAutoModerationActionExecution, APIGuildScheduledEvent, APIGuildScheduledEventUserEvent, APIStageInstance, APIChannelPinsUpdate, APIGuildMembersChunk, APIMessagePollVoteEvent, APIThreadMember, ClientOptions, ClientUser } from "@lunibee/types";
|
|
56
9
|
/** Lifecycle state of a client. */
|
|
57
10
|
export type ClientState = "idle" | "connecting" | "ready" | "destroyed";
|
|
58
11
|
type Listener<T extends unknown[]> = (...args: T) => unknown;
|
|
@@ -61,51 +14,128 @@ declare class EventEmitter<Events extends {
|
|
|
61
14
|
[K in keyof Events]: unknown[];
|
|
62
15
|
}> {
|
|
63
16
|
#private;
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
17
|
+
on<K extends keyof Events>(event: K, listener: Listener<Events[K]>): this;
|
|
18
|
+
once<K extends keyof Events>(event: K, listener: Listener<Events[K]>): this;
|
|
19
|
+
off<K extends keyof Events>(event: K, listener: Listener<Events[K]>): this;
|
|
20
|
+
removeAllListeners<K extends keyof Events>(event?: K): this;
|
|
21
|
+
protected emit<K extends keyof Events>(event: K, ...args: Events[K]): boolean;
|
|
69
22
|
}
|
|
70
23
|
/** Main Lunibee Discord client. */
|
|
71
24
|
export declare class Client extends EventEmitter<ClientEvents> implements InteractionClient {
|
|
72
25
|
#private;
|
|
73
26
|
readonly options: ClientOptions;
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
27
|
+
readonly rest: REST;
|
|
28
|
+
readonly users: UserManager;
|
|
29
|
+
readonly guilds: GuildManager;
|
|
30
|
+
readonly channels: ChannelManager;
|
|
31
|
+
readonly application: {
|
|
32
|
+
commands: ApplicationCommandManager;
|
|
80
33
|
};
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
/** Time in milliseconds since the client became ready, or null if not ready. */
|
|
34
|
+
get ws(): Gateway;
|
|
35
|
+
get gateway(): Gateway;
|
|
36
|
+
user?: ClientUser;
|
|
37
|
+
readyAt?: Date;
|
|
38
|
+
state: ClientState;
|
|
87
39
|
get uptime(): number | null;
|
|
88
|
-
/**
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
/**
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
40
|
+
/** Whether the client is ready and connected. */
|
|
41
|
+
isReady(): boolean;
|
|
42
|
+
/** Sets the bot's presence / status. @param data Presence payload. @returns Whether the payload was sent. */
|
|
43
|
+
setPresence(data: import("@lunibee/types").GatewayPresence): boolean;
|
|
44
|
+
constructor(options: ClientOptions);
|
|
45
|
+
/**
|
|
46
|
+
* Convenience method to connect the bot to Discord.
|
|
47
|
+
* Optionally overrides the configured token.
|
|
48
|
+
* @param token Optional token override.
|
|
49
|
+
* @returns The token used to log in.
|
|
50
|
+
* @throws {TypeError} If the resulting token is empty.
|
|
51
|
+
*/
|
|
52
|
+
login(token?: string): Promise<string>;
|
|
53
|
+
/**
|
|
54
|
+
* Destroys the client, permanently closing the Gateway connection.
|
|
55
|
+
*/
|
|
56
|
+
destroy(): void;
|
|
57
|
+
postInteractionResponse(id: string, token: string, response: import("@lunibee/structures").InteractionResponse): Promise<unknown>;
|
|
58
|
+
editInteractionReply(token: string, data: Record<string, unknown>): Promise<unknown>;
|
|
59
|
+
deleteInteractionReply(token: string): Promise<void>;
|
|
60
|
+
followUpInteraction(token: string, data: Record<string, unknown>): Promise<unknown>;
|
|
101
61
|
}
|
|
102
|
-
export
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
62
|
+
export type ClientEvents = {
|
|
63
|
+
ready: [user: ClientUser];
|
|
64
|
+
raw: [data: {
|
|
65
|
+
event: string;
|
|
66
|
+
data: unknown;
|
|
67
|
+
}];
|
|
68
|
+
error: [error: Error];
|
|
69
|
+
open: [];
|
|
70
|
+
close: [data: {
|
|
71
|
+
code: number;
|
|
72
|
+
action: string;
|
|
73
|
+
}];
|
|
74
|
+
messageCreate: [message: Message];
|
|
75
|
+
messageUpdate: [message: Message];
|
|
76
|
+
messageDelete: [data: APIMessageDeleteEvent];
|
|
77
|
+
messageDeleteBulk: [data: APIMessageDeleteBulkEvent];
|
|
78
|
+
messageReactionAdd: [data: APIMessageReactionEvent];
|
|
79
|
+
messageReactionRemove: [data: APIMessageReactionEvent];
|
|
80
|
+
messageReactionRemoveAll: [data: APIMessageDeleteEvent];
|
|
81
|
+
messageReactionRemoveEmoji: [data: APIMessageReactionRemoveEmojiEvent];
|
|
82
|
+
messagePollVoteAdd: [data: APIMessagePollVoteEvent];
|
|
83
|
+
messagePollVoteRemove: [data: APIMessagePollVoteEvent];
|
|
84
|
+
guildCreate: [data: APIGuild];
|
|
85
|
+
guildUpdate: [data: APIGuild];
|
|
86
|
+
guildDelete: [data: {
|
|
87
|
+
id: string;
|
|
88
|
+
unavailable?: boolean;
|
|
89
|
+
}];
|
|
90
|
+
guildAvailable: [data: APIGuild & {
|
|
91
|
+
unavailable?: boolean;
|
|
92
|
+
}];
|
|
93
|
+
guildUnavailable: [data: {
|
|
94
|
+
id: string;
|
|
95
|
+
unavailable?: boolean;
|
|
96
|
+
}];
|
|
97
|
+
guildMemberAdd: [member: APIGuildMember];
|
|
98
|
+
guildMemberUpdate: [member: APIGuildMember];
|
|
99
|
+
guildMemberRemove: [member: APIGuildMember];
|
|
100
|
+
guildMembersChunk: [data: APIGuildMembersChunk];
|
|
101
|
+
guildBanAdd: [data: APIGuildBanEvent];
|
|
102
|
+
guildBanRemove: [data: APIGuildBanEvent];
|
|
103
|
+
guildRoleCreate: [data: APIGuildRoleEvent];
|
|
104
|
+
guildRoleUpdate: [data: APIGuildRoleEvent];
|
|
105
|
+
guildRoleDelete: [data: APIGuildRoleDeleteEvent];
|
|
106
|
+
guildEmojisUpdate: [data: APIGuildEmojisUpdateEvent];
|
|
107
|
+
guildStickersUpdate: [data: APIGuildStickersUpdateEvent];
|
|
108
|
+
guildIntegrationsUpdate: [data: {
|
|
109
|
+
guild_id: string;
|
|
110
|
+
}];
|
|
111
|
+
guildScheduledEventCreate: [data: APIGuildScheduledEvent];
|
|
112
|
+
guildScheduledEventUpdate: [data: APIGuildScheduledEvent];
|
|
113
|
+
guildScheduledEventDelete: [data: APIGuildScheduledEvent];
|
|
114
|
+
guildScheduledEventUserAdd: [data: APIGuildScheduledEventUserEvent];
|
|
115
|
+
guildScheduledEventUserRemove: [data: APIGuildScheduledEventUserEvent];
|
|
116
|
+
autoModerationRuleCreate: [data: APIAutoModerationRule];
|
|
117
|
+
autoModerationRuleUpdate: [data: APIAutoModerationRule];
|
|
118
|
+
autoModerationRuleDelete: [data: APIAutoModerationRule];
|
|
119
|
+
autoModerationActionExecution: [data: APIAutoModerationActionExecution];
|
|
120
|
+
channelCreate: [channel: Channel];
|
|
121
|
+
channelUpdate: [channel: Channel];
|
|
122
|
+
channelDelete: [data: APIChannel];
|
|
123
|
+
channelPinsUpdate: [data: APIChannelPinsUpdate];
|
|
124
|
+
threadCreate: [channel: Channel];
|
|
125
|
+
threadUpdate: [channel: Channel];
|
|
126
|
+
threadDelete: [data: APIThreadEvent];
|
|
127
|
+
threadListSync: [data: APIThreadListSync];
|
|
128
|
+
threadMembersUpdate: [data: APIThreadMembersUpdate];
|
|
129
|
+
threadMemberUpdate: [data: APIThreadMember];
|
|
130
|
+
stageInstanceCreate: [data: APIStageInstance];
|
|
131
|
+
stageInstanceUpdate: [data: APIStageInstance];
|
|
132
|
+
stageInstanceDelete: [data: APIStageInstance];
|
|
133
|
+
inviteCreate: [data: APIInviteCreate];
|
|
134
|
+
inviteDelete: [data: APIInviteDelete];
|
|
135
|
+
webhooksUpdate: [data: APIWebhooksUpdate];
|
|
136
|
+
voiceStateUpdate: [data: APIVoiceState];
|
|
137
|
+
voiceServerUpdate: [data: APIVoiceServerUpdate];
|
|
138
|
+
presenceUpdate: [data: APIPresenceUpdate];
|
|
139
|
+
typingStart: [data: APITypingStart];
|
|
140
|
+
interactionCreate: [interaction: Interaction];
|
|
141
|
+
};
|