From e03ac44f6d9b7c95df0b0d0ed2715c9bd4a91d00 Mon Sep 17 00:00:00 2001 From: Aki Date: Mon, 28 Sep 2026 22:44:36 +0900 Subject: [PATCH 1/2] Allow passing options to Channel.createInvite Signed-off-by: Aki --- src/classes/Channel.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/classes/Channel.ts b/src/classes/Channel.ts index f7cc1d26..13bde778 100644 --- a/src/classes/Channel.ts +++ b/src/classes/Channel.ts @@ -7,6 +7,7 @@ import type { Member as APIMember, Message as APIMessage, User as APIUser, + DataCreateInvite, DataEditChannel, DataMessageSearch, DataMessageSend, @@ -709,12 +710,14 @@ export class Channel { /** * Create an invite to the channel + * @param data Invite options * @requires `TextChannel` * @returns Newly created invite code */ - async createInvite(): Promise { + async createInvite(data: DataCreateInvite = {}): Promise { return await this.#collection.client.api.post( `/channels/${this.id as ""}/invites`, + data, ); } From d5471968e0681293a646f57537d28e9154d7de37 Mon Sep 17 00:00:00 2001 From: Aki Date: Thu, 1 Oct 2026 20:31:56 +0900 Subject: [PATCH 2/2] feat: expose uses, max_uses, and expires on ServerInvite Signed-off-by: Aki --- src/classes/Invite.ts | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/classes/Invite.ts b/src/classes/Invite.ts index 4e579348..451ebf47 100644 --- a/src/classes/Invite.ts +++ b/src/classes/Invite.ts @@ -52,6 +52,9 @@ export class ServerInvite extends ChannelInvite { readonly creatorId: string; readonly serverId: string; readonly channelId: string; + readonly uses?: number; + readonly maxUses?: number; + readonly expires?: Date; /** * Construct Server Invite @@ -65,6 +68,15 @@ export class ServerInvite extends ChannelInvite { this.creatorId = invite.creator; this.serverId = invite.server; this.channelId = invite.channel; + + const { uses, max_uses, expires } = invite as { + uses?: number; + max_uses?: number; + expires?: string; + }; + this.uses = uses; + this.maxUses = max_uses; + this.expires = expires ? new Date(expires) : undefined; } /**