Skip to content

Commit c5b39ce

Browse files
authored
feat: add Tweet and SimplifiedTweet to UserResolvable (#72)
1 parent 2c213b7 commit c5b39ce

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

src/managers/UserManager.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,11 @@ import {
1111
UserUnfollowResponse,
1212
UserUnmuteResponse,
1313
User,
14+
Tweet,
1415
SimplifiedUser,
16+
SimplifiedTweet,
1517
} from '../structures';
1618
import type { Client } from '../client';
17-
import type { Tweet } from '../structures';
1819
import type {
1920
UserManagerFetchByUsernameResult,
2021
UserManagerFetchResult,
@@ -69,6 +70,9 @@ export class UserManager extends BaseManager<Snowflake, UserResolvable, User> {
6970
const user = super.resolve(userResolvable);
7071
if (user) return user;
7172
if (userResolvable instanceof SimplifiedUser) return super.resolve(userResolvable.id);
73+
if (userResolvable instanceof Tweet || userResolvable instanceof SimplifiedTweet) {
74+
return userResolvable.authorId ? super.resolve(userResolvable.authorId) : null;
75+
}
7276
return null;
7377
}
7478

@@ -81,6 +85,7 @@ export class UserManager extends BaseManager<Snowflake, UserResolvable, User> {
8185
const userId = super.resolveId(userResolvable);
8286
if (typeof userId === 'string') return userId;
8387
if (userResolvable instanceof SimplifiedUser) return userResolvable.id;
88+
if (userResolvable instanceof Tweet || userResolvable instanceof SimplifiedTweet) return userResolvable.authorId;
8489
return null;
8590
}
8691

src/typings/Types.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ export type UserManagerFetchResult<T extends FetchUserOptions | FetchUsersOption
4747
export type UserManagerFetchByUsernameResult<T extends FetchUserByUsernameOptions | FetchUsersByUsernamesOptions> =
4848
T extends FetchUserByUsernameOptions ? User : Collection<Snowflake, User>;
4949

50-
export type UserResolvable = User | SimplifiedUser | Snowflake;
50+
export type UserResolvable = User | SimplifiedUser | Tweet | SimplifiedTweet | Snowflake;
5151

5252
export type TweetManagerFetchResult<T extends FetchTweetOptions | FetchTweetsOptions> = T extends FetchTweetOptions
5353
? Tweet

0 commit comments

Comments
 (0)