feat: Add channel property to HydratedMessage and HydratedContext types

This commit is contained in:
2025-02-15 12:00:28 -06:00
parent 817e37c4e4
commit b4a8f412a1
2 changed files with 5 additions and 2 deletions
+2
View File
@@ -4,6 +4,7 @@ import { hydrate, hydrator, type Hydrateable, type Hydrated } from "../services/
import { isNil, exists } from "../utils";
import { fromDiscord, InteractionResponseType, type Expectation } from "./common";
import type { Guild } from "./guild";
import { Channel } from "./channel";
import type { InteractionPayload } from "./handler";
import { type DiscordMessage, Message, type MessagePayload } from "./message";
/**
@@ -28,6 +29,7 @@ import { type DiscordMessage, Message, type MessagePayload } from "./message";
export type HydratedContext<T extends Array<Expectation>> = Context & {
guild: Extract<Expectation.Guild, T[number]> extends never ? undefined : Guild;
message: Extract<Expectation.Message, T[number]> extends never ? undefined : Message;
channel: Extract<Expectation.Channel, T[number]> extends never ? undefined : Channel;
};
export type ContextData =
+2 -1
View File
@@ -3,6 +3,7 @@ import { GatewayObject } from './base';
import { fromDiscord, Trait, type Expectation, type Expects } from './common';
import type { Embed } from './embed';
import type { Guild } from './guild';
import { Channel } from './channel';
import { type DiscordUser, User } from './user';
export type Component = Partial<Button | SelectMenu> & {
@@ -88,7 +89,7 @@ export enum ComponentType {
}
export type HydratedMessage<T extends Array<Expectation>> = MessagePayload & {
// channel: Extract<Expectation.Channel, T[number]> extends never ? undefined : Channel;
channel: Extract<Expectation.Channel, T[number]> extends never ? undefined : Channel;
reference: Extract<Expectation.Message, T[number]> extends never ? undefined : MessagePayload;
guild: Extract<Expectation.Guild, T[number]> extends never ? undefined : Guild;
}