Class: ThreadiverseClient
Defined in: src/ThreadiverseClient.ts:49
Extends
Constructors
Constructor
new ThreadiverseClient(hostname, options?): ThreadiverseClient;Defined in: src/ThreadiverseClient.ts:109
Parameters
| Parameter | Type |
|---|---|
hostname | string |
options | ThreadiverseClientOptions |
Returns
ThreadiverseClient
Inherited from
Accessors
supportedSoftware
Get Signature
get static supportedSoftware(): readonly [AnyClient, AnyClient, AnyClient];Defined in: src/ThreadiverseClient.ts:55
Important: First match wins.
Returns
readonly [AnyClient, AnyClient, AnyClient]
mode
Get Signature
get mode(): ThreadiverseMode;Defined in: src/ThreadiverseClient.ts:74
Which compat mode the client selected. Sync — requires an established connection (await connect(), or any resolved API call).
Returns
software
Get Signature
get software(): ProviderInfo;Defined in: src/ThreadiverseClient.ts:84
The instance's software as reported by nodeinfo. Sync — requires an established connection (await connect(), or any resolved API call).
Returns
Methods
banFromCommunity()
abstract banFromCommunity(payload, options?): Promise<void>;Defined in: src/BaseClient.ts:27
Parameters
| Parameter | Type |
|---|---|
payload | BanFromCommunity |
options? | RequestOptions |
Returns
Promise<void>
Inherited from
blockCommunity()
abstract blockCommunity(payload, options?): Promise<{
community_view: CommunityView;
}>;Defined in: src/BaseClient.ts:32
Parameters
| Parameter | Type |
|---|---|
payload | { block: boolean; community_id: number; } |
payload.block | boolean |
payload.community_id? | number |
options? | RequestOptions |
Returns
Promise<{ community_view: CommunityView; }>
Inherited from
blockInstance()
abstract blockInstance(payload, options?): Promise<void>;Defined in: src/BaseClient.ts:37
Parameters
| Parameter | Type |
|---|---|
payload | { block: boolean; instance_id: number; } |
payload.block | boolean |
payload.instance_id? | number |
options? | RequestOptions |
Returns
Promise<void>
Inherited from
blockPerson()
abstract blockPerson(payload, options?): Promise<{
person_view: PersonView;
}>;Defined in: src/BaseClient.ts:42
Parameters
| Parameter | Type |
|---|---|
payload | { block: boolean; person_id: number; } |
payload.block | boolean |
payload.person_id? | number |
options? | RequestOptions |
Returns
Promise<{ person_view: PersonView; }>
Inherited from
createComment()
abstract createComment(payload, options?): Promise<{
comment_view: CommentView;
}>;Defined in: src/BaseClient.ts:47
Parameters
| Parameter | Type |
|---|---|
payload | CreateComment |
options? | RequestOptions |
Returns
Promise<{ comment_view: CommentView; }>
Inherited from
createCommentReport()
abstract createCommentReport(payload, options?): Promise<void>;Defined in: src/BaseClient.ts:52
Parameters
| Parameter | Type |
|---|---|
payload | { comment_id: number; reason: string; } |
payload.comment_id | number |
payload.reason? | string |
options? | RequestOptions |
Returns
Promise<void>
Inherited from
BaseClient.createCommentReport
createPost()
abstract createPost(payload, options?): Promise<{
post_view: PostView;
}>;Defined in: src/BaseClient.ts:57
Parameters
| Parameter | Type |
|---|---|
payload | CreatePost |
options? | RequestOptions |
Returns
Promise<{ post_view: PostView; }>
Inherited from
createPostReport()
abstract createPostReport(payload, options?): Promise<void>;Defined in: src/BaseClient.ts:62
Parameters
| Parameter | Type |
|---|---|
payload | { post_id: number; reason: string; } |
payload.post_id | number |
payload.reason? | string |
options? | RequestOptions |
Returns
Promise<void>
Inherited from
createPrivateMessage()
abstract createPrivateMessage(payload, options?): Promise<{
private_message_view: PrivateMessageView;
}>;Defined in: src/BaseClient.ts:67
Parameters
| Parameter | Type |
|---|---|
payload | { content: string; recipient_id: number; } |
payload.content | string |
payload.recipient_id? | number |
options? | RequestOptions |
Returns
Promise<{ private_message_view: PrivateMessageView; }>
Inherited from
BaseClient.createPrivateMessage
createPrivateMessageReport()
abstract createPrivateMessageReport(payload, options?): Promise<void>;Defined in: src/BaseClient.ts:72
Parameters
| Parameter | Type |
|---|---|
payload | { private_message_id: number; reason: string; } |
payload.private_message_id | number |
payload.reason? | string |
options? | RequestOptions |
Returns
Promise<void>
Inherited from
BaseClient.createPrivateMessageReport
deleteComment()
abstract deleteComment(payload, options?): Promise<{
comment_view: CommentView;
}>;Defined in: src/BaseClient.ts:77
Parameters
| Parameter | Type |
|---|---|
payload | { comment_id: number; deleted: boolean; } |
payload.comment_id | number |
payload.deleted? | boolean |
options? | RequestOptions |
Returns
Promise<{ comment_view: CommentView; }>
Inherited from
deleteImage()
abstract deleteImage(payload, options?): Promise<void>;Defined in: src/BaseClient.ts:82
Parameters
| Parameter | Type |
|---|---|
payload | { delete_token: string; url: string; } |
payload.delete_token | string |
payload.url? | string |
options? | RequestOptions |
Returns
Promise<void>
Inherited from
deletePost()
abstract deletePost(payload, options?): Promise<{
post_view: PostView;
}>;Defined in: src/BaseClient.ts:87
Parameters
| Parameter | Type |
|---|---|
payload | { deleted: boolean; post_id: number; } |
payload.deleted | boolean |
payload.post_id? | number |
options? | RequestOptions |
Returns
Promise<{ post_view: PostView; }>
Inherited from
distinguishComment()
abstract distinguishComment(payload, options?): Promise<{
comment_view: CommentView;
}>;Defined in: src/BaseClient.ts:92
Parameters
| Parameter | Type |
|---|---|
payload | { comment_id: number; distinguished: boolean; } |
payload.comment_id | number |
payload.distinguished? | boolean |
options? | RequestOptions |
Returns
Promise<{ comment_view: CommentView; }>
Inherited from
editComment()
abstract editComment(payload, options?): Promise<{
comment_view: CommentView;
}>;Defined in: src/BaseClient.ts:97
Parameters
| Parameter | Type |
|---|---|
payload | EditComment |
options? | RequestOptions |
Returns
Promise<{ comment_view: CommentView; }>
Inherited from
editCommunityNotifications()
abstract editCommunityNotifications(payload, options?): Promise<void>;Defined in: src/BaseClient.ts:102
Parameters
| Parameter | Type |
|---|---|
payload | EditCommunityNotifications |
options? | RequestOptions |
Returns
Promise<void>
Inherited from
BaseClient.editCommunityNotifications
editPost()
abstract editPost(payload, options?): Promise<{
post_view: PostView;
}>;Defined in: src/BaseClient.ts:107
Parameters
| Parameter | Type |
|---|---|
payload | EditPost |
options? | RequestOptions |
Returns
Promise<{ post_view: PostView; }>
Inherited from
editPostNotifications()
abstract editPostNotifications(payload, options?): Promise<void>;Defined in: src/BaseClient.ts:112
Parameters
| Parameter | Type |
|---|---|
payload | EditPostNotifications |
options? | RequestOptions |
Returns
Promise<void>
Inherited from
BaseClient.editPostNotifications
featurePost()
abstract featurePost(payload, options?): Promise<{
post_view: PostView;
}>;Defined in: src/BaseClient.ts:117
Parameters
| Parameter | Type |
|---|---|
payload | { feature_type: "local" | "community"; featured: boolean; post_id: number; } |
payload.feature_type | "local" | "community" |
payload.featured? | boolean |
payload.post_id? | number |
options? | RequestOptions |
Returns
Promise<{ post_view: PostView; }>
Inherited from
followCommunity()
abstract followCommunity(payload, options?): Promise<{
community_view: CommunityView;
}>;Defined in: src/BaseClient.ts:126
Parameters
| Parameter | Type |
|---|---|
payload | { community_id: number; follow: boolean; } |
payload.community_id | number |
payload.follow? | boolean |
options? | RequestOptions |
Returns
Promise<{ community_view: CommunityView; }>
Inherited from
getCaptcha()
abstract getCaptcha(options?): Promise<GetCaptchaResponse>;Defined in: src/BaseClient.ts:131
Parameters
| Parameter | Type |
|---|---|
options? | RequestOptions |
Returns
Promise<GetCaptchaResponse>
Inherited from
getComments()
abstract getComments(payload, options?): Promise<ListCommentsResponse>;Defined in: src/BaseClient.ts:135
Parameters
| Parameter | Type |
|---|---|
payload | GetComments |
options? | RequestOptions |
Returns
Promise<ListCommentsResponse>
Inherited from
getCommunity()
abstract getCommunity(payload, options?): Promise<GetCommunityResponse>;Defined in: src/BaseClient.ts:140
Parameters
| Parameter | Type |
|---|---|
payload | GetCommunity |
options? | RequestOptions |
Returns
Promise<GetCommunityResponse>
Inherited from
getFederatedInstances()
abstract getFederatedInstances(options?): Promise<{
federated_instances?: FederatedInstances;
}>;Defined in: src/BaseClient.ts:145
Parameters
| Parameter | Type |
|---|---|
options? | RequestOptions |
Returns
Promise<{ federated_instances?: FederatedInstances; }>
Inherited from
BaseClient.getFederatedInstances
getModlog()
abstract getModlog(payload, options?): Promise<ListModlogResponse>;Defined in: src/BaseClient.ts:149
Parameters
| Parameter | Type |
|---|---|
payload | GetModlog |
options? | RequestOptions |
Returns
Promise<ListModlogResponse>
Inherited from
getNotifications()
abstract getNotifications(payload, options?): Promise<ListNotificationsResponse>;Defined in: src/BaseClient.ts:154
Parameters
| Parameter | Type |
|---|---|
payload | GetNotifications |
options? | RequestOptions |
Returns
Promise<ListNotificationsResponse>
Inherited from
getPersonDetails()
abstract getPersonDetails(payload, options?): Promise<GetPersonDetailsResponse>;Defined in: src/BaseClient.ts:159
Parameters
| Parameter | Type |
|---|---|
payload | | { person_id: number; } | { username: string; } |
options? | RequestOptions |
Returns
Promise<GetPersonDetailsResponse>
Inherited from
getPost()
abstract getPost(payload, options?): Promise<{
post_view: PostView;
}>;Defined in: src/BaseClient.ts:164
Parameters
| Parameter | Type |
|---|---|
payload | GetPost |
options? | RequestOptions |
Returns
Promise<{ post_view: PostView; }>
Inherited from
getPosts()
abstract getPosts(payload, options?): Promise<ListPostsResponse>;Defined in: src/BaseClient.ts:169
Parameters
| Parameter | Type |
|---|---|
payload | GetPosts |
options? | RequestOptions |
Returns
Promise<ListPostsResponse>
Inherited from
getRandomCommunity()
abstract getRandomCommunity(payload, options?): Promise<{
community_view: CommunityView;
}>;Defined in: src/BaseClient.ts:174
Parameters
| Parameter | Type |
|---|---|
payload | { type_: "local" | "subscribed" | "all" | "moderator_view"; } |
payload.type_ | "local" | "subscribed" | "all" | "moderator_view" |
options? | RequestOptions |
Returns
Promise<{ community_view: CommunityView; }>
Inherited from
getSite()
abstract getSite(options?): Promise<GetSiteResponse>;Defined in: src/BaseClient.ts:179
Parameters
| Parameter | Type |
|---|---|
options? | RequestOptions |
Returns
Promise<GetSiteResponse>
Inherited from
getSiteMetadata()
abstract getSiteMetadata(payload, options?): Promise<GetSiteMetadataResponse>;Defined in: src/BaseClient.ts:181
Parameters
| Parameter | Type |
|---|---|
payload | { url: string; } |
payload.url | string |
options? | RequestOptions |
Returns
Promise<GetSiteMetadataResponse>
Inherited from
getUnreadCount()
abstract getUnreadCount(options?): Promise<GetUnreadCountResponse>;Defined in: src/BaseClient.ts:186
Parameters
| Parameter | Type |
|---|---|
options? | RequestOptions |
Returns
Promise<GetUnreadCountResponse>
Inherited from
likeComment()
abstract likeComment(payload, options?): Promise<{
comment_view: CommentView;
}>;Defined in: src/BaseClient.ts:190
Parameters
| Parameter | Type |
|---|---|
payload | { comment_id: number; is_upvote?: boolean; } |
payload.comment_id | number |
payload.is_upvote? | boolean |
options? | RequestOptions |
Returns
Promise<{ comment_view: CommentView; }>
Inherited from
likePost()
abstract likePost(payload, options?): Promise<{
post_view: PostView;
}>;Defined in: src/BaseClient.ts:195
Parameters
| Parameter | Type |
|---|---|
payload | { is_upvote?: boolean; post_id: number; } |
payload.is_upvote? | boolean |
payload.post_id? | number |
options? | RequestOptions |
Returns
Promise<{ post_view: PostView; }>
Inherited from
listCommentReports()
abstract listCommentReports(payload, options?): Promise<ListCommentReportsResponse>;Defined in: src/BaseClient.ts:200
Parameters
| Parameter | Type |
|---|---|
payload | PageParams & object |
options? | RequestOptions |
Returns
Promise<ListCommentReportsResponse>
Inherited from
listCommunities()
abstract listCommunities(payload, options?): Promise<ListCommunitiesResponse>;Defined in: src/BaseClient.ts:205
Parameters
| Parameter | Type |
|---|---|
payload | ListCommunities |
options? | RequestOptions |
Returns
Promise<ListCommunitiesResponse>
Inherited from
listPersonContent()
abstract listPersonContent(payload, options?): Promise<ListPersonContentResponse>;Defined in: src/BaseClient.ts:210
Parameters
| Parameter | Type |
|---|---|
payload | ListPersonContent |
options? | RequestOptions |
Returns
Promise<ListPersonContentResponse>
Inherited from
listPersonLiked()
abstract listPersonLiked(payload, options?): Promise<ListPersonLikedResponse>;Defined in: src/BaseClient.ts:215
Parameters
| Parameter | Type |
|---|---|
payload | PageParams & object |
options? | RequestOptions |
Returns
Promise<ListPersonLikedResponse>
Inherited from
listPersonSaved()
abstract listPersonSaved(payload, options?): Promise<ListPersonContentResponse>;Defined in: src/BaseClient.ts:220
Parameters
| Parameter | Type |
|---|---|
payload | PageParams & object |
options? | RequestOptions |
Returns
Promise<ListPersonContentResponse>
Inherited from
listPostReports()
abstract listPostReports(payload, options?): Promise<ListPostReportsResponse>;Defined in: src/BaseClient.ts:225
Parameters
| Parameter | Type |
|---|---|
payload | PageParams & object |
options? | RequestOptions |
Returns
Promise<ListPostReportsResponse>
Inherited from
listReports()
abstract listReports(payload, options?): Promise<ListReportsResponse>;Defined in: src/BaseClient.ts:230
Parameters
| Parameter | Type |
|---|---|
payload | ListReports |
options? | RequestOptions |
Returns
Promise<ListReportsResponse>
Inherited from
lockPost()
abstract lockPost(payload, options?): Promise<{
post_view: PostView;
}>;Defined in: src/BaseClient.ts:235
Parameters
| Parameter | Type |
|---|---|
payload | { locked: boolean; post_id: number; } |
payload.locked | boolean |
payload.post_id? | number |
options? | RequestOptions |
Returns
Promise<{ post_view: PostView; }>
Inherited from
login()
abstract login(payload, options?): Promise<{
jwt?: string;
}>;Defined in: src/BaseClient.ts:240
Parameters
| Parameter | Type |
|---|---|
payload | { password: string; totp_2fa_token?: string; username_or_email: string; } |
payload.password | string |
payload.totp_2fa_token? | string |
payload.username_or_email? | string |
options? | RequestOptions |
Returns
Promise<{ jwt?: string; }>
Inherited from
logout()
abstract logout(options?): Promise<void>;Defined in: src/BaseClient.ts:249
Parameters
| Parameter | Type |
|---|---|
options? | RequestOptions |
Returns
Promise<void>
Inherited from
markAllAsRead()
abstract markAllAsRead(options?): Promise<void>;Defined in: src/BaseClient.ts:251
Parameters
| Parameter | Type |
|---|---|
options? | RequestOptions |
Returns
Promise<void>
Inherited from
markNotificationAsRead()
abstract markNotificationAsRead(payload, options?): Promise<void>;Defined in: src/BaseClient.ts:253
Parameters
| Parameter | Type |
|---|---|
payload | { kind: "subscribed" | "reply" | "mention" | "private_message" | "mod_action"; notification_id: number; read: boolean; } |
payload.kind | "subscribed" | "reply" | "mention" | "private_message" | "mod_action" |
payload.notification_id? | number |
payload.read? | boolean |
options? | RequestOptions |
Returns
Promise<void>
Inherited from
BaseClient.markNotificationAsRead
markPostAsRead()
abstract markPostAsRead(payload, options?): Promise<void>;Defined in: src/BaseClient.ts:262
Parameters
| Parameter | Type |
|---|---|
payload | { post_ids: number[]; read: boolean; } |
payload.post_ids | number[] |
payload.read? | boolean |
options? | RequestOptions |
Returns
Promise<void>
Inherited from
register()
abstract register(payload, options?): Promise<LoginResponse>;Defined in: src/BaseClient.ts:267
Parameters
| Parameter | Type |
|---|---|
payload | Register |
options? | RequestOptions |
Returns
Promise<LoginResponse>
Inherited from
removeComment()
abstract removeComment(payload, options?): Promise<{
comment_view: CommentView;
}>;Defined in: src/BaseClient.ts:272
Parameters
| Parameter | Type |
|---|---|
payload | { comment_id: number; reason?: string; removed: boolean; } |
payload.comment_id | number |
payload.reason? | string |
payload.removed? | boolean |
options? | RequestOptions |
Returns
Promise<{ comment_view: CommentView; }>
Inherited from
removePost()
abstract removePost(payload, options?): Promise<{
post_view: PostView;
}>;Defined in: src/BaseClient.ts:277
Parameters
| Parameter | Type |
|---|---|
payload | { post_id: number; reason?: string; removed: boolean; } |
payload.post_id | number |
payload.reason? | string |
payload.removed? | boolean |
options? | RequestOptions |
Returns
Promise<{ post_view: PostView; }>
Inherited from
resolveCommentReport()
abstract resolveCommentReport(payload, options?): Promise<void>;Defined in: src/BaseClient.ts:282
Parameters
| Parameter | Type |
|---|---|
payload | { report_id: number; resolved: boolean; } |
payload.report_id | number |
payload.resolved? | boolean |
options? | RequestOptions |
Returns
Promise<void>
Inherited from
BaseClient.resolveCommentReport
resolveObject()
abstract resolveObject(payload, options?): Promise<ResolveObjectResponse>;Defined in: src/BaseClient.ts:287
Parameters
| Parameter | Type |
|---|---|
payload | { q: string; } |
payload.q | string |
options? | RequestOptions |
Returns
Promise<ResolveObjectResponse>
Inherited from
resolvePostReport()
abstract resolvePostReport(payload, options?): Promise<void>;Defined in: src/BaseClient.ts:294
Parameters
| Parameter | Type |
|---|---|
payload | { report_id: number; resolved: boolean; } |
payload.report_id | number |
payload.resolved? | boolean |
options? | RequestOptions |
Returns
Promise<void>
Inherited from
saveComment()
abstract saveComment(payload, options?): Promise<{
comment_view: CommentView;
}>;Defined in: src/BaseClient.ts:299
Parameters
| Parameter | Type |
|---|---|
payload | { comment_id: number; save: boolean; } |
payload.comment_id | number |
payload.save? | boolean |
options? | RequestOptions |
Returns
Promise<{ comment_view: CommentView; }>
Inherited from
savePost()
abstract savePost(payload, options?): Promise<{
post_view: PostView;
}>;Defined in: src/BaseClient.ts:304
Parameters
| Parameter | Type |
|---|---|
payload | { post_id: number; save: boolean; } |
payload.post_id | number |
payload.save? | boolean |
options? | RequestOptions |
Returns
Promise<{ post_view: PostView; }>
Inherited from
saveUserSettings()
abstract saveUserSettings(payload, options?): Promise<void>;Defined in: src/BaseClient.ts:309
Parameters
| Parameter | Type |
|---|---|
payload | { show_nsfw: boolean; } |
payload.show_nsfw | boolean |
options? | RequestOptions |
Returns
Promise<void>
Inherited from
search()
abstract search(payload, options?): Promise<ListSearchResponse>;Defined in: src/BaseClient.ts:314
Parameters
| Parameter | Type |
|---|---|
payload | Search |
options? | RequestOptions |
Returns
Promise<ListSearchResponse>
Inherited from
uploadImage()
abstract uploadImage(payload, options?): Promise<UploadImageResponse>;Defined in: src/BaseClient.ts:319
Parameters
| Parameter | Type |
|---|---|
payload | { image: File; } |
payload.image | File |
options? | RequestOptions |
Returns
Promise<UploadImageResponse>
Inherited from
resolveClient()
static resolveClient(software): AnyClient | undefined;Defined in: src/ThreadiverseClient.ts:115
Parameters
| Parameter | Type |
|---|---|
software | { name: string; version: string; } |
software.name | string |
software.version | string |
Returns
AnyClient | undefined
connect()
connect(): Promise<ClientConnection>;Defined in: src/ThreadiverseClient.ts:134
Resolve the instance's software (cached nodeinfo discovery) and prepare the underlying provider. Idempotent; after it resolves, the sync mode and software getters work. Any API call connects implicitly — use this when you need introspection before (or without) making requests.
Returns
Promise<ClientConnection>
