fix(GuildScheduledEvent): Use if...else pattern and handle partials (#9802)

fix: handle partial case

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
This commit is contained in:
Jiralite
2023-09-18 08:26:22 +01:00
committed by GitHub
parent 4588e075c3
commit 32d614ccd3
2 changed files with 94 additions and 37 deletions

View File

@@ -1670,11 +1670,13 @@ export class GuildScheduledEvent<S extends GuildScheduledEventStatus = GuildSche
public get guild(): Guild | null;
public get url(): string;
public image: string | null;
public get partial(): false;
public coverImageURL(options?: Readonly<BaseImageURLOptions>): string | null;
public createInviteURL(options?: GuildScheduledEventInviteURLCreateOptions): Promise<string>;
public edit<T extends GuildScheduledEventSetStatusArg<S>>(
options: GuildScheduledEventEditOptions<S, T>,
): Promise<GuildScheduledEvent<T>>;
public fetch(force?: boolean): Promise<GuildScheduledEvent<S>>;
public delete(): Promise<GuildScheduledEvent<S>>;
public setName(name: string, reason?: string): Promise<GuildScheduledEvent<S>>;
public setScheduledStartTime(scheduledStartTime: DateResolvable, reason?: string): Promise<GuildScheduledEvent<S>>;
@@ -4359,7 +4361,14 @@ export interface AddGuildMemberOptions {
fetchWhenExisting?: boolean;
}
export type AllowedPartial = User | Channel | GuildMember | Message | MessageReaction | ThreadMember;
export type AllowedPartial =
| User
| Channel
| GuildMember
| Message
| MessageReaction
| GuildScheduledEvent
| ThreadMember;
export type AllowedThreadTypeForNewsChannel = ChannelType.AnnouncementThread;
@@ -4929,12 +4938,12 @@ export interface ClientEvents {
stickerUpdate: [oldSticker: Sticker, newSticker: Sticker];
guildScheduledEventCreate: [guildScheduledEvent: GuildScheduledEvent];
guildScheduledEventUpdate: [
oldGuildScheduledEvent: GuildScheduledEvent | null,
oldGuildScheduledEvent: GuildScheduledEvent | PartialGuildScheduledEvent | null,
newGuildScheduledEvent: GuildScheduledEvent,
];
guildScheduledEventDelete: [guildScheduledEvent: GuildScheduledEvent];
guildScheduledEventUserAdd: [guildScheduledEvent: GuildScheduledEvent, user: User];
guildScheduledEventUserRemove: [guildScheduledEvent: GuildScheduledEvent, user: User];
guildScheduledEventDelete: [guildScheduledEvent: GuildScheduledEvent | PartialGuildScheduledEvent];
guildScheduledEventUserAdd: [guildScheduledEvent: GuildScheduledEvent | PartialGuildScheduledEvent, user: User];
guildScheduledEventUserRemove: [guildScheduledEvent: GuildScheduledEvent | PartialGuildScheduledEvent, user: User];
}
export interface ClientFetchInviteOptions {
@@ -6149,6 +6158,9 @@ export interface PartialMessage
export interface PartialMessageReaction extends Partialize<MessageReaction, 'count'> {}
export interface PartialGuildScheduledEvent
extends Partialize<GuildScheduledEvent, 'userCount', 'status' | 'privacyLevel' | 'name' | 'entityType'> {}
export interface PartialThreadMember extends Partialize<ThreadMember, 'flags' | 'joinedAt' | 'joinedTimestamp'> {}
export interface PartialOverwriteData {