mirror of
https://github.com/discordeno/discordeno.git
synced 2026-06-16 11:28:15 +00:00
3d39b3878a
* p1 of bigints change * shtuff fixes and bits * Commit from GitHub Actions (Lint) * finish bigint structs * typings fixes * Commit from GitHub Actions (Lint) * more fixes * Commit from GitHub Actions (Lint) * more fixes * Commit from GitHub Actions (Lint) * blame wolf * Commit from GitHub Actions (Lint) * foxed * Commit from GitHub Actions (Lint) * fix unit tests * Commit from GitHub Actions (Lint) * change: guildUpdate guild ID can't change * delete server has been renamed to delete guild * fixes Co-authored-by: Skillz4Killz <Skillz4Killz@users.noreply.github.com> Co-authored-by: ITOH <72305210+itohatweb@users.noreply.github.com>
30 lines
942 B
TypeScript
30 lines
942 B
TypeScript
import { cacheHandlers } from "../../cache.ts";
|
|
import { rest } from "../../rest/rest.ts";
|
|
import { Invite } from "../../types/invites/invite.ts";
|
|
import { Errors } from "../../types/misc/errors.ts";
|
|
import { endpoints } from "../../util/constants.ts";
|
|
import {
|
|
botHasChannelPermissions,
|
|
requireBotGuildPermissions,
|
|
} from "../../util/permissions.ts";
|
|
|
|
/** Deletes an invite for the given code. Requires `MANAGE_CHANNELS` or `MANAGE_GUILD` permission */
|
|
export async function deleteInvite(channelId: bigint, inviteCode: string) {
|
|
const channel = await cacheHandlers.get("channels", channelId);
|
|
|
|
if (!channel) throw new Error(Errors.CHANNEL_NOT_FOUND);
|
|
|
|
const hasPerm = await botHasChannelPermissions(channel, [
|
|
"MANAGE_CHANNELS",
|
|
]);
|
|
|
|
if (!hasPerm) {
|
|
await requireBotGuildPermissions(channel!.guildId, ["MANAGE_GUILD"]);
|
|
}
|
|
|
|
return await rest.runMethod<Invite>(
|
|
"delete",
|
|
endpoints.INVITE(inviteCode),
|
|
);
|
|
}
|