@foru-ms/sdk 2.1.9 → 2.1.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/dist/cjs/BaseClient.js +2 -2
  2. package/dist/cjs/api/resources/posts/types/RetrievePostPostsResponse.d.ts +21 -2
  3. package/dist/cjs/api/resources/posts/types/RetrievePostPostsResponse.js +2 -2
  4. package/dist/cjs/api/resources/posts/types/RetrieveReactionPostsResponse.d.ts +19 -0
  5. package/dist/cjs/api/resources/posts/types/UpdatePostsResponse.d.ts +21 -2
  6. package/dist/cjs/api/resources/posts/types/UpdatePostsResponse.js +2 -2
  7. package/dist/cjs/api/resources/tags/types/RetrieveSubscriberTagsResponse.d.ts +19 -0
  8. package/dist/cjs/api/resources/threads/types/RetrievePostThreadsResponse.d.ts +21 -2
  9. package/dist/cjs/api/resources/threads/types/RetrievePostThreadsResponse.js +2 -2
  10. package/dist/cjs/api/resources/threads/types/RetrieveReactionThreadsResponse.d.ts +19 -0
  11. package/dist/cjs/api/resources/threads/types/RetrieveSubscriberThreadsResponse.d.ts +19 -0
  12. package/dist/cjs/api/resources/threads/types/UpdateThreadsResponse.d.ts +53 -11
  13. package/dist/cjs/api/resources/threads/types/UpdateThreadsResponse.js +2 -2
  14. package/dist/cjs/api/resources/users/client/Client.d.ts +19 -0
  15. package/dist/cjs/api/resources/users/client/Client.js +66 -0
  16. package/dist/cjs/api/resources/users/client/requests/CreateFollowerUsersRequest.d.ts +10 -0
  17. package/dist/cjs/api/resources/users/client/requests/CreateFollowerUsersRequest.js +3 -0
  18. package/dist/cjs/api/resources/users/client/requests/index.d.ts +1 -0
  19. package/dist/cjs/api/resources/users/types/RetrieveFollowerUsersResponse.d.ts +19 -0
  20. package/dist/cjs/api/resources/users/types/RetrieveFollowingUsersResponse.d.ts +19 -0
  21. package/dist/cjs/api/resources/users/types/UpdateUsersResponse.d.ts +1 -0
  22. package/dist/cjs/api/types/LoginResponse.d.ts +1 -0
  23. package/dist/cjs/api/types/MeResponse.d.ts +1 -0
  24. package/dist/cjs/api/types/Post.d.ts +21 -2
  25. package/dist/cjs/api/types/Post.js +2 -2
  26. package/dist/cjs/api/types/PostListResponse.d.ts +21 -2
  27. package/dist/cjs/api/types/PostListResponse.js +2 -2
  28. package/dist/cjs/api/types/PostPost.d.ts +21 -2
  29. package/dist/cjs/api/types/PostPost.js +2 -2
  30. package/dist/cjs/api/types/PostPostListResponse.d.ts +21 -2
  31. package/dist/cjs/api/types/PostPostListResponse.js +2 -2
  32. package/dist/cjs/api/types/PostPostResponse.d.ts +21 -2
  33. package/dist/cjs/api/types/PostPostResponse.js +2 -2
  34. package/dist/cjs/api/types/PostReaction.d.ts +19 -0
  35. package/dist/cjs/api/types/PostReactionListResponse.d.ts +19 -0
  36. package/dist/cjs/api/types/PostReactionResponse.d.ts +19 -0
  37. package/dist/cjs/api/types/PostResponse.d.ts +21 -2
  38. package/dist/cjs/api/types/PostResponse.js +2 -2
  39. package/dist/cjs/api/types/RegisterResponse.d.ts +1 -0
  40. package/dist/cjs/api/types/TagSubscriber.d.ts +19 -0
  41. package/dist/cjs/api/types/TagSubscriberListResponse.d.ts +19 -0
  42. package/dist/cjs/api/types/TagSubscriberResponse.d.ts +19 -0
  43. package/dist/cjs/api/types/Thread.d.ts +41 -6
  44. package/dist/cjs/api/types/Thread.js +2 -2
  45. package/dist/cjs/api/types/ThreadListResponse.d.ts +53 -11
  46. package/dist/cjs/api/types/ThreadListResponse.js +2 -2
  47. package/dist/cjs/api/types/ThreadPoll.d.ts +2 -6
  48. package/dist/cjs/api/types/ThreadPollListResponse.d.ts +2 -6
  49. package/dist/cjs/api/types/ThreadPollResponse.d.ts +2 -6
  50. package/dist/cjs/api/types/ThreadPost.d.ts +21 -2
  51. package/dist/cjs/api/types/ThreadPost.js +2 -2
  52. package/dist/cjs/api/types/ThreadPostListResponse.d.ts +21 -2
  53. package/dist/cjs/api/types/ThreadPostListResponse.js +2 -2
  54. package/dist/cjs/api/types/ThreadPostResponse.d.ts +21 -2
  55. package/dist/cjs/api/types/ThreadPostResponse.js +2 -2
  56. package/dist/cjs/api/types/ThreadReaction.d.ts +19 -0
  57. package/dist/cjs/api/types/ThreadReactionListResponse.d.ts +19 -0
  58. package/dist/cjs/api/types/ThreadReactionResponse.d.ts +19 -0
  59. package/dist/cjs/api/types/ThreadResponse.d.ts +53 -11
  60. package/dist/cjs/api/types/ThreadResponse.js +2 -2
  61. package/dist/cjs/api/types/ThreadSubscriber.d.ts +19 -0
  62. package/dist/cjs/api/types/ThreadSubscriberListResponse.d.ts +19 -0
  63. package/dist/cjs/api/types/ThreadSubscriberResponse.d.ts +19 -0
  64. package/dist/cjs/api/types/User.d.ts +1 -0
  65. package/dist/cjs/api/types/UserFollower.d.ts +19 -0
  66. package/dist/cjs/api/types/UserFollowerCreate.d.ts +4 -0
  67. package/dist/cjs/api/types/UserFollowerCreate.js +3 -0
  68. package/dist/cjs/api/types/UserFollowerListResponse.d.ts +19 -0
  69. package/dist/cjs/api/types/UserFollowerResponse.d.ts +19 -0
  70. package/dist/cjs/api/types/UserFollowing.d.ts +19 -0
  71. package/dist/cjs/api/types/UserFollowingListResponse.d.ts +19 -0
  72. package/dist/cjs/api/types/UserFollowingResponse.d.ts +19 -0
  73. package/dist/cjs/api/types/UserListResponse.d.ts +1 -0
  74. package/dist/cjs/api/types/UserResponse.d.ts +1 -0
  75. package/dist/cjs/api/types/index.d.ts +1 -0
  76. package/dist/cjs/api/types/index.js +1 -0
  77. package/dist/cjs/version.d.ts +1 -1
  78. package/dist/cjs/version.js +1 -1
  79. package/dist/esm/BaseClient.mjs +2 -2
  80. package/dist/esm/api/resources/posts/types/RetrievePostPostsResponse.d.mts +21 -2
  81. package/dist/esm/api/resources/posts/types/RetrievePostPostsResponse.mjs +2 -2
  82. package/dist/esm/api/resources/posts/types/RetrieveReactionPostsResponse.d.mts +19 -0
  83. package/dist/esm/api/resources/posts/types/UpdatePostsResponse.d.mts +21 -2
  84. package/dist/esm/api/resources/posts/types/UpdatePostsResponse.mjs +2 -2
  85. package/dist/esm/api/resources/tags/types/RetrieveSubscriberTagsResponse.d.mts +19 -0
  86. package/dist/esm/api/resources/threads/types/RetrievePostThreadsResponse.d.mts +21 -2
  87. package/dist/esm/api/resources/threads/types/RetrievePostThreadsResponse.mjs +2 -2
  88. package/dist/esm/api/resources/threads/types/RetrieveReactionThreadsResponse.d.mts +19 -0
  89. package/dist/esm/api/resources/threads/types/RetrieveSubscriberThreadsResponse.d.mts +19 -0
  90. package/dist/esm/api/resources/threads/types/UpdateThreadsResponse.d.mts +53 -11
  91. package/dist/esm/api/resources/threads/types/UpdateThreadsResponse.mjs +2 -2
  92. package/dist/esm/api/resources/users/client/Client.d.mts +19 -0
  93. package/dist/esm/api/resources/users/client/Client.mjs +66 -0
  94. package/dist/esm/api/resources/users/client/requests/CreateFollowerUsersRequest.d.mts +10 -0
  95. package/dist/esm/api/resources/users/client/requests/CreateFollowerUsersRequest.mjs +2 -0
  96. package/dist/esm/api/resources/users/client/requests/index.d.mts +1 -0
  97. package/dist/esm/api/resources/users/types/RetrieveFollowerUsersResponse.d.mts +19 -0
  98. package/dist/esm/api/resources/users/types/RetrieveFollowingUsersResponse.d.mts +19 -0
  99. package/dist/esm/api/resources/users/types/UpdateUsersResponse.d.mts +1 -0
  100. package/dist/esm/api/types/LoginResponse.d.mts +1 -0
  101. package/dist/esm/api/types/MeResponse.d.mts +1 -0
  102. package/dist/esm/api/types/Post.d.mts +21 -2
  103. package/dist/esm/api/types/Post.mjs +2 -2
  104. package/dist/esm/api/types/PostListResponse.d.mts +21 -2
  105. package/dist/esm/api/types/PostListResponse.mjs +2 -2
  106. package/dist/esm/api/types/PostPost.d.mts +21 -2
  107. package/dist/esm/api/types/PostPost.mjs +2 -2
  108. package/dist/esm/api/types/PostPostListResponse.d.mts +21 -2
  109. package/dist/esm/api/types/PostPostListResponse.mjs +2 -2
  110. package/dist/esm/api/types/PostPostResponse.d.mts +21 -2
  111. package/dist/esm/api/types/PostPostResponse.mjs +2 -2
  112. package/dist/esm/api/types/PostReaction.d.mts +19 -0
  113. package/dist/esm/api/types/PostReactionListResponse.d.mts +19 -0
  114. package/dist/esm/api/types/PostReactionResponse.d.mts +19 -0
  115. package/dist/esm/api/types/PostResponse.d.mts +21 -2
  116. package/dist/esm/api/types/PostResponse.mjs +2 -2
  117. package/dist/esm/api/types/RegisterResponse.d.mts +1 -0
  118. package/dist/esm/api/types/TagSubscriber.d.mts +19 -0
  119. package/dist/esm/api/types/TagSubscriberListResponse.d.mts +19 -0
  120. package/dist/esm/api/types/TagSubscriberResponse.d.mts +19 -0
  121. package/dist/esm/api/types/Thread.d.mts +41 -6
  122. package/dist/esm/api/types/Thread.mjs +2 -2
  123. package/dist/esm/api/types/ThreadListResponse.d.mts +53 -11
  124. package/dist/esm/api/types/ThreadListResponse.mjs +2 -2
  125. package/dist/esm/api/types/ThreadPoll.d.mts +2 -6
  126. package/dist/esm/api/types/ThreadPollListResponse.d.mts +2 -6
  127. package/dist/esm/api/types/ThreadPollResponse.d.mts +2 -6
  128. package/dist/esm/api/types/ThreadPost.d.mts +21 -2
  129. package/dist/esm/api/types/ThreadPost.mjs +2 -2
  130. package/dist/esm/api/types/ThreadPostListResponse.d.mts +21 -2
  131. package/dist/esm/api/types/ThreadPostListResponse.mjs +2 -2
  132. package/dist/esm/api/types/ThreadPostResponse.d.mts +21 -2
  133. package/dist/esm/api/types/ThreadPostResponse.mjs +2 -2
  134. package/dist/esm/api/types/ThreadReaction.d.mts +19 -0
  135. package/dist/esm/api/types/ThreadReactionListResponse.d.mts +19 -0
  136. package/dist/esm/api/types/ThreadReactionResponse.d.mts +19 -0
  137. package/dist/esm/api/types/ThreadResponse.d.mts +53 -11
  138. package/dist/esm/api/types/ThreadResponse.mjs +2 -2
  139. package/dist/esm/api/types/ThreadSubscriber.d.mts +19 -0
  140. package/dist/esm/api/types/ThreadSubscriberListResponse.d.mts +19 -0
  141. package/dist/esm/api/types/ThreadSubscriberResponse.d.mts +19 -0
  142. package/dist/esm/api/types/User.d.mts +1 -0
  143. package/dist/esm/api/types/UserFollower.d.mts +19 -0
  144. package/dist/esm/api/types/UserFollowerCreate.d.mts +4 -0
  145. package/dist/esm/api/types/UserFollowerCreate.mjs +2 -0
  146. package/dist/esm/api/types/UserFollowerListResponse.d.mts +19 -0
  147. package/dist/esm/api/types/UserFollowerResponse.d.mts +19 -0
  148. package/dist/esm/api/types/UserFollowing.d.mts +19 -0
  149. package/dist/esm/api/types/UserFollowingListResponse.d.mts +19 -0
  150. package/dist/esm/api/types/UserFollowingResponse.d.mts +19 -0
  151. package/dist/esm/api/types/UserListResponse.d.mts +1 -0
  152. package/dist/esm/api/types/UserResponse.d.mts +1 -0
  153. package/dist/esm/api/types/index.d.mts +1 -0
  154. package/dist/esm/api/types/index.mjs +1 -0
  155. package/dist/esm/version.d.mts +1 -1
  156. package/dist/esm/version.mjs +1 -1
  157. package/package.json +1 -1
  158. package/reference.md +65 -0
@@ -43,8 +43,8 @@ function normalizeClientOptions(options) {
43
43
  const headers = (0, headers_js_1.mergeHeaders)({
44
44
  "X-Fern-Language": "JavaScript",
45
45
  "X-Fern-SDK-Name": "@foru-ms/sdk",
46
- "X-Fern-SDK-Version": "2.1.9",
47
- "User-Agent": "@foru-ms/sdk/2.1.9",
46
+ "X-Fern-SDK-Version": "2.1.11",
47
+ "User-Agent": "@foru-ms/sdk/2.1.11",
48
48
  "X-Fern-Runtime": core.RUNTIME.type,
49
49
  "X-Fern-Runtime-Version": core.RUNTIME.version,
50
50
  }, options === null || options === void 0 ? void 0 : options.headers);
@@ -18,11 +18,30 @@ export declare namespace RetrievePostPostsResponse {
18
18
  interface User {
19
19
  id: string;
20
20
  username: string;
21
+ /** Display name */
21
22
  displayName: string | null;
23
+ /** User bio */
22
24
  bio: string | null;
25
+ /** Forum signature */
26
+ signature: string | null;
27
+ /** User website URL */
23
28
  url: string | null;
29
+ /** Total posts by user */
30
+ postsCount?: number;
31
+ /** Total threads by user */
32
+ threadsCount?: number;
33
+ /** Online status */
24
34
  isOnline: boolean | null;
35
+ /** Last activity timestamp */
36
+ lastSeenAt: string | null;
37
+ /** User roles */
25
38
  roles?: User.Roles.Item[];
39
+ /** Custom user data */
40
+ extendedData: Record<string, unknown> | null;
41
+ /** Account creation timestamp */
42
+ createdAt: string;
43
+ /** Profile last update timestamp */
44
+ updatedAt: string;
26
45
  }
27
46
  namespace User {
28
47
  type Roles = Roles.Item[];
@@ -45,10 +64,10 @@ export declare namespace RetrievePostPostsResponse {
45
64
  }
46
65
  namespace Item {
47
66
  const Type: {
48
- readonly Upvote: "UPVOTE";
49
- readonly Downvote: "DOWNVOTE";
50
67
  readonly Like: "LIKE";
51
68
  readonly Dislike: "DISLIKE";
69
+ readonly Upvote: "UPVOTE";
70
+ readonly Downvote: "DOWNVOTE";
52
71
  };
53
72
  type Type = (typeof Type)[keyof typeof Type];
54
73
  }
@@ -11,10 +11,10 @@ var RetrievePostPostsResponse;
11
11
  let Item;
12
12
  (function (Item) {
13
13
  Item.Type = {
14
- Upvote: "UPVOTE",
15
- Downvote: "DOWNVOTE",
16
14
  Like: "LIKE",
17
15
  Dislike: "DISLIKE",
16
+ Upvote: "UPVOTE",
17
+ Downvote: "DOWNVOTE",
18
18
  };
19
19
  })(Item = Reactions.Item || (Reactions.Item = {}));
20
20
  })(Reactions = Data.Reactions || (Data.Reactions = {}));
@@ -13,11 +13,30 @@ export declare namespace RetrieveReactionPostsResponse {
13
13
  interface User {
14
14
  id: string;
15
15
  username: string;
16
+ /** Display name */
16
17
  displayName: string | null;
18
+ /** User bio */
17
19
  bio: string | null;
20
+ /** Forum signature */
21
+ signature: string | null;
22
+ /** User website URL */
18
23
  url: string | null;
24
+ /** Total posts by user */
25
+ postsCount?: number;
26
+ /** Total threads by user */
27
+ threadsCount?: number;
28
+ /** Online status */
19
29
  isOnline: boolean | null;
30
+ /** Last activity timestamp */
31
+ lastSeenAt: string | null;
32
+ /** User roles */
20
33
  roles?: User.Roles.Item[];
34
+ /** Custom user data */
35
+ extendedData: Record<string, unknown> | null;
36
+ /** Account creation timestamp */
37
+ createdAt: string;
38
+ /** Profile last update timestamp */
39
+ updatedAt: string;
21
40
  }
22
41
  namespace User {
23
42
  type Roles = Roles.Item[];
@@ -31,11 +31,30 @@ export declare namespace UpdatePostsResponse {
31
31
  interface User {
32
32
  id: string;
33
33
  username: string;
34
+ /** Display name */
34
35
  displayName: string | null;
36
+ /** User bio */
35
37
  bio: string | null;
38
+ /** Forum signature */
39
+ signature: string | null;
40
+ /** User website URL */
36
41
  url: string | null;
42
+ /** Total posts by user */
43
+ postsCount?: number;
44
+ /** Total threads by user */
45
+ threadsCount?: number;
46
+ /** Online status */
37
47
  isOnline: boolean | null;
48
+ /** Last activity timestamp */
49
+ lastSeenAt: string | null;
50
+ /** User roles */
38
51
  roles?: User.Roles.Item[];
52
+ /** Custom user data */
53
+ extendedData: Record<string, unknown> | null;
54
+ /** Account creation timestamp */
55
+ createdAt: string;
56
+ /** Profile last update timestamp */
57
+ updatedAt: string;
39
58
  }
40
59
  namespace User {
41
60
  type Roles = Roles.Item[];
@@ -58,10 +77,10 @@ export declare namespace UpdatePostsResponse {
58
77
  }
59
78
  namespace Item {
60
79
  const Type: {
61
- readonly Upvote: "UPVOTE";
62
- readonly Downvote: "DOWNVOTE";
63
80
  readonly Like: "LIKE";
64
81
  readonly Dislike: "DISLIKE";
82
+ readonly Upvote: "UPVOTE";
83
+ readonly Downvote: "DOWNVOTE";
65
84
  };
66
85
  type Type = (typeof Type)[keyof typeof Type];
67
86
  }
@@ -11,10 +11,10 @@ var UpdatePostsResponse;
11
11
  let Item;
12
12
  (function (Item) {
13
13
  Item.Type = {
14
- Upvote: "UPVOTE",
15
- Downvote: "DOWNVOTE",
16
14
  Like: "LIKE",
17
15
  Dislike: "DISLIKE",
16
+ Upvote: "UPVOTE",
17
+ Downvote: "DOWNVOTE",
18
18
  };
19
19
  })(Item = Reactions.Item || (Reactions.Item = {}));
20
20
  })(Reactions = Data.Reactions || (Data.Reactions = {}));
@@ -13,11 +13,30 @@ export declare namespace RetrieveSubscriberTagsResponse {
13
13
  interface User {
14
14
  id: string;
15
15
  username: string;
16
+ /** Display name */
16
17
  displayName: string | null;
18
+ /** User bio */
17
19
  bio: string | null;
20
+ /** Forum signature */
21
+ signature: string | null;
22
+ /** User website URL */
18
23
  url: string | null;
24
+ /** Total posts by user */
25
+ postsCount?: number;
26
+ /** Total threads by user */
27
+ threadsCount?: number;
28
+ /** Online status */
19
29
  isOnline: boolean | null;
30
+ /** Last activity timestamp */
31
+ lastSeenAt: string | null;
32
+ /** User roles */
20
33
  roles?: User.Roles.Item[];
34
+ /** Custom user data */
35
+ extendedData: Record<string, unknown> | null;
36
+ /** Account creation timestamp */
37
+ createdAt: string;
38
+ /** Profile last update timestamp */
39
+ updatedAt: string;
21
40
  }
22
41
  namespace User {
23
42
  type Roles = Roles.Item[];
@@ -18,11 +18,30 @@ export declare namespace RetrievePostThreadsResponse {
18
18
  interface User {
19
19
  id: string;
20
20
  username: string;
21
+ /** Display name */
21
22
  displayName: string | null;
23
+ /** User bio */
22
24
  bio: string | null;
25
+ /** Forum signature */
26
+ signature: string | null;
27
+ /** User website URL */
23
28
  url: string | null;
29
+ /** Total posts by user */
30
+ postsCount?: number;
31
+ /** Total threads by user */
32
+ threadsCount?: number;
33
+ /** Online status */
24
34
  isOnline: boolean | null;
35
+ /** Last activity timestamp */
36
+ lastSeenAt: string | null;
37
+ /** User roles */
25
38
  roles?: User.Roles.Item[];
39
+ /** Custom user data */
40
+ extendedData: Record<string, unknown> | null;
41
+ /** Account creation timestamp */
42
+ createdAt: string;
43
+ /** Profile last update timestamp */
44
+ updatedAt: string;
26
45
  }
27
46
  namespace User {
28
47
  type Roles = Roles.Item[];
@@ -45,10 +64,10 @@ export declare namespace RetrievePostThreadsResponse {
45
64
  }
46
65
  namespace Item {
47
66
  const Type: {
48
- readonly Upvote: "UPVOTE";
49
- readonly Downvote: "DOWNVOTE";
50
67
  readonly Like: "LIKE";
51
68
  readonly Dislike: "DISLIKE";
69
+ readonly Upvote: "UPVOTE";
70
+ readonly Downvote: "DOWNVOTE";
52
71
  };
53
72
  type Type = (typeof Type)[keyof typeof Type];
54
73
  }
@@ -11,10 +11,10 @@ var RetrievePostThreadsResponse;
11
11
  let Item;
12
12
  (function (Item) {
13
13
  Item.Type = {
14
- Upvote: "UPVOTE",
15
- Downvote: "DOWNVOTE",
16
14
  Like: "LIKE",
17
15
  Dislike: "DISLIKE",
16
+ Upvote: "UPVOTE",
17
+ Downvote: "DOWNVOTE",
18
18
  };
19
19
  })(Item = Reactions.Item || (Reactions.Item = {}));
20
20
  })(Reactions = Data.Reactions || (Data.Reactions = {}));
@@ -13,11 +13,30 @@ export declare namespace RetrieveReactionThreadsResponse {
13
13
  interface User {
14
14
  id: string;
15
15
  username: string;
16
+ /** Display name */
16
17
  displayName: string | null;
18
+ /** User bio */
17
19
  bio: string | null;
20
+ /** Forum signature */
21
+ signature: string | null;
22
+ /** User website URL */
18
23
  url: string | null;
24
+ /** Total posts by user */
25
+ postsCount?: number;
26
+ /** Total threads by user */
27
+ threadsCount?: number;
28
+ /** Online status */
19
29
  isOnline: boolean | null;
30
+ /** Last activity timestamp */
31
+ lastSeenAt: string | null;
32
+ /** User roles */
20
33
  roles?: User.Roles.Item[];
34
+ /** Custom user data */
35
+ extendedData: Record<string, unknown> | null;
36
+ /** Account creation timestamp */
37
+ createdAt: string;
38
+ /** Profile last update timestamp */
39
+ updatedAt: string;
21
40
  }
22
41
  namespace User {
23
42
  type Roles = Roles.Item[];
@@ -13,11 +13,30 @@ export declare namespace RetrieveSubscriberThreadsResponse {
13
13
  interface User {
14
14
  id: string;
15
15
  username: string;
16
+ /** Display name */
16
17
  displayName: string | null;
18
+ /** User bio */
17
19
  bio: string | null;
20
+ /** Forum signature */
21
+ signature: string | null;
22
+ /** User website URL */
18
23
  url: string | null;
24
+ /** Total posts by user */
25
+ postsCount?: number;
26
+ /** Total threads by user */
27
+ threadsCount?: number;
28
+ /** Online status */
19
29
  isOnline: boolean | null;
30
+ /** Last activity timestamp */
31
+ lastSeenAt: string | null;
32
+ /** User roles */
20
33
  roles?: User.Roles.Item[];
34
+ /** Custom user data */
35
+ extendedData: Record<string, unknown> | null;
36
+ /** Account creation timestamp */
37
+ createdAt: string;
38
+ /** Profile last update timestamp */
39
+ updatedAt: string;
21
40
  }
22
41
  namespace User {
23
42
  type Roles = Roles.Item[];
@@ -9,10 +9,10 @@ export declare namespace UpdateThreadsResponse {
9
9
  body: string;
10
10
  /** Author user ID (required for API key auth, ignored for JWT auth) */
11
11
  userId?: string;
12
- /** List of tag slugs, names, or IDs to attach */
13
- tags?: string[];
14
- /** Poll data */
15
- poll?: Data.Poll;
12
+ /** Thread tags */
13
+ tags?: Data.Tags.Item[];
14
+ /** Thread poll */
15
+ poll?: Data.Poll | null;
16
16
  /** Whether thread is locked */
17
17
  locked: boolean | null;
18
18
  /** Whether thread is pinned */
@@ -36,22 +36,45 @@ export declare namespace UpdateThreadsResponse {
36
36
  updatedAt: string;
37
37
  }
38
38
  namespace Data {
39
+ type Tags = Tags.Item[];
40
+ namespace Tags {
41
+ interface Item {
42
+ /** Tag name */
43
+ name: string;
44
+ /** Tag slug (unique identifier) */
45
+ slug?: string;
46
+ /** Tag description */
47
+ description?: string;
48
+ /** Hex color code */
49
+ color?: string;
50
+ /** Extended data */
51
+ extendedData?: Record<string, unknown>;
52
+ id: string;
53
+ }
54
+ }
39
55
  /**
40
- * Poll data
56
+ * Thread poll
41
57
  */
42
58
  interface Poll {
43
- /** Poll title */
59
+ id: string;
44
60
  title: string;
45
- /** Poll options */
61
+ closed: boolean | null;
62
+ closedAt: string | null;
63
+ expiresAt: string | null;
64
+ totalVotes: number;
46
65
  options: Poll.Options.Item[];
66
+ createdAt: string;
67
+ updatedAt: string;
47
68
  }
48
69
  namespace Poll {
49
70
  type Options = Options.Item[];
50
71
  namespace Options {
51
72
  interface Item {
73
+ id: string;
52
74
  title: string;
53
- color?: string;
54
- extendedData?: Record<string, unknown>;
75
+ color: string | null;
76
+ votesCount: number;
77
+ extendedData: Record<string, unknown> | null;
55
78
  }
56
79
  }
57
80
  }
@@ -61,11 +84,30 @@ export declare namespace UpdateThreadsResponse {
61
84
  interface User {
62
85
  id: string;
63
86
  username: string;
87
+ /** Display name */
64
88
  displayName: string | null;
89
+ /** User bio */
65
90
  bio: string | null;
91
+ /** Forum signature */
92
+ signature: string | null;
93
+ /** User website URL */
66
94
  url: string | null;
95
+ /** Total posts by user */
96
+ postsCount?: number;
97
+ /** Total threads by user */
98
+ threadsCount?: number;
99
+ /** Online status */
67
100
  isOnline: boolean | null;
101
+ /** Last activity timestamp */
102
+ lastSeenAt: string | null;
103
+ /** User roles */
68
104
  roles?: User.Roles.Item[];
105
+ /** Custom user data */
106
+ extendedData: Record<string, unknown> | null;
107
+ /** Account creation timestamp */
108
+ createdAt: string;
109
+ /** Profile last update timestamp */
110
+ updatedAt: string;
69
111
  }
70
112
  namespace User {
71
113
  type Roles = Roles.Item[];
@@ -88,10 +130,10 @@ export declare namespace UpdateThreadsResponse {
88
130
  }
89
131
  namespace Item {
90
132
  const Type: {
91
- readonly Upvote: "UPVOTE";
92
- readonly Downvote: "DOWNVOTE";
93
133
  readonly Like: "LIKE";
94
134
  readonly Dislike: "DISLIKE";
135
+ readonly Upvote: "UPVOTE";
136
+ readonly Downvote: "DOWNVOTE";
95
137
  };
96
138
  type Type = (typeof Type)[keyof typeof Type];
97
139
  }
@@ -11,10 +11,10 @@ var UpdateThreadsResponse;
11
11
  let Item;
12
12
  (function (Item) {
13
13
  Item.Type = {
14
- Upvote: "UPVOTE",
15
- Downvote: "DOWNVOTE",
16
14
  Like: "LIKE",
17
15
  Dislike: "DISLIKE",
16
+ Upvote: "UPVOTE",
17
+ Downvote: "DOWNVOTE",
18
18
  };
19
19
  })(Item = Reactions.Item || (Reactions.Item = {}));
20
20
  })(Reactions = Data.Reactions || (Data.Reactions = {}));
@@ -124,6 +124,25 @@ export declare class UsersClient {
124
124
  */
125
125
  listFollowers(request: Forum.ListFollowersUsersRequest, requestOptions?: UsersClient.RequestOptions): core.HttpResponsePromise<Forum.UserFollowerListResponse>;
126
126
  private __listFollowers;
127
+ /**
128
+ * Create a Follower in User.
129
+ *
130
+ * @param {Forum.CreateFollowerUsersRequest} request
131
+ * @param {UsersClient.RequestOptions} requestOptions - Request-specific configuration.
132
+ *
133
+ * @throws {@link Forum.BadRequestError}
134
+ * @throws {@link Forum.UnauthorizedError}
135
+ * @throws {@link Forum.NotFoundError}
136
+ * @throws {@link Forum.TooManyRequestsError}
137
+ * @throws {@link Forum.InternalServerError}
138
+ *
139
+ * @example
140
+ * await client.users.createFollower({
141
+ * id: "id"
142
+ * })
143
+ */
144
+ createFollower(request: Forum.CreateFollowerUsersRequest, requestOptions?: UsersClient.RequestOptions): core.HttpResponsePromise<Forum.UserFollowerResponse>;
145
+ private __createFollower;
127
146
  /**
128
147
  * @param {Forum.RetrieveFollowerUsersRequest} request
129
148
  * @param {UsersClient.RequestOptions} requestOptions - Request-specific configuration.
@@ -457,6 +457,72 @@ class UsersClient {
457
457
  return (0, handleNonStatusCodeError_js_1.handleNonStatusCodeError)(_response.error, _response.rawResponse, "GET", "/users/{id}/followers");
458
458
  });
459
459
  }
460
+ /**
461
+ * Create a Follower in User.
462
+ *
463
+ * @param {Forum.CreateFollowerUsersRequest} request
464
+ * @param {UsersClient.RequestOptions} requestOptions - Request-specific configuration.
465
+ *
466
+ * @throws {@link Forum.BadRequestError}
467
+ * @throws {@link Forum.UnauthorizedError}
468
+ * @throws {@link Forum.NotFoundError}
469
+ * @throws {@link Forum.TooManyRequestsError}
470
+ * @throws {@link Forum.InternalServerError}
471
+ *
472
+ * @example
473
+ * await client.users.createFollower({
474
+ * id: "id"
475
+ * })
476
+ */
477
+ createFollower(request, requestOptions) {
478
+ return core.HttpResponsePromise.fromPromise(this.__createFollower(request, requestOptions));
479
+ }
480
+ __createFollower(request, requestOptions) {
481
+ return __awaiter(this, void 0, void 0, function* () {
482
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
483
+ const { id } = request, _body = __rest(request, ["id"]);
484
+ const _authRequest = yield this._options.authProvider.getAuthRequest();
485
+ const _headers = (0, headers_js_1.mergeHeaders)(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
486
+ const _response = yield ((_b = this._options.fetcher) !== null && _b !== void 0 ? _b : core.fetcher)({
487
+ url: core.url.join((_d = (_c = (yield core.Supplier.get(this._options.baseUrl))) !== null && _c !== void 0 ? _c : (yield core.Supplier.get(this._options.environment))) !== null && _d !== void 0 ? _d : environments.ForumEnvironment.Production, `users/${core.url.encodePathParam(id)}/followers`),
488
+ method: "POST",
489
+ headers: _headers,
490
+ contentType: "application/json",
491
+ queryParameters: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams,
492
+ requestType: "json",
493
+ body: _body,
494
+ timeoutMs: ((_g = (_e = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) !== null && _e !== void 0 ? _e : (_f = this._options) === null || _f === void 0 ? void 0 : _f.timeoutInSeconds) !== null && _g !== void 0 ? _g : 60) * 1000,
495
+ maxRetries: (_h = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries) !== null && _h !== void 0 ? _h : (_j = this._options) === null || _j === void 0 ? void 0 : _j.maxRetries,
496
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
497
+ fetchFn: (_k = this._options) === null || _k === void 0 ? void 0 : _k.fetch,
498
+ logging: this._options.logging,
499
+ });
500
+ if (_response.ok) {
501
+ return { data: _response.body, rawResponse: _response.rawResponse };
502
+ }
503
+ if (_response.error.reason === "status-code") {
504
+ switch (_response.error.statusCode) {
505
+ case 400:
506
+ throw new Forum.BadRequestError(_response.error.body, _response.rawResponse);
507
+ case 401:
508
+ throw new Forum.UnauthorizedError(_response.error.body, _response.rawResponse);
509
+ case 404:
510
+ throw new Forum.NotFoundError(_response.error.body, _response.rawResponse);
511
+ case 429:
512
+ throw new Forum.TooManyRequestsError(_response.error.body, _response.rawResponse);
513
+ case 500:
514
+ throw new Forum.InternalServerError(_response.error.body, _response.rawResponse);
515
+ default:
516
+ throw new errors.ForumError({
517
+ statusCode: _response.error.statusCode,
518
+ body: _response.error.body,
519
+ rawResponse: _response.rawResponse,
520
+ });
521
+ }
522
+ }
523
+ return (0, handleNonStatusCodeError_js_1.handleNonStatusCodeError)(_response.error, _response.rawResponse, "POST", "/users/{id}/followers");
524
+ });
525
+ }
460
526
  /**
461
527
  * @param {Forum.RetrieveFollowerUsersRequest} request
462
528
  * @param {UsersClient.RequestOptions} requestOptions - Request-specific configuration.
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @example
3
+ * {
4
+ * id: "id"
5
+ * }
6
+ */
7
+ export interface CreateFollowerUsersRequest {
8
+ /** User ID */
9
+ id: string;
10
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ // This file was auto-generated by Fern from our API Definition.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,3 +1,4 @@
1
+ export type { CreateFollowerUsersRequest } from "./CreateFollowerUsersRequest.js";
1
2
  export type { CreateUsersRequest } from "./CreateUsersRequest.js";
2
3
  export type { DeleteFollowerUsersRequest } from "./DeleteFollowerUsersRequest.js";
3
4
  export type { DeleteFollowingUsersRequest } from "./DeleteFollowingUsersRequest.js";
@@ -13,11 +13,30 @@ export declare namespace RetrieveFollowerUsersResponse {
13
13
  interface Follower {
14
14
  id: string;
15
15
  username: string;
16
+ /** Display name */
16
17
  displayName: string | null;
18
+ /** User bio */
17
19
  bio: string | null;
20
+ /** Forum signature */
21
+ signature: string | null;
22
+ /** User website URL */
18
23
  url: string | null;
24
+ /** Total posts by user */
25
+ postsCount?: number;
26
+ /** Total threads by user */
27
+ threadsCount?: number;
28
+ /** Online status */
19
29
  isOnline: boolean | null;
30
+ /** Last activity timestamp */
31
+ lastSeenAt: string | null;
32
+ /** User roles */
20
33
  roles?: Follower.Roles.Item[];
34
+ /** Custom user data */
35
+ extendedData: Record<string, unknown> | null;
36
+ /** Account creation timestamp */
37
+ createdAt: string;
38
+ /** Profile last update timestamp */
39
+ updatedAt: string;
21
40
  }
22
41
  namespace Follower {
23
42
  type Roles = Roles.Item[];
@@ -13,11 +13,30 @@ export declare namespace RetrieveFollowingUsersResponse {
13
13
  interface Following {
14
14
  id: string;
15
15
  username: string;
16
+ /** Display name */
16
17
  displayName: string | null;
18
+ /** User bio */
17
19
  bio: string | null;
20
+ /** Forum signature */
21
+ signature: string | null;
22
+ /** User website URL */
18
23
  url: string | null;
24
+ /** Total posts by user */
25
+ postsCount?: number;
26
+ /** Total threads by user */
27
+ threadsCount?: number;
28
+ /** Online status */
19
29
  isOnline: boolean | null;
30
+ /** Last activity timestamp */
31
+ lastSeenAt: string | null;
32
+ /** User roles */
20
33
  roles?: Following.Roles.Item[];
34
+ /** Custom user data */
35
+ extendedData: Record<string, unknown> | null;
36
+ /** Account creation timestamp */
37
+ createdAt: string;
38
+ /** Profile last update timestamp */
39
+ updatedAt: string;
21
40
  }
22
41
  namespace Following {
23
42
  type Roles = Roles.Item[];
@@ -39,6 +39,7 @@ export declare namespace UpdateUsersResponse {
39
39
  id: string;
40
40
  name: string;
41
41
  slug: string | null;
42
+ color: string | null;
42
43
  }
43
44
  }
44
45
  }
@@ -49,6 +49,7 @@ export declare namespace LoginResponse {
49
49
  id: string;
50
50
  name: string;
51
51
  slug: string | null;
52
+ color: string | null;
52
53
  }
53
54
  }
54
55
  }
@@ -39,6 +39,7 @@ export declare namespace MeResponse {
39
39
  id: string;
40
40
  name: string;
41
41
  slug: string | null;
42
+ color: string | null;
42
43
  }
43
44
  }
44
45
  }