bakit 2.2.4 → 3.0.1
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.cjs +1 -0
- package/dist/index.d.cts +282 -0
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +282 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +2 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +20 -13
- package/dist/cli.js +0 -79
- package/dist/index.d.ts +0 -148
- package/dist/index.js +0 -364
package/dist/index.cjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let c=require(`@bakit/gateway`),l=require(`@bakit/rest`),u=require(`@bakit/service`),d=require(`@bakit/utils`),f=require(`node:events`);f=s(f);let p=require(`@discordjs/collection`),m=require(`discord-api-types/v10`);m=s(m);let h=require(`tiny-mixin`);var g=class{constructor(e){Object.defineProperty(this,`client`,{value:e,enumerable:!1,writable:!1})}toJSON(){return{}}},_=class extends g{constructor(e,t){super(e),this.data=t}get id(){return this.data.id}get username(){return this.data.username}get discriminator(){return this.data.discriminator}get globalName(){return this.data.global_name}get tag(){return this.discriminator!==`0`&&this.discriminator!==`0000`?`${this.username}#${this.discriminator}`:this.username}get displayName(){return this.globalName??this.tag}get avatar(){return this.data.avatar??void 0}get bot(){return!!this.data.bot}get system(){return!!this.data.system}get mfaEnabled(){return this.data.mfa_enabled}get locale(){return this.data.locale}get verified(){return this.data.verified}get email(){return this.data.email}get flags(){return this.data.flags}get premiumType(){return this.data.premium_type}get publicFlags(){return this.data.public_flags}get banner(){return this.data.banner}get accentColor(){return this.data.accent_color??void 0}get createdAt(){return(0,d.getSnowflakeDate)(this.id)}get createdTimestamp(){return this.createdAt.getTime()}get hexAccentColor(){return this.accentColor===void 0?void 0:`#${this.accentColor.toString(16).padStart(6,`0`)}`}get defaultAvatarURL(){return`https://cdn.discordapp.com/embed/avatars/${this.discriminator!==`0`&&this.discriminator!==`0000`?BigInt(this.discriminator)%5n:(BigInt(this.id)>>22n)%6n}.png`}getAvatarURL(e){if(!this.avatar)return;let t=this.avatar.startsWith(`a_`),n=e?.extension??(t?`gif`:`png`),r=e?.size?`?size=${e.size}`:``;return`https://cdn.discordapp.com/avatars/${this.id}/${this.avatar}.${n}${r}`}getDisplayAvatarURL(e){return this.getAvatarURL(e)??this.defaultAvatarURL}equals(e){return typeof e==`string`?e===this.id:e.id===this.id&&e.username===this.username&&e.discriminator===this.discriminator&&e.bot===this.bot&&e.createdTimestamp===this.createdTimestamp}toJSON(){return this.data}toString(){return`<@${this.id}>`}},v=class extends g{cachedAuthor;constructor(e,t){super(e),this.data=t}get partial(){return typeof this.data.content!=`string`||typeof this.data.author!=`object`}get content(){return this.data.content}get id(){return this.data.id}get channelId(){return this.data.channel_id}get channel(){return this.guild.channels.get(this.channelId)}get guildId(){return`guild_id`in this.data?this.data.guild_id:void 0}get guild(){return this.guildId?this.client.guilds.get(this.guildId):void 0}get author(){return this.cachedAuthor??=new _(this.client,this.data.author),this.cachedAuthor}get createdAt(){return new Date(this.data.timestamp)}get editedAt(){return this.data.edited_timestamp?new Date(this.data.edited_timestamp):void 0}get createdTimestamp(){return this.createdAt.getTime()}get editedTimestamp(){return this.editedAt?.getTime()}get url(){return`https://discord.com/channels/${this.guildId??`@me`}/${this.channelId}/${this.id}`}async fetch(){let e=await this.client.helper.fetchMessage(this.channelId,this.id);return this.data=e.data,this.cachedAuthor=e.cachedAuthor,this}async reply(e){return this.client.helper.replyMessage(this.channelId,this.id,e)}async sendToChannel(e){return this.client.helper.createMessage(this.channelId,e)}toJSON(){return this.data}toString(){return this.data.content}},y=class extends g{constructor(e,t){super(e),this.data=t}get id(){return this.data.id}get type(){return this.data.type}toString(){return`<#${this.id}>`}toJSON(){return this.data}isTextBased(){return`send`in this}isVoiceBased(){return`join`in this}inGuild(){return`guild_id`in this.data}_patch(e){this.data={...this.data,...e}}};const b=(0,h.createMixin)(e=>{class t extends e{send(e){return this.client.helper.createMessage(this.id,e)}}return t}),x=(0,h.createMixin)(e=>{class t extends e{}return t}),S=(0,h.createMixin)(e=>{class t extends e{get guildId(){if(!this.data.guild_id)throw Error(`This channel is not a guild channel`);return this.data.guild_id}get guild(){return this.client.guilds.get(this.guildId)}}return t});var C=class extends (0,h.applyMixins)(y,[S,b]){},w=class extends (0,h.applyMixins)(y,[S,b,x]){};function T(e,t){switch(t.type){case m.ChannelType.GuildText:return new C(e,t);case m.ChannelType.GuildVoice:return new w(e,t);default:return null}}var E=class extends g{cachedChannels;constructor(e,t){super(e),this.data=t}get id(){return this.data.id}get name(){return this.data.name}get icon(){return this.data.icon}get banner(){return this.data.banner}get owner(){return this.data.owner_id}get mfaLevel(){return this.data.mfa_level}get verificationLevel(){return this.data.verification_level}get channels(){if(!this.cachedChannels&&(this.cachedChannels=new p.Collection,`channels`in this.data))for(let e of this.data.channels){let t=T(this.client,e);t&&this.cachedChannels.set(t.id,t)}return this.cachedChannels}_patch(e){this.data={...this.data,...e}}},D=class e{constructor(e){Object.defineProperty(this,`client`,{value:e,enumerable:!1,writable:!1})}async fetchMessage(e,t){let n=await this.client.rest.get(m.Routes.channelMessage(e,t));return new v(this.client,n)}async deleteMessage(e,t){return this.client.rest.delete(m.Routes.channelMessage(e,t))}async createMessage(t,n){return this.client.rest.post(m.Routes.channelMessages(t),{body:e.toAPICreateMessagePayload(n)})}async replyMessage(e,t,n){return this.createMessage(e,{...n,messageReference:{channel_id:e,message_id:t}})}async fetchGuild(e){let t=await this.client.rest.get(m.Routes.guild(e));return new E(this.client,t)}static toAPICreateMessagePayload(e){return{content:e.content,tts:e.tts,embeds:e.embeds,allowed_mentions:e.allowedMentions,message_reference:e.messageReference,flags:e.flags}}};let O=function(e){return e[e.Message=0]=`Message`,e[e.User=1]=`User`,e}({});var k=class e{value;constructor(t){this.value=e.resolve(t)}static resolve(e){return Array.isArray(e)?e.reduce((e,t)=>e|BigInt(t),0n):BigInt(e)}has(e){return(this.value&BigInt(e))!==0n}toBigInt(){return this.value}toNumber(){return Number(this.value)}toJSON(){return this.value.toString()}toString(){return this.value.toString()}},A=class extends f.default{options;shards;rest;helper;guilds=new p.Collection;#e;#t=!1;constructor(e,t){super();let n=e.intents instanceof k?e.intents:new k(e.intents),r={shardsPerCluster:e.sharding?.shardsPerCluster??1,totalShards:e.sharding?.totalShards??1};this.options={token:e.token,intents:n,sharding:r,partials:new Set(e.partials??[])},this.rest=t??new l.REST({token:e.token}),this.shards=new c.ShardingManager({...this.options.sharding,token:this.options.token,intents:this.options.intents.toBigInt()},t),this.helper=new D(this),this.#n()}get user(){return this.#e}async login(){if(this.#e||this.shards.ready||this.shards.clusters.size>0)throw Error(`Cannot login twice`);return await this.shards.spawn(),new Promise((e,t)=>{let n=()=>{this.removeListener(`ready`,r),this.removeListener(`error`,i)},r=()=>{n(),e()},i=e=>{n(),t(e)};this.once(`ready`,r),this.once(`error`,i)})}#n(){this.shards.on(`dispatch`,(e,t,n)=>this.#r(t,n)),this.shards.on(`raw`,(e,t,n)=>this.emit(`raw`,t,n)),this.shards.once(`ready`,()=>this.#i())}async#r(e,t){switch(this.emit(`dispatch`,e,t),t.t){case m.GatewayDispatchEvents.Ready:this.#e??=new _(this,t.d.user),this.#i();break;case m.GatewayDispatchEvents.MessageCreate:{let e=new v(this,t.d);if(e.partial&&!this.options.partials.has(O.Message))return;this.emit(`messageCreate`,e);break}case m.GatewayDispatchEvents.MessageUpdate:{let e=new v(this,t.d);if(e.partial&&!this.options.partials.has(O.Message))return;this.emit(`messageUpdate`,e);break}case m.GatewayDispatchEvents.MessageDelete:this.emit(`messageDelete`,{id:t.d.id,channelId:t.d.channel_id,guildId:t.d.guild_id});break;case m.GatewayDispatchEvents.UserUpdate:t.d.id===this.#e?.id&&(this.#e=new _(this,t.d)),this.emit(`userUpdate`,new _(this,t.d));break;case m.GatewayDispatchEvents.GuildCreate:{let e=this.guilds.get(t.d.id);e?e._patch(t.d):e=new E(this,t.d),this.guilds.set(t.d.id,e),t.d.unavailable?this.emit(`guildCreate`,e):this.emit(`guildAvailable`,e);break}case m.GatewayDispatchEvents.GuildDelete:{let e=this.guilds.get(t.d.id);if(!e)return;this.guilds.delete(t.d.id),this.emit(`guildDelete`,e);break}case m.GatewayDispatchEvents.GuildUpdate:{let e=this.guilds.get(t.d.id);e?e._patch(t.d):(e=new E(this,t.d),this.guilds.set(t.d.id,e)),this.emit(`guildUpdate`,e);break}case m.GatewayDispatchEvents.ChannelCreate:{let e=T(this,t.d);if(!e)return;e.inGuild()&&e.guild.channels.set(e.id,e),this.emit(`channelCreate`,e);break}case m.GatewayDispatchEvents.ChannelUpdate:{let e=this.guilds.get(t.d.guild_id);if(!e)return;let n=e.channels.get(t.d.id);if(n)n._patch(t.d);else{if(n=T(this,t.d),!n)return;e.channels.set(t.d.id,n)}this.emit(`channelUpdate`,n);break}case m.GatewayDispatchEvents.ChannelDelete:{let e=this.guilds.get(t.d.guild_id);if(!e)return;let n=e.channels.get(t.d.id);if(!n)return;e.channels.delete(t.d.id),this.emit(`channelDelete`,n);break}}}#i(){this.#t||!this.#e||!this.shards.ready||(this.#t=!0,this.emit(`ready`,this.#e))}};function j(e){return new A(e)}exports.BaseChannel=y,exports.Client=A,exports.ClientHelper=D,Object.defineProperty(exports,`Cluster`,{enumerable:!0,get:function(){return c.Cluster}}),Object.defineProperty(exports,`DEFAULT_REST_OPTIONS`,{enumerable:!0,get:function(){return l.DEFAULT_REST_OPTIONS}}),Object.defineProperty(exports,`DiscordAPIV10`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`DiscordHTTPError`,{enumerable:!0,get:function(){return l.DiscordHTTPError}}),exports.Guild=E,exports.GuildTextChannel=C,exports.GuildVoiceChannel=w,Object.defineProperty(exports,`Intent`,{enumerable:!0,get:function(){return m.GatewayIntentBits}}),exports.IntentsBitField=k,exports.Message=v,exports.Partial=O,Object.defineProperty(exports,`REST`,{enumerable:!0,get:function(){return l.REST}}),Object.defineProperty(exports,`RESTAdapter`,{enumerable:!0,get:function(){return l.RESTAdapter}}),Object.defineProperty(exports,`RESTMethod`,{enumerable:!0,get:function(){return l.RESTMethod}}),Object.defineProperty(exports,`Service`,{enumerable:!0,get:function(){return u.Service}}),Object.defineProperty(exports,`ServiceDriver`,{enumerable:!0,get:function(){return u.ServiceDriver}}),Object.defineProperty(exports,`ServiceProcess`,{enumerable:!0,get:function(){return u.ServiceProcess}}),Object.defineProperty(exports,`ServiceState`,{enumerable:!0,get:function(){return u.ServiceState}}),Object.defineProperty(exports,`Shard`,{enumerable:!0,get:function(){return c.Shard}}),Object.defineProperty(exports,`ShardState`,{enumerable:!0,get:function(){return c.ShardState}}),Object.defineProperty(exports,`ShardStrategy`,{enumerable:!0,get:function(){return c.ShardStrategy}}),Object.defineProperty(exports,`ShardingManager`,{enumerable:!0,get:function(){return c.ShardingManager}}),Object.defineProperty(exports,`TransportClient`,{enumerable:!0,get:function(){return u.TransportClient}}),Object.defineProperty(exports,`TransportServer`,{enumerable:!0,get:function(){return u.TransportServer}}),exports.User=_,Object.defineProperty(exports,`capitalize`,{enumerable:!0,get:function(){return d.capitalize}}),exports.createClient=j,Object.defineProperty(exports,`createREST`,{enumerable:!0,get:function(){return l.createREST}}),Object.defineProperty(exports,`createRESTAdapter`,{enumerable:!0,get:function(){return l.createRESTAdapter}}),Object.defineProperty(exports,`createService`,{enumerable:!0,get:function(){return u.createService}}),Object.defineProperty(exports,`createTransportClient`,{enumerable:!0,get:function(){return u.createTransportClient}}),Object.defineProperty(exports,`createTransportServer`,{enumerable:!0,get:function(){return u.createTransportServer}}),Object.defineProperty(exports,`instanceToObject`,{enumerable:!0,get:function(){return d.instanceToObject}}),Object.defineProperty(exports,`isCommonJS`,{enumerable:!0,get:function(){return d.isCommonJS}}),Object.defineProperty(exports,`isESM`,{enumerable:!0,get:function(){return d.isESM}}),Object.defineProperty(exports,`isPlainObject`,{enumerable:!0,get:function(){return d.isPlainObject}}),Object.defineProperty(exports,`isPromiseLike`,{enumerable:!0,get:function(){return d.isPromiseLike}}),Object.defineProperty(exports,`promisify`,{enumerable:!0,get:function(){return d.promisify}}),Object.defineProperty(exports,`sleep`,{enumerable:!0,get:function(){return d.sleep}});
|
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
import { Cluster, ClusterEvents, ClusterOptions, Shard, ShardEvents, ShardOptions, ShardState, ShardStrategy, ShardingManager, ShardingManager as ShardingManager$1, ShardingManagerEvents, ShardingManagerOptions, ShardingManagerOptions as ShardingManagerOptions$1 } from "@bakit/gateway";
|
|
2
|
+
import { BaseRESTEvents, DEFAULT_REST_OPTIONS, DiscordHTTPError, DiscordHTTPErrorRequest, DiscordHTTPFlattenedError, DiscordHTTPValidationError, REST, RESTAdapter, RESTAdapterEvents, RESTEndpoint, RESTEvents, RESTLike, RESTLike as RESTLike$1, RESTMethod, RESTOptions, RESTProxyOptions, RESTRequestFn, RESTRequestOptions, createREST, createRESTAdapter } from "@bakit/rest";
|
|
3
|
+
import { RPCHandler, Service, ServiceClientRuntime, ServiceDriver, ServiceOptions, ServiceProcess, ServiceProcessEvents, ServiceServerRuntime, ServiceState, TransportClient, TransportClientEvents, TransportServer, TransportServerEvents, createService, createTransportClient, createTransportServer } from "@bakit/service";
|
|
4
|
+
import * as _bakit_utils0 from "@bakit/utils";
|
|
5
|
+
import { AbstractConstructor, Awaitable, Constructor, FunctionLike, Promisify, PromisifyValue, RejectFn, ResolveFn, capitalize, instanceToObject, isCommonJS, isESM, isPlainObject, isPromiseLike, promisify, sleep } from "@bakit/utils";
|
|
6
|
+
import EventEmitter from "node:events";
|
|
7
|
+
import { Collection } from "@discordjs/collection";
|
|
8
|
+
import * as discord_api_types_v100 from "discord-api-types/v10";
|
|
9
|
+
import { APIAllowedMentions, APIChannel, APIChannelBase, APIEmbed, APIGuild, APIGuildVoiceChannel, APIMessage, APIMessageReference, APITextBasedChannel, APIUser, ChannelType, GatewayChannelCreateDispatchData, GatewayChannelUpdateDispatchData, GatewayDispatchPayload, GatewayGuildCreateDispatchData, GatewayGuildUpdateDispatchData, GatewayIntentBits, GatewayIntentBits as Intent, GatewayMessageCreateDispatchData, GatewayMessageUpdateDispatchData, GatewayReadyDispatchData, GatewayReceivePayload } from "discord-api-types/v10";
|
|
10
|
+
|
|
11
|
+
//#region src/lib/structures/BaseStructure.d.ts
|
|
12
|
+
declare class BaseStructure {
|
|
13
|
+
client: Client;
|
|
14
|
+
constructor(client: Client);
|
|
15
|
+
toJSON(): {};
|
|
16
|
+
}
|
|
17
|
+
//#endregion
|
|
18
|
+
//#region src/lib/structures/channel/GuildTextChannel.d.ts
|
|
19
|
+
declare const GuildTextChannel_base: (abstract new (client: Client, data: APITextBasedChannel<ChannelType.GuildText>) => BaseChannel<APITextBasedChannel<ChannelType.GuildText>>) & (abstract new (...args: any[]) => {
|
|
20
|
+
get guildId(): string;
|
|
21
|
+
get guild(): Guild;
|
|
22
|
+
data: discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>;
|
|
23
|
+
get id(): string;
|
|
24
|
+
get type(): ChannelType;
|
|
25
|
+
toString(): string;
|
|
26
|
+
toJSON(): discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>;
|
|
27
|
+
isTextBased(): this is TextBasedChannel;
|
|
28
|
+
isVoiceBased(): this is VoiceBasedChannel;
|
|
29
|
+
inGuild(): this is GuildChannel;
|
|
30
|
+
_patch(data: Partial<discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>>): void;
|
|
31
|
+
client: Client;
|
|
32
|
+
}) & _bakit_utils0.AbstractConstructor<BaseChannel<discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>>> & (abstract new (...args: any[]) => {
|
|
33
|
+
send(options: MessageCreateOptions): Promise<discord_api_types_v100.APIMessage>;
|
|
34
|
+
data: APITextBasedChannel<ChannelType>;
|
|
35
|
+
get id(): string;
|
|
36
|
+
get type(): ChannelType;
|
|
37
|
+
toString(): string;
|
|
38
|
+
toJSON(): APITextBasedChannel<ChannelType>;
|
|
39
|
+
isTextBased(): this is TextBasedChannel;
|
|
40
|
+
isVoiceBased(): this is VoiceBasedChannel;
|
|
41
|
+
inGuild(): this is GuildChannel;
|
|
42
|
+
_patch(data: Partial<APITextBasedChannel<ChannelType>>): void;
|
|
43
|
+
client: Client;
|
|
44
|
+
}) & _bakit_utils0.AbstractConstructor<BaseChannel<APITextBasedChannel<ChannelType>>>;
|
|
45
|
+
declare class GuildTextChannel extends GuildTextChannel_base {}
|
|
46
|
+
//#endregion
|
|
47
|
+
//#region src/lib/structures/channel/GuildVoiceChannel.d.ts
|
|
48
|
+
declare const GuildVoiceChannel_base: (abstract new (client: Client, data: APIGuildVoiceChannel) => BaseChannel<APIGuildVoiceChannel>) & (abstract new (...args: any[]) => {
|
|
49
|
+
get guildId(): string;
|
|
50
|
+
get guild(): Guild;
|
|
51
|
+
data: discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>;
|
|
52
|
+
get id(): string;
|
|
53
|
+
get type(): discord_api_types_v100.ChannelType;
|
|
54
|
+
toString(): string;
|
|
55
|
+
toJSON(): discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>;
|
|
56
|
+
isTextBased(): this is TextBasedChannel;
|
|
57
|
+
isVoiceBased(): this is VoiceBasedChannel;
|
|
58
|
+
inGuild(): this is GuildChannel;
|
|
59
|
+
_patch(data: Partial<discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>>): void;
|
|
60
|
+
client: Client;
|
|
61
|
+
}) & _bakit_utils0.AbstractConstructor<BaseChannel<discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>>> & (abstract new (...args: any[]) => {
|
|
62
|
+
send(options: MessageCreateOptions): Promise<discord_api_types_v100.APIMessage>;
|
|
63
|
+
data: discord_api_types_v100.APITextBasedChannel<discord_api_types_v100.ChannelType>;
|
|
64
|
+
get id(): string;
|
|
65
|
+
get type(): discord_api_types_v100.ChannelType;
|
|
66
|
+
toString(): string;
|
|
67
|
+
toJSON(): discord_api_types_v100.APITextBasedChannel<discord_api_types_v100.ChannelType>;
|
|
68
|
+
isTextBased(): this is TextBasedChannel;
|
|
69
|
+
isVoiceBased(): this is VoiceBasedChannel;
|
|
70
|
+
inGuild(): this is GuildChannel;
|
|
71
|
+
_patch(data: Partial<discord_api_types_v100.APITextBasedChannel<discord_api_types_v100.ChannelType>>): void;
|
|
72
|
+
client: Client;
|
|
73
|
+
}) & _bakit_utils0.AbstractConstructor<BaseChannel<discord_api_types_v100.APITextBasedChannel<discord_api_types_v100.ChannelType>>> & (abstract new (...args: any[]) => {
|
|
74
|
+
data: discord_api_types_v100.APIVoiceChannelBase<discord_api_types_v100.GuildChannelType>;
|
|
75
|
+
get id(): string;
|
|
76
|
+
get type(): discord_api_types_v100.ChannelType;
|
|
77
|
+
toString(): string;
|
|
78
|
+
toJSON(): discord_api_types_v100.APIVoiceChannelBase<discord_api_types_v100.GuildChannelType>;
|
|
79
|
+
isTextBased(): this is TextBasedChannel;
|
|
80
|
+
isVoiceBased(): this is VoiceBasedChannel;
|
|
81
|
+
inGuild(): this is GuildChannel;
|
|
82
|
+
_patch(data: Partial<discord_api_types_v100.APIVoiceChannelBase<discord_api_types_v100.GuildChannelType>>): void;
|
|
83
|
+
client: Client;
|
|
84
|
+
}) & _bakit_utils0.AbstractConstructor<BaseChannel<discord_api_types_v100.APIVoiceChannelBase<discord_api_types_v100.GuildChannelType>>>;
|
|
85
|
+
declare class GuildVoiceChannel extends GuildVoiceChannel_base {}
|
|
86
|
+
//#endregion
|
|
87
|
+
//#region src/lib/structures/channel/BaseChannel.d.ts
|
|
88
|
+
type BaseChannelPayload = APIChannelBase<ChannelType> | GatewayChannelCreateDispatchData | GatewayChannelUpdateDispatchData | APIChannel;
|
|
89
|
+
type TextBasedChannel = GuildTextChannel | GuildVoiceChannel;
|
|
90
|
+
type VoiceBasedChannel = GuildVoiceChannel;
|
|
91
|
+
type GuildChannel = GuildTextChannel | GuildVoiceChannel;
|
|
92
|
+
type Channel = TextBasedChannel | VoiceBasedChannel | GuildChannel;
|
|
93
|
+
declare abstract class BaseChannel<D extends BaseChannelPayload> extends BaseStructure {
|
|
94
|
+
data: D;
|
|
95
|
+
constructor(client: Client, data: D);
|
|
96
|
+
get id(): string;
|
|
97
|
+
get type(): ChannelType;
|
|
98
|
+
toString(): string;
|
|
99
|
+
toJSON(): D;
|
|
100
|
+
isTextBased(): this is TextBasedChannel;
|
|
101
|
+
isVoiceBased(): this is VoiceBasedChannel;
|
|
102
|
+
inGuild(): this is GuildChannel;
|
|
103
|
+
_patch(data: Partial<D>): void;
|
|
104
|
+
}
|
|
105
|
+
//#endregion
|
|
106
|
+
//#region src/lib/structures/Guild.d.ts
|
|
107
|
+
type GuildPayload = APIGuild | GatewayGuildUpdateDispatchData | GatewayGuildCreateDispatchData;
|
|
108
|
+
declare class Guild extends BaseStructure {
|
|
109
|
+
data: GuildPayload;
|
|
110
|
+
private cachedChannels;
|
|
111
|
+
constructor(client: Client, data: GuildPayload);
|
|
112
|
+
get id(): string;
|
|
113
|
+
get name(): string;
|
|
114
|
+
get icon(): string | null;
|
|
115
|
+
get banner(): string | null;
|
|
116
|
+
get owner(): string;
|
|
117
|
+
get mfaLevel(): discord_api_types_v100.GuildMFALevel;
|
|
118
|
+
get verificationLevel(): discord_api_types_v100.GuildVerificationLevel;
|
|
119
|
+
get channels(): Collection<string, Channel>;
|
|
120
|
+
_patch(data: Partial<GuildPayload>): void;
|
|
121
|
+
}
|
|
122
|
+
//#endregion
|
|
123
|
+
//#region src/lib/structures/User.d.ts
|
|
124
|
+
type UserPayload = APIUser | GatewayReadyDispatchData["user"];
|
|
125
|
+
declare class User extends BaseStructure {
|
|
126
|
+
data: UserPayload;
|
|
127
|
+
constructor(client: Client, data: UserPayload);
|
|
128
|
+
get id(): string;
|
|
129
|
+
get username(): string;
|
|
130
|
+
get discriminator(): string;
|
|
131
|
+
get globalName(): string | null;
|
|
132
|
+
get tag(): string;
|
|
133
|
+
get displayName(): string;
|
|
134
|
+
get avatar(): string | undefined;
|
|
135
|
+
get bot(): boolean;
|
|
136
|
+
get system(): boolean;
|
|
137
|
+
get mfaEnabled(): boolean | undefined;
|
|
138
|
+
get locale(): string | undefined;
|
|
139
|
+
get verified(): boolean | undefined;
|
|
140
|
+
get email(): string | null | undefined;
|
|
141
|
+
get flags(): discord_api_types_v100.UserFlags | undefined;
|
|
142
|
+
get premiumType(): discord_api_types_v100.UserPremiumType | undefined;
|
|
143
|
+
get publicFlags(): discord_api_types_v100.UserFlags | undefined;
|
|
144
|
+
get banner(): string | null | undefined;
|
|
145
|
+
get accentColor(): number | undefined;
|
|
146
|
+
get createdAt(): Date;
|
|
147
|
+
get createdTimestamp(): number;
|
|
148
|
+
get hexAccentColor(): string | undefined;
|
|
149
|
+
get defaultAvatarURL(): string;
|
|
150
|
+
getAvatarURL(options?: {
|
|
151
|
+
size?: number;
|
|
152
|
+
extension?: "png" | "jpg" | "webp" | "gif";
|
|
153
|
+
}): string | undefined;
|
|
154
|
+
getDisplayAvatarURL(options?: {
|
|
155
|
+
size?: number;
|
|
156
|
+
extension?: "png" | "jpg" | "webp" | "gif";
|
|
157
|
+
}): string;
|
|
158
|
+
equals(other: User | string): boolean;
|
|
159
|
+
toJSON(): APIUser;
|
|
160
|
+
toString(): string;
|
|
161
|
+
}
|
|
162
|
+
//#endregion
|
|
163
|
+
//#region src/lib/client/ClientHelper.d.ts
|
|
164
|
+
interface MessageCreateOptions {
|
|
165
|
+
content?: string;
|
|
166
|
+
tts?: boolean;
|
|
167
|
+
embeds?: APIEmbed[];
|
|
168
|
+
allowedMentions?: APIAllowedMentions;
|
|
169
|
+
messageReference?: APIMessageReference;
|
|
170
|
+
flags?: number;
|
|
171
|
+
}
|
|
172
|
+
type MessageReplyOptions = Omit<MessageCreateOptions, "messageReference">;
|
|
173
|
+
declare class ClientHelper {
|
|
174
|
+
readonly client: Client;
|
|
175
|
+
constructor(client: Client);
|
|
176
|
+
fetchMessage(channelId: string, messageId: string): Promise<Message>;
|
|
177
|
+
deleteMessage(channelId: string, messageId: string): Promise<unknown>;
|
|
178
|
+
createMessage(channelId: string, options: MessageCreateOptions): Promise<APIMessage>;
|
|
179
|
+
replyMessage(channelId: string, messageId: string, options: MessageReplyOptions): Promise<APIMessage>;
|
|
180
|
+
fetchGuild(guildId: string): Promise<Guild>;
|
|
181
|
+
static toAPICreateMessagePayload(options: MessageCreateOptions): {
|
|
182
|
+
content: string | undefined;
|
|
183
|
+
tts: boolean | undefined;
|
|
184
|
+
embeds: APIEmbed[] | undefined;
|
|
185
|
+
allowed_mentions: APIAllowedMentions | undefined;
|
|
186
|
+
message_reference: APIMessageReference | undefined;
|
|
187
|
+
flags: number | undefined;
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
//#endregion
|
|
191
|
+
//#region src/lib/structures/Message.d.ts
|
|
192
|
+
type MessagePayload = APIMessage | GatewayMessageCreateDispatchData | GatewayMessageUpdateDispatchData;
|
|
193
|
+
declare class Message extends BaseStructure {
|
|
194
|
+
data: MessagePayload;
|
|
195
|
+
protected cachedAuthor?: User;
|
|
196
|
+
constructor(client: Client, data: MessagePayload);
|
|
197
|
+
get partial(): boolean;
|
|
198
|
+
get content(): string;
|
|
199
|
+
get id(): string;
|
|
200
|
+
get channelId(): string;
|
|
201
|
+
get channel(): TextBasedChannel;
|
|
202
|
+
get guildId(): string | undefined;
|
|
203
|
+
get guild(): Guild | undefined;
|
|
204
|
+
get author(): User;
|
|
205
|
+
get createdAt(): Date;
|
|
206
|
+
get editedAt(): Date | undefined;
|
|
207
|
+
get createdTimestamp(): number;
|
|
208
|
+
get editedTimestamp(): number | undefined;
|
|
209
|
+
get url(): string;
|
|
210
|
+
fetch(): Promise<Message>;
|
|
211
|
+
reply(options: MessageReplyOptions): Promise<APIMessage>;
|
|
212
|
+
sendToChannel(options: MessageReplyOptions): Promise<APIMessage>;
|
|
213
|
+
toJSON(): MessagePayload;
|
|
214
|
+
toString(): string;
|
|
215
|
+
}
|
|
216
|
+
//#endregion
|
|
217
|
+
//#region src/lib/client/Partial.d.ts
|
|
218
|
+
declare enum Partial$1 {
|
|
219
|
+
Message = 0,
|
|
220
|
+
User = 1
|
|
221
|
+
}
|
|
222
|
+
//#endregion
|
|
223
|
+
//#region src/lib/utils/IntentsBitField.d.ts
|
|
224
|
+
type IntentResolvable = number | bigint | GatewayIntentBits | GatewayIntentBits[];
|
|
225
|
+
declare class IntentsBitField {
|
|
226
|
+
private readonly value;
|
|
227
|
+
constructor(input: IntentResolvable);
|
|
228
|
+
static resolve(input: IntentResolvable): bigint;
|
|
229
|
+
has(intent: GatewayIntentBits): boolean;
|
|
230
|
+
toBigInt(): bigint;
|
|
231
|
+
toNumber(): number;
|
|
232
|
+
toJSON(): string;
|
|
233
|
+
toString(): string;
|
|
234
|
+
}
|
|
235
|
+
//#endregion
|
|
236
|
+
//#region src/lib/client/Client.d.ts
|
|
237
|
+
interface ClientOptions {
|
|
238
|
+
token: string;
|
|
239
|
+
intents: IntentResolvable | IntentsBitField;
|
|
240
|
+
sharding?: ClientShardingOptions;
|
|
241
|
+
partials?: Partial$1[];
|
|
242
|
+
}
|
|
243
|
+
type ClientShardingOptions = Omit<ShardingManagerOptions$1, "token" | "intents">;
|
|
244
|
+
interface ClientEvents {
|
|
245
|
+
ready: [user: User];
|
|
246
|
+
error: [error: Error];
|
|
247
|
+
dispatch: [shardId: number, payload: GatewayDispatchPayload];
|
|
248
|
+
raw: [shardId: number, payload: GatewayReceivePayload];
|
|
249
|
+
messageCreate: [message: Message];
|
|
250
|
+
messageUpdate: [message: Message];
|
|
251
|
+
messageDelete: [message: {
|
|
252
|
+
id: string;
|
|
253
|
+
channelId: string;
|
|
254
|
+
guildId?: string;
|
|
255
|
+
}];
|
|
256
|
+
userUpdate: [user: User];
|
|
257
|
+
guildCreate: [guild: Guild];
|
|
258
|
+
guildAvailable: [guild: Guild];
|
|
259
|
+
guildUpdate: [guild: Guild];
|
|
260
|
+
guildDelete: [guild: Guild];
|
|
261
|
+
channelCreate: [channel: Channel];
|
|
262
|
+
channelUpdate: [channel: Channel];
|
|
263
|
+
channelDelete: [channel: Channel];
|
|
264
|
+
}
|
|
265
|
+
declare class Client extends EventEmitter<ClientEvents> {
|
|
266
|
+
#private;
|
|
267
|
+
readonly options: Omit<Required<ClientOptions>, "partials" | "intents"> & {
|
|
268
|
+
partials: Set<Partial$1>;
|
|
269
|
+
intents: IntentsBitField;
|
|
270
|
+
};
|
|
271
|
+
readonly shards: ShardingManager$1;
|
|
272
|
+
readonly rest: RESTLike$1;
|
|
273
|
+
readonly helper: ClientHelper;
|
|
274
|
+
readonly guilds: Collection<string, Guild>;
|
|
275
|
+
constructor(options: ClientOptions, rest?: RESTLike$1);
|
|
276
|
+
get user(): User | undefined;
|
|
277
|
+
login(): Promise<void>;
|
|
278
|
+
}
|
|
279
|
+
declare function createClient(options: ClientOptions): Client;
|
|
280
|
+
//#endregion
|
|
281
|
+
export { type AbstractConstructor, type Awaitable, BaseChannel, BaseChannelPayload, type BaseRESTEvents, Channel, Client, ClientEvents, ClientHelper, ClientOptions, ClientShardingOptions, Cluster, type ClusterEvents, type ClusterOptions, type Constructor, DEFAULT_REST_OPTIONS, discord_api_types_v100 as DiscordAPIV10, DiscordHTTPError, type DiscordHTTPErrorRequest, type DiscordHTTPFlattenedError, type DiscordHTTPValidationError, type FunctionLike, Guild, GuildChannel, GuildPayload, GuildTextChannel, GuildVoiceChannel, Intent, IntentResolvable, IntentsBitField, Message, MessageCreateOptions, MessagePayload, MessageReplyOptions, Partial$1 as Partial, type Promisify, type PromisifyValue, REST, RESTAdapter, type RESTAdapterEvents, type RESTEndpoint, type RESTEvents, type RESTLike, RESTMethod, type RESTOptions, type RESTProxyOptions, type RESTRequestFn, type RESTRequestOptions, type RPCHandler, type RejectFn, type ResolveFn, Service, type ServiceClientRuntime, ServiceDriver, type ServiceOptions, ServiceProcess, type ServiceProcessEvents, type ServiceServerRuntime, ServiceState, Shard, type ShardEvents, type ShardOptions, ShardState, ShardStrategy, ShardingManager, type ShardingManagerEvents, type ShardingManagerOptions, TextBasedChannel, TransportClient, type TransportClientEvents, TransportServer, type TransportServerEvents, User, UserPayload, VoiceBasedChannel, capitalize, createClient, createREST, createRESTAdapter, createService, createTransportClient, createTransportServer, instanceToObject, isCommonJS, isESM, isPlainObject, isPromiseLike, promisify, sleep };
|
|
282
|
+
//# sourceMappingURL=index.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/lib/structures/BaseStructure.ts","../src/lib/structures/channel/GuildTextChannel.ts","../src/lib/structures/channel/GuildVoiceChannel.ts","../src/lib/structures/channel/BaseChannel.ts","../src/lib/structures/Guild.ts","../src/lib/structures/User.ts","../src/lib/client/ClientHelper.ts","../src/lib/structures/Message.ts","../src/lib/client/Partial.ts","../src/lib/utils/IntentsBitField.ts","../src/lib/client/Client.ts"],"mappings":"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"}
|
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
import { Cluster, ClusterEvents, ClusterOptions, Shard, ShardEvents, ShardOptions, ShardState, ShardStrategy, ShardingManager, ShardingManager as ShardingManager$1, ShardingManagerEvents, ShardingManagerOptions, ShardingManagerOptions as ShardingManagerOptions$1 } from "@bakit/gateway";
|
|
2
|
+
import { BaseRESTEvents, DEFAULT_REST_OPTIONS, DiscordHTTPError, DiscordHTTPErrorRequest, DiscordHTTPFlattenedError, DiscordHTTPValidationError, REST, RESTAdapter, RESTAdapterEvents, RESTEndpoint, RESTEvents, RESTLike, RESTLike as RESTLike$1, RESTMethod, RESTOptions, RESTProxyOptions, RESTRequestFn, RESTRequestOptions, createREST, createRESTAdapter } from "@bakit/rest";
|
|
3
|
+
import { RPCHandler, Service, ServiceClientRuntime, ServiceDriver, ServiceOptions, ServiceProcess, ServiceProcessEvents, ServiceServerRuntime, ServiceState, TransportClient, TransportClientEvents, TransportServer, TransportServerEvents, createService, createTransportClient, createTransportServer } from "@bakit/service";
|
|
4
|
+
import * as _bakit_utils0 from "@bakit/utils";
|
|
5
|
+
import { AbstractConstructor, Awaitable, Constructor, FunctionLike, Promisify, PromisifyValue, RejectFn, ResolveFn, capitalize, instanceToObject, isCommonJS, isESM, isPlainObject, isPromiseLike, promisify, sleep } from "@bakit/utils";
|
|
6
|
+
import EventEmitter from "node:events";
|
|
7
|
+
import { Collection } from "@discordjs/collection";
|
|
8
|
+
import * as discord_api_types_v100 from "discord-api-types/v10";
|
|
9
|
+
import { APIAllowedMentions, APIChannel, APIChannelBase, APIEmbed, APIGuild, APIGuildVoiceChannel, APIMessage, APIMessageReference, APITextBasedChannel, APIUser, ChannelType, GatewayChannelCreateDispatchData, GatewayChannelUpdateDispatchData, GatewayDispatchPayload, GatewayGuildCreateDispatchData, GatewayGuildUpdateDispatchData, GatewayIntentBits, GatewayIntentBits as Intent, GatewayMessageCreateDispatchData, GatewayMessageUpdateDispatchData, GatewayReadyDispatchData, GatewayReceivePayload } from "discord-api-types/v10";
|
|
10
|
+
|
|
11
|
+
//#region src/lib/structures/BaseStructure.d.ts
|
|
12
|
+
declare class BaseStructure {
|
|
13
|
+
client: Client;
|
|
14
|
+
constructor(client: Client);
|
|
15
|
+
toJSON(): {};
|
|
16
|
+
}
|
|
17
|
+
//#endregion
|
|
18
|
+
//#region src/lib/structures/channel/GuildTextChannel.d.ts
|
|
19
|
+
declare const GuildTextChannel_base: (abstract new (client: Client, data: APITextBasedChannel<ChannelType.GuildText>) => BaseChannel<APITextBasedChannel<ChannelType.GuildText>>) & (abstract new (...args: any[]) => {
|
|
20
|
+
get guildId(): string;
|
|
21
|
+
get guild(): Guild;
|
|
22
|
+
data: discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>;
|
|
23
|
+
get id(): string;
|
|
24
|
+
get type(): ChannelType;
|
|
25
|
+
toString(): string;
|
|
26
|
+
toJSON(): discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>;
|
|
27
|
+
isTextBased(): this is TextBasedChannel;
|
|
28
|
+
isVoiceBased(): this is VoiceBasedChannel;
|
|
29
|
+
inGuild(): this is GuildChannel;
|
|
30
|
+
_patch(data: Partial<discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>>): void;
|
|
31
|
+
client: Client;
|
|
32
|
+
}) & _bakit_utils0.AbstractConstructor<BaseChannel<discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>>> & (abstract new (...args: any[]) => {
|
|
33
|
+
send(options: MessageCreateOptions): Promise<discord_api_types_v100.APIMessage>;
|
|
34
|
+
data: APITextBasedChannel<ChannelType>;
|
|
35
|
+
get id(): string;
|
|
36
|
+
get type(): ChannelType;
|
|
37
|
+
toString(): string;
|
|
38
|
+
toJSON(): APITextBasedChannel<ChannelType>;
|
|
39
|
+
isTextBased(): this is TextBasedChannel;
|
|
40
|
+
isVoiceBased(): this is VoiceBasedChannel;
|
|
41
|
+
inGuild(): this is GuildChannel;
|
|
42
|
+
_patch(data: Partial<APITextBasedChannel<ChannelType>>): void;
|
|
43
|
+
client: Client;
|
|
44
|
+
}) & _bakit_utils0.AbstractConstructor<BaseChannel<APITextBasedChannel<ChannelType>>>;
|
|
45
|
+
declare class GuildTextChannel extends GuildTextChannel_base {}
|
|
46
|
+
//#endregion
|
|
47
|
+
//#region src/lib/structures/channel/GuildVoiceChannel.d.ts
|
|
48
|
+
declare const GuildVoiceChannel_base: (abstract new (client: Client, data: APIGuildVoiceChannel) => BaseChannel<APIGuildVoiceChannel>) & (abstract new (...args: any[]) => {
|
|
49
|
+
get guildId(): string;
|
|
50
|
+
get guild(): Guild;
|
|
51
|
+
data: discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>;
|
|
52
|
+
get id(): string;
|
|
53
|
+
get type(): discord_api_types_v100.ChannelType;
|
|
54
|
+
toString(): string;
|
|
55
|
+
toJSON(): discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>;
|
|
56
|
+
isTextBased(): this is TextBasedChannel;
|
|
57
|
+
isVoiceBased(): this is VoiceBasedChannel;
|
|
58
|
+
inGuild(): this is GuildChannel;
|
|
59
|
+
_patch(data: Partial<discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>>): void;
|
|
60
|
+
client: Client;
|
|
61
|
+
}) & _bakit_utils0.AbstractConstructor<BaseChannel<discord_api_types_v100.APIGuildChannel<discord_api_types_v100.GuildChannelType>>> & (abstract new (...args: any[]) => {
|
|
62
|
+
send(options: MessageCreateOptions): Promise<discord_api_types_v100.APIMessage>;
|
|
63
|
+
data: discord_api_types_v100.APITextBasedChannel<discord_api_types_v100.ChannelType>;
|
|
64
|
+
get id(): string;
|
|
65
|
+
get type(): discord_api_types_v100.ChannelType;
|
|
66
|
+
toString(): string;
|
|
67
|
+
toJSON(): discord_api_types_v100.APITextBasedChannel<discord_api_types_v100.ChannelType>;
|
|
68
|
+
isTextBased(): this is TextBasedChannel;
|
|
69
|
+
isVoiceBased(): this is VoiceBasedChannel;
|
|
70
|
+
inGuild(): this is GuildChannel;
|
|
71
|
+
_patch(data: Partial<discord_api_types_v100.APITextBasedChannel<discord_api_types_v100.ChannelType>>): void;
|
|
72
|
+
client: Client;
|
|
73
|
+
}) & _bakit_utils0.AbstractConstructor<BaseChannel<discord_api_types_v100.APITextBasedChannel<discord_api_types_v100.ChannelType>>> & (abstract new (...args: any[]) => {
|
|
74
|
+
data: discord_api_types_v100.APIVoiceChannelBase<discord_api_types_v100.GuildChannelType>;
|
|
75
|
+
get id(): string;
|
|
76
|
+
get type(): discord_api_types_v100.ChannelType;
|
|
77
|
+
toString(): string;
|
|
78
|
+
toJSON(): discord_api_types_v100.APIVoiceChannelBase<discord_api_types_v100.GuildChannelType>;
|
|
79
|
+
isTextBased(): this is TextBasedChannel;
|
|
80
|
+
isVoiceBased(): this is VoiceBasedChannel;
|
|
81
|
+
inGuild(): this is GuildChannel;
|
|
82
|
+
_patch(data: Partial<discord_api_types_v100.APIVoiceChannelBase<discord_api_types_v100.GuildChannelType>>): void;
|
|
83
|
+
client: Client;
|
|
84
|
+
}) & _bakit_utils0.AbstractConstructor<BaseChannel<discord_api_types_v100.APIVoiceChannelBase<discord_api_types_v100.GuildChannelType>>>;
|
|
85
|
+
declare class GuildVoiceChannel extends GuildVoiceChannel_base {}
|
|
86
|
+
//#endregion
|
|
87
|
+
//#region src/lib/structures/channel/BaseChannel.d.ts
|
|
88
|
+
type BaseChannelPayload = APIChannelBase<ChannelType> | GatewayChannelCreateDispatchData | GatewayChannelUpdateDispatchData | APIChannel;
|
|
89
|
+
type TextBasedChannel = GuildTextChannel | GuildVoiceChannel;
|
|
90
|
+
type VoiceBasedChannel = GuildVoiceChannel;
|
|
91
|
+
type GuildChannel = GuildTextChannel | GuildVoiceChannel;
|
|
92
|
+
type Channel = TextBasedChannel | VoiceBasedChannel | GuildChannel;
|
|
93
|
+
declare abstract class BaseChannel<D extends BaseChannelPayload> extends BaseStructure {
|
|
94
|
+
data: D;
|
|
95
|
+
constructor(client: Client, data: D);
|
|
96
|
+
get id(): string;
|
|
97
|
+
get type(): ChannelType;
|
|
98
|
+
toString(): string;
|
|
99
|
+
toJSON(): D;
|
|
100
|
+
isTextBased(): this is TextBasedChannel;
|
|
101
|
+
isVoiceBased(): this is VoiceBasedChannel;
|
|
102
|
+
inGuild(): this is GuildChannel;
|
|
103
|
+
_patch(data: Partial<D>): void;
|
|
104
|
+
}
|
|
105
|
+
//#endregion
|
|
106
|
+
//#region src/lib/structures/Guild.d.ts
|
|
107
|
+
type GuildPayload = APIGuild | GatewayGuildUpdateDispatchData | GatewayGuildCreateDispatchData;
|
|
108
|
+
declare class Guild extends BaseStructure {
|
|
109
|
+
data: GuildPayload;
|
|
110
|
+
private cachedChannels;
|
|
111
|
+
constructor(client: Client, data: GuildPayload);
|
|
112
|
+
get id(): string;
|
|
113
|
+
get name(): string;
|
|
114
|
+
get icon(): string | null;
|
|
115
|
+
get banner(): string | null;
|
|
116
|
+
get owner(): string;
|
|
117
|
+
get mfaLevel(): discord_api_types_v100.GuildMFALevel;
|
|
118
|
+
get verificationLevel(): discord_api_types_v100.GuildVerificationLevel;
|
|
119
|
+
get channels(): Collection<string, Channel>;
|
|
120
|
+
_patch(data: Partial<GuildPayload>): void;
|
|
121
|
+
}
|
|
122
|
+
//#endregion
|
|
123
|
+
//#region src/lib/structures/User.d.ts
|
|
124
|
+
type UserPayload = APIUser | GatewayReadyDispatchData["user"];
|
|
125
|
+
declare class User extends BaseStructure {
|
|
126
|
+
data: UserPayload;
|
|
127
|
+
constructor(client: Client, data: UserPayload);
|
|
128
|
+
get id(): string;
|
|
129
|
+
get username(): string;
|
|
130
|
+
get discriminator(): string;
|
|
131
|
+
get globalName(): string | null;
|
|
132
|
+
get tag(): string;
|
|
133
|
+
get displayName(): string;
|
|
134
|
+
get avatar(): string | undefined;
|
|
135
|
+
get bot(): boolean;
|
|
136
|
+
get system(): boolean;
|
|
137
|
+
get mfaEnabled(): boolean | undefined;
|
|
138
|
+
get locale(): string | undefined;
|
|
139
|
+
get verified(): boolean | undefined;
|
|
140
|
+
get email(): string | null | undefined;
|
|
141
|
+
get flags(): discord_api_types_v100.UserFlags | undefined;
|
|
142
|
+
get premiumType(): discord_api_types_v100.UserPremiumType | undefined;
|
|
143
|
+
get publicFlags(): discord_api_types_v100.UserFlags | undefined;
|
|
144
|
+
get banner(): string | null | undefined;
|
|
145
|
+
get accentColor(): number | undefined;
|
|
146
|
+
get createdAt(): Date;
|
|
147
|
+
get createdTimestamp(): number;
|
|
148
|
+
get hexAccentColor(): string | undefined;
|
|
149
|
+
get defaultAvatarURL(): string;
|
|
150
|
+
getAvatarURL(options?: {
|
|
151
|
+
size?: number;
|
|
152
|
+
extension?: "png" | "jpg" | "webp" | "gif";
|
|
153
|
+
}): string | undefined;
|
|
154
|
+
getDisplayAvatarURL(options?: {
|
|
155
|
+
size?: number;
|
|
156
|
+
extension?: "png" | "jpg" | "webp" | "gif";
|
|
157
|
+
}): string;
|
|
158
|
+
equals(other: User | string): boolean;
|
|
159
|
+
toJSON(): APIUser;
|
|
160
|
+
toString(): string;
|
|
161
|
+
}
|
|
162
|
+
//#endregion
|
|
163
|
+
//#region src/lib/client/ClientHelper.d.ts
|
|
164
|
+
interface MessageCreateOptions {
|
|
165
|
+
content?: string;
|
|
166
|
+
tts?: boolean;
|
|
167
|
+
embeds?: APIEmbed[];
|
|
168
|
+
allowedMentions?: APIAllowedMentions;
|
|
169
|
+
messageReference?: APIMessageReference;
|
|
170
|
+
flags?: number;
|
|
171
|
+
}
|
|
172
|
+
type MessageReplyOptions = Omit<MessageCreateOptions, "messageReference">;
|
|
173
|
+
declare class ClientHelper {
|
|
174
|
+
readonly client: Client;
|
|
175
|
+
constructor(client: Client);
|
|
176
|
+
fetchMessage(channelId: string, messageId: string): Promise<Message>;
|
|
177
|
+
deleteMessage(channelId: string, messageId: string): Promise<unknown>;
|
|
178
|
+
createMessage(channelId: string, options: MessageCreateOptions): Promise<APIMessage>;
|
|
179
|
+
replyMessage(channelId: string, messageId: string, options: MessageReplyOptions): Promise<APIMessage>;
|
|
180
|
+
fetchGuild(guildId: string): Promise<Guild>;
|
|
181
|
+
static toAPICreateMessagePayload(options: MessageCreateOptions): {
|
|
182
|
+
content: string | undefined;
|
|
183
|
+
tts: boolean | undefined;
|
|
184
|
+
embeds: APIEmbed[] | undefined;
|
|
185
|
+
allowed_mentions: APIAllowedMentions | undefined;
|
|
186
|
+
message_reference: APIMessageReference | undefined;
|
|
187
|
+
flags: number | undefined;
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
//#endregion
|
|
191
|
+
//#region src/lib/structures/Message.d.ts
|
|
192
|
+
type MessagePayload = APIMessage | GatewayMessageCreateDispatchData | GatewayMessageUpdateDispatchData;
|
|
193
|
+
declare class Message extends BaseStructure {
|
|
194
|
+
data: MessagePayload;
|
|
195
|
+
protected cachedAuthor?: User;
|
|
196
|
+
constructor(client: Client, data: MessagePayload);
|
|
197
|
+
get partial(): boolean;
|
|
198
|
+
get content(): string;
|
|
199
|
+
get id(): string;
|
|
200
|
+
get channelId(): string;
|
|
201
|
+
get channel(): TextBasedChannel;
|
|
202
|
+
get guildId(): string | undefined;
|
|
203
|
+
get guild(): Guild | undefined;
|
|
204
|
+
get author(): User;
|
|
205
|
+
get createdAt(): Date;
|
|
206
|
+
get editedAt(): Date | undefined;
|
|
207
|
+
get createdTimestamp(): number;
|
|
208
|
+
get editedTimestamp(): number | undefined;
|
|
209
|
+
get url(): string;
|
|
210
|
+
fetch(): Promise<Message>;
|
|
211
|
+
reply(options: MessageReplyOptions): Promise<APIMessage>;
|
|
212
|
+
sendToChannel(options: MessageReplyOptions): Promise<APIMessage>;
|
|
213
|
+
toJSON(): MessagePayload;
|
|
214
|
+
toString(): string;
|
|
215
|
+
}
|
|
216
|
+
//#endregion
|
|
217
|
+
//#region src/lib/client/Partial.d.ts
|
|
218
|
+
declare enum Partial$1 {
|
|
219
|
+
Message = 0,
|
|
220
|
+
User = 1
|
|
221
|
+
}
|
|
222
|
+
//#endregion
|
|
223
|
+
//#region src/lib/utils/IntentsBitField.d.ts
|
|
224
|
+
type IntentResolvable = number | bigint | GatewayIntentBits | GatewayIntentBits[];
|
|
225
|
+
declare class IntentsBitField {
|
|
226
|
+
private readonly value;
|
|
227
|
+
constructor(input: IntentResolvable);
|
|
228
|
+
static resolve(input: IntentResolvable): bigint;
|
|
229
|
+
has(intent: GatewayIntentBits): boolean;
|
|
230
|
+
toBigInt(): bigint;
|
|
231
|
+
toNumber(): number;
|
|
232
|
+
toJSON(): string;
|
|
233
|
+
toString(): string;
|
|
234
|
+
}
|
|
235
|
+
//#endregion
|
|
236
|
+
//#region src/lib/client/Client.d.ts
|
|
237
|
+
interface ClientOptions {
|
|
238
|
+
token: string;
|
|
239
|
+
intents: IntentResolvable | IntentsBitField;
|
|
240
|
+
sharding?: ClientShardingOptions;
|
|
241
|
+
partials?: Partial$1[];
|
|
242
|
+
}
|
|
243
|
+
type ClientShardingOptions = Omit<ShardingManagerOptions$1, "token" | "intents">;
|
|
244
|
+
interface ClientEvents {
|
|
245
|
+
ready: [user: User];
|
|
246
|
+
error: [error: Error];
|
|
247
|
+
dispatch: [shardId: number, payload: GatewayDispatchPayload];
|
|
248
|
+
raw: [shardId: number, payload: GatewayReceivePayload];
|
|
249
|
+
messageCreate: [message: Message];
|
|
250
|
+
messageUpdate: [message: Message];
|
|
251
|
+
messageDelete: [message: {
|
|
252
|
+
id: string;
|
|
253
|
+
channelId: string;
|
|
254
|
+
guildId?: string;
|
|
255
|
+
}];
|
|
256
|
+
userUpdate: [user: User];
|
|
257
|
+
guildCreate: [guild: Guild];
|
|
258
|
+
guildAvailable: [guild: Guild];
|
|
259
|
+
guildUpdate: [guild: Guild];
|
|
260
|
+
guildDelete: [guild: Guild];
|
|
261
|
+
channelCreate: [channel: Channel];
|
|
262
|
+
channelUpdate: [channel: Channel];
|
|
263
|
+
channelDelete: [channel: Channel];
|
|
264
|
+
}
|
|
265
|
+
declare class Client extends EventEmitter<ClientEvents> {
|
|
266
|
+
#private;
|
|
267
|
+
readonly options: Omit<Required<ClientOptions>, "partials" | "intents"> & {
|
|
268
|
+
partials: Set<Partial$1>;
|
|
269
|
+
intents: IntentsBitField;
|
|
270
|
+
};
|
|
271
|
+
readonly shards: ShardingManager$1;
|
|
272
|
+
readonly rest: RESTLike$1;
|
|
273
|
+
readonly helper: ClientHelper;
|
|
274
|
+
readonly guilds: Collection<string, Guild>;
|
|
275
|
+
constructor(options: ClientOptions, rest?: RESTLike$1);
|
|
276
|
+
get user(): User | undefined;
|
|
277
|
+
login(): Promise<void>;
|
|
278
|
+
}
|
|
279
|
+
declare function createClient(options: ClientOptions): Client;
|
|
280
|
+
//#endregion
|
|
281
|
+
export { type AbstractConstructor, type Awaitable, BaseChannel, BaseChannelPayload, type BaseRESTEvents, Channel, Client, ClientEvents, ClientHelper, ClientOptions, ClientShardingOptions, Cluster, type ClusterEvents, type ClusterOptions, type Constructor, DEFAULT_REST_OPTIONS, discord_api_types_v100 as DiscordAPIV10, DiscordHTTPError, type DiscordHTTPErrorRequest, type DiscordHTTPFlattenedError, type DiscordHTTPValidationError, type FunctionLike, Guild, GuildChannel, GuildPayload, GuildTextChannel, GuildVoiceChannel, Intent, IntentResolvable, IntentsBitField, Message, MessageCreateOptions, MessagePayload, MessageReplyOptions, Partial$1 as Partial, type Promisify, type PromisifyValue, REST, RESTAdapter, type RESTAdapterEvents, type RESTEndpoint, type RESTEvents, type RESTLike, RESTMethod, type RESTOptions, type RESTProxyOptions, type RESTRequestFn, type RESTRequestOptions, type RPCHandler, type RejectFn, type ResolveFn, Service, type ServiceClientRuntime, ServiceDriver, type ServiceOptions, ServiceProcess, type ServiceProcessEvents, type ServiceServerRuntime, ServiceState, Shard, type ShardEvents, type ShardOptions, ShardState, ShardStrategy, ShardingManager, type ShardingManagerEvents, type ShardingManagerOptions, TextBasedChannel, TransportClient, type TransportClientEvents, TransportServer, type TransportServerEvents, User, UserPayload, VoiceBasedChannel, capitalize, createClient, createREST, createRESTAdapter, createService, createTransportClient, createTransportServer, instanceToObject, isCommonJS, isESM, isPlainObject, isPromiseLike, promisify, sleep };
|
|
282
|
+
//# sourceMappingURL=index.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/lib/structures/BaseStructure.ts","../src/lib/structures/channel/GuildTextChannel.ts","../src/lib/structures/channel/GuildVoiceChannel.ts","../src/lib/structures/channel/BaseChannel.ts","../src/lib/structures/Guild.ts","../src/lib/structures/User.ts","../src/lib/client/ClientHelper.ts","../src/lib/structures/Message.ts","../src/lib/client/Partial.ts","../src/lib/utils/IntentsBitField.ts","../src/lib/client/Client.ts"],"mappings":"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"}
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{Cluster as e,Shard as t,ShardState as n,ShardStrategy as r,ShardingManager as i,ShardingManager as a}from"@bakit/gateway";import{DEFAULT_REST_OPTIONS as o,DiscordHTTPError as s,REST as c,REST as l,RESTAdapter as u,RESTMethod as d,createREST as f,createRESTAdapter as p}from"@bakit/rest";import{Service as m,ServiceDriver as h,ServiceProcess as ee,ServiceState as g,TransportClient as _,TransportServer as v,createService as y,createTransportClient as b,createTransportServer as x}from"@bakit/service";import{capitalize as S,getSnowflakeDate as C,instanceToObject as w,isCommonJS as te,isESM as T,isPlainObject as E,isPromiseLike as D,promisify as O,sleep as k}from"@bakit/utils";import A from"node:events";import{Collection as j}from"@discordjs/collection";import*as M from"discord-api-types/v10";import{ChannelType as N,GatewayDispatchEvents as P,GatewayIntentBits as ne,GatewayIntentBits as F,Routes as I}from"discord-api-types/v10";import{applyMixins as L,createMixin as R}from"tiny-mixin";var z=class{constructor(e){Object.defineProperty(this,`client`,{value:e,enumerable:!1,writable:!1})}toJSON(){return{}}},B=class extends z{constructor(e,t){super(e),this.data=t}get id(){return this.data.id}get username(){return this.data.username}get discriminator(){return this.data.discriminator}get globalName(){return this.data.global_name}get tag(){return this.discriminator!==`0`&&this.discriminator!==`0000`?`${this.username}#${this.discriminator}`:this.username}get displayName(){return this.globalName??this.tag}get avatar(){return this.data.avatar??void 0}get bot(){return!!this.data.bot}get system(){return!!this.data.system}get mfaEnabled(){return this.data.mfa_enabled}get locale(){return this.data.locale}get verified(){return this.data.verified}get email(){return this.data.email}get flags(){return this.data.flags}get premiumType(){return this.data.premium_type}get publicFlags(){return this.data.public_flags}get banner(){return this.data.banner}get accentColor(){return this.data.accent_color??void 0}get createdAt(){return C(this.id)}get createdTimestamp(){return this.createdAt.getTime()}get hexAccentColor(){return this.accentColor===void 0?void 0:`#${this.accentColor.toString(16).padStart(6,`0`)}`}get defaultAvatarURL(){return`https://cdn.discordapp.com/embed/avatars/${this.discriminator!==`0`&&this.discriminator!==`0000`?BigInt(this.discriminator)%5n:(BigInt(this.id)>>22n)%6n}.png`}getAvatarURL(e){if(!this.avatar)return;let t=this.avatar.startsWith(`a_`),n=e?.extension??(t?`gif`:`png`),r=e?.size?`?size=${e.size}`:``;return`https://cdn.discordapp.com/avatars/${this.id}/${this.avatar}.${n}${r}`}getDisplayAvatarURL(e){return this.getAvatarURL(e)??this.defaultAvatarURL}equals(e){return typeof e==`string`?e===this.id:e.id===this.id&&e.username===this.username&&e.discriminator===this.discriminator&&e.bot===this.bot&&e.createdTimestamp===this.createdTimestamp}toJSON(){return this.data}toString(){return`<@${this.id}>`}},V=class extends z{cachedAuthor;constructor(e,t){super(e),this.data=t}get partial(){return typeof this.data.content!=`string`||typeof this.data.author!=`object`}get content(){return this.data.content}get id(){return this.data.id}get channelId(){return this.data.channel_id}get channel(){return this.guild.channels.get(this.channelId)}get guildId(){return`guild_id`in this.data?this.data.guild_id:void 0}get guild(){return this.guildId?this.client.guilds.get(this.guildId):void 0}get author(){return this.cachedAuthor??=new B(this.client,this.data.author),this.cachedAuthor}get createdAt(){return new Date(this.data.timestamp)}get editedAt(){return this.data.edited_timestamp?new Date(this.data.edited_timestamp):void 0}get createdTimestamp(){return this.createdAt.getTime()}get editedTimestamp(){return this.editedAt?.getTime()}get url(){return`https://discord.com/channels/${this.guildId??`@me`}/${this.channelId}/${this.id}`}async fetch(){let e=await this.client.helper.fetchMessage(this.channelId,this.id);return this.data=e.data,this.cachedAuthor=e.cachedAuthor,this}async reply(e){return this.client.helper.replyMessage(this.channelId,this.id,e)}async sendToChannel(e){return this.client.helper.createMessage(this.channelId,e)}toJSON(){return this.data}toString(){return this.data.content}},H=class extends z{constructor(e,t){super(e),this.data=t}get id(){return this.data.id}get type(){return this.data.type}toString(){return`<#${this.id}>`}toJSON(){return this.data}isTextBased(){return`send`in this}isVoiceBased(){return`join`in this}inGuild(){return`guild_id`in this.data}_patch(e){this.data={...this.data,...e}}};const U=R(e=>{class t extends e{send(e){return this.client.helper.createMessage(this.id,e)}}return t}),W=R(e=>{class t extends e{}return t}),G=R(e=>{class t extends e{get guildId(){if(!this.data.guild_id)throw Error(`This channel is not a guild channel`);return this.data.guild_id}get guild(){return this.client.guilds.get(this.guildId)}}return t});var K=class extends L(H,[G,U]){},q=class extends L(H,[G,U,W]){};function J(e,t){switch(t.type){case N.GuildText:return new K(e,t);case N.GuildVoice:return new q(e,t);default:return null}}var Y=class extends z{cachedChannels;constructor(e,t){super(e),this.data=t}get id(){return this.data.id}get name(){return this.data.name}get icon(){return this.data.icon}get banner(){return this.data.banner}get owner(){return this.data.owner_id}get mfaLevel(){return this.data.mfa_level}get verificationLevel(){return this.data.verification_level}get channels(){if(!this.cachedChannels&&(this.cachedChannels=new j,`channels`in this.data))for(let e of this.data.channels){let t=J(this.client,e);t&&this.cachedChannels.set(t.id,t)}return this.cachedChannels}_patch(e){this.data={...this.data,...e}}},X=class e{constructor(e){Object.defineProperty(this,`client`,{value:e,enumerable:!1,writable:!1})}async fetchMessage(e,t){let n=await this.client.rest.get(I.channelMessage(e,t));return new V(this.client,n)}async deleteMessage(e,t){return this.client.rest.delete(I.channelMessage(e,t))}async createMessage(t,n){return this.client.rest.post(I.channelMessages(t),{body:e.toAPICreateMessagePayload(n)})}async replyMessage(e,t,n){return this.createMessage(e,{...n,messageReference:{channel_id:e,message_id:t}})}async fetchGuild(e){let t=await this.client.rest.get(I.guild(e));return new Y(this.client,t)}static toAPICreateMessagePayload(e){return{content:e.content,tts:e.tts,embeds:e.embeds,allowed_mentions:e.allowedMentions,message_reference:e.messageReference,flags:e.flags}}};let Z=function(e){return e[e.Message=0]=`Message`,e[e.User=1]=`User`,e}({});var Q=class e{value;constructor(t){this.value=e.resolve(t)}static resolve(e){return Array.isArray(e)?e.reduce((e,t)=>e|BigInt(t),0n):BigInt(e)}has(e){return(this.value&BigInt(e))!==0n}toBigInt(){return this.value}toNumber(){return Number(this.value)}toJSON(){return this.value.toString()}toString(){return this.value.toString()}},$=class extends A{options;shards;rest;helper;guilds=new j;#e;#t=!1;constructor(e,t){super();let n=e.intents instanceof Q?e.intents:new Q(e.intents),r={shardsPerCluster:e.sharding?.shardsPerCluster??1,totalShards:e.sharding?.totalShards??1};this.options={token:e.token,intents:n,sharding:r,partials:new Set(e.partials??[])},this.rest=t??new l({token:e.token}),this.shards=new a({...this.options.sharding,token:this.options.token,intents:this.options.intents.toBigInt()},t),this.helper=new X(this),this.#n()}get user(){return this.#e}async login(){if(this.#e||this.shards.ready||this.shards.clusters.size>0)throw Error(`Cannot login twice`);return await this.shards.spawn(),new Promise((e,t)=>{let n=()=>{this.removeListener(`ready`,r),this.removeListener(`error`,i)},r=()=>{n(),e()},i=e=>{n(),t(e)};this.once(`ready`,r),this.once(`error`,i)})}#n(){this.shards.on(`dispatch`,(e,t,n)=>this.#r(t,n)),this.shards.on(`raw`,(e,t,n)=>this.emit(`raw`,t,n)),this.shards.once(`ready`,()=>this.#i())}async#r(e,t){switch(this.emit(`dispatch`,e,t),t.t){case P.Ready:this.#e??=new B(this,t.d.user),this.#i();break;case P.MessageCreate:{let e=new V(this,t.d);if(e.partial&&!this.options.partials.has(Z.Message))return;this.emit(`messageCreate`,e);break}case P.MessageUpdate:{let e=new V(this,t.d);if(e.partial&&!this.options.partials.has(Z.Message))return;this.emit(`messageUpdate`,e);break}case P.MessageDelete:this.emit(`messageDelete`,{id:t.d.id,channelId:t.d.channel_id,guildId:t.d.guild_id});break;case P.UserUpdate:t.d.id===this.#e?.id&&(this.#e=new B(this,t.d)),this.emit(`userUpdate`,new B(this,t.d));break;case P.GuildCreate:{let e=this.guilds.get(t.d.id);e?e._patch(t.d):e=new Y(this,t.d),this.guilds.set(t.d.id,e),t.d.unavailable?this.emit(`guildCreate`,e):this.emit(`guildAvailable`,e);break}case P.GuildDelete:{let e=this.guilds.get(t.d.id);if(!e)return;this.guilds.delete(t.d.id),this.emit(`guildDelete`,e);break}case P.GuildUpdate:{let e=this.guilds.get(t.d.id);e?e._patch(t.d):(e=new Y(this,t.d),this.guilds.set(t.d.id,e)),this.emit(`guildUpdate`,e);break}case P.ChannelCreate:{let e=J(this,t.d);if(!e)return;e.inGuild()&&e.guild.channels.set(e.id,e),this.emit(`channelCreate`,e);break}case P.ChannelUpdate:{let e=this.guilds.get(t.d.guild_id);if(!e)return;let n=e.channels.get(t.d.id);if(n)n._patch(t.d);else{if(n=J(this,t.d),!n)return;e.channels.set(t.d.id,n)}this.emit(`channelUpdate`,n);break}case P.ChannelDelete:{let e=this.guilds.get(t.d.guild_id);if(!e)return;let n=e.channels.get(t.d.id);if(!n)return;e.channels.delete(t.d.id),this.emit(`channelDelete`,n);break}}}#i(){this.#t||!this.#e||!this.shards.ready||(this.#t=!0,this.emit(`ready`,this.#e))}};function re(e){return new $(e)}export{H as BaseChannel,$ as Client,X as ClientHelper,e as Cluster,o as DEFAULT_REST_OPTIONS,M as DiscordAPIV10,s as DiscordHTTPError,Y as Guild,K as GuildTextChannel,q as GuildVoiceChannel,F as Intent,Q as IntentsBitField,V as Message,Z as Partial,c as REST,u as RESTAdapter,d as RESTMethod,m as Service,h as ServiceDriver,ee as ServiceProcess,g as ServiceState,t as Shard,n as ShardState,r as ShardStrategy,i as ShardingManager,_ as TransportClient,v as TransportServer,B as User,S as capitalize,re as createClient,f as createREST,p as createRESTAdapter,y as createService,b as createTransportClient,x as createTransportServer,w as instanceToObject,te as isCommonJS,T as isESM,E as isPlainObject,D as isPromiseLike,O as promisify,k as sleep};
|
|
2
|
+
//# sourceMappingURL=index.mjs.map
|