anixartjs 0.0.1

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 (81) hide show
  1. package/LICENSE +674 -0
  2. package/README.md +187 -0
  3. package/dist/api/auth.d.ts +11 -0
  4. package/dist/api/auth.js +49 -0
  5. package/dist/api/channel.d.ts +42 -0
  6. package/dist/api/channel.js +111 -0
  7. package/dist/api/collection.d.ts +30 -0
  8. package/dist/api/collection.js +57 -0
  9. package/dist/api/discover.d.ts +11 -0
  10. package/dist/api/discover.js +24 -0
  11. package/dist/api/feed.d.ts +9 -0
  12. package/dist/api/feed.js +18 -0
  13. package/dist/api/index.d.ts +9 -0
  14. package/dist/api/index.js +25 -0
  15. package/dist/api/notification.d.ts +14 -0
  16. package/dist/api/notification.js +33 -0
  17. package/dist/api/profile.d.ts +26 -0
  18. package/dist/api/profile.js +59 -0
  19. package/dist/api/release.d.ts +40 -0
  20. package/dist/api/release.js +101 -0
  21. package/dist/api/settings.d.ts +30 -0
  22. package/dist/api/settings.js +81 -0
  23. package/dist/classes/Article.d.ts +18 -0
  24. package/dist/classes/Article.js +43 -0
  25. package/dist/classes/ArticleComment.d.ts +15 -0
  26. package/dist/classes/ArticleComment.js +36 -0
  27. package/dist/classes/BaseArticle.d.ts +21 -0
  28. package/dist/classes/BaseArticle.js +23 -0
  29. package/dist/classes/BaseComment.d.ts +22 -0
  30. package/dist/classes/BaseComment.js +25 -0
  31. package/dist/classes/BaseProfile.d.ts +25 -0
  32. package/dist/classes/BaseProfile.js +37 -0
  33. package/dist/classes/Channel.d.ts +47 -0
  34. package/dist/classes/Channel.js +103 -0
  35. package/dist/classes/Dubber.d.ts +19 -0
  36. package/dist/classes/Dubber.js +24 -0
  37. package/dist/classes/Episode.d.ts +20 -0
  38. package/dist/classes/Episode.js +30 -0
  39. package/dist/classes/FullProfile.d.ts +53 -0
  40. package/dist/classes/FullProfile.js +75 -0
  41. package/dist/classes/Release.d.ts +88 -0
  42. package/dist/classes/Release.js +140 -0
  43. package/dist/classes/ReleaseComment.d.ts +16 -0
  44. package/dist/classes/ReleaseComment.js +44 -0
  45. package/dist/classes/Source.d.ts +15 -0
  46. package/dist/classes/Source.js +20 -0
  47. package/dist/classes/SuggestionArticle.d.ts +14 -0
  48. package/dist/classes/SuggestionArticle.js +28 -0
  49. package/dist/client.d.ts +27 -0
  50. package/dist/client.js +121 -0
  51. package/dist/endpoints.d.ts +18 -0
  52. package/dist/endpoints.js +25 -0
  53. package/dist/index.d.ts +2 -0
  54. package/dist/index.js +20 -0
  55. package/dist/types/auth.d.ts +25 -0
  56. package/dist/types/auth.js +2 -0
  57. package/dist/types/channel.d.ts +178 -0
  58. package/dist/types/channel.js +2 -0
  59. package/dist/types/collection.d.ts +38 -0
  60. package/dist/types/collection.js +2 -0
  61. package/dist/types/index.d.ts +12 -0
  62. package/dist/types/index.js +25 -0
  63. package/dist/types/notification.d.ts +22 -0
  64. package/dist/types/notification.js +2 -0
  65. package/dist/types/profile.d.ts +141 -0
  66. package/dist/types/profile.js +21 -0
  67. package/dist/types/release.d.ts +240 -0
  68. package/dist/types/release.js +23 -0
  69. package/dist/types/request.d.ts +36 -0
  70. package/dist/types/request.js +2 -0
  71. package/dist/types/response.d.ts +51 -0
  72. package/dist/types/response.js +12 -0
  73. package/dist/types/settings.d.ts +61 -0
  74. package/dist/types/settings.js +14 -0
  75. package/dist/utils/ArticleBuilder.d.ts +36 -0
  76. package/dist/utils/ArticleBuilder.js +138 -0
  77. package/dist/utils/LinkParser.d.ts +110 -0
  78. package/dist/utils/LinkParser.js +119 -0
  79. package/dist/utils/Utils.d.ts +3 -0
  80. package/dist/utils/Utils.js +11 -0
  81. package/package.json +32 -0
@@ -0,0 +1,141 @@
1
+ import { IResponse } from "./response";
2
+ import { IBaseRequestPageable } from "./request";
3
+ export declare enum BookmarkType {
4
+ Watching = 1,
5
+ InPlans = 2,
6
+ Completed = 3,
7
+ HoldOn = 4,
8
+ Dropped = 5
9
+ }
10
+ export declare enum BookmarkSortType {
11
+ NewToOldAddTime = 1,
12
+ OldToNewAddTime = 2,
13
+ NewToOldYear = 3,
14
+ OldToNewYear = 4,
15
+ AlpabetInAToZ = 5,
16
+ AlpabetInZToA = 6
17
+ }
18
+ export interface IBookmarkRequest extends IBaseRequestPageable {
19
+ filter_announce: number;
20
+ id: number;
21
+ type: BookmarkType;
22
+ sort: BookmarkSortType;
23
+ filter: number;
24
+ }
25
+ export interface IProfileToken {
26
+ id: string;
27
+ token: string;
28
+ }
29
+ export interface IProfile {
30
+ id: number;
31
+ login: string;
32
+ avatar: string;
33
+ status: string;
34
+ sponsorshipExpires: number;
35
+ history: any[];
36
+ votes: any[];
37
+ last_activity_time: number;
38
+ register_date: number;
39
+ vk_page: string;
40
+ tg_page: string;
41
+ inst_page: string;
42
+ tt_page: string;
43
+ discord_page: string;
44
+ ban_expires: number;
45
+ ban_reason: string;
46
+ ban_note: unknown;
47
+ privilege_level: number;
48
+ watching_count: number;
49
+ plan_count: number;
50
+ completed_count: number;
51
+ hold_on_count: number;
52
+ dropped_count: number;
53
+ favorite_count: number;
54
+ comment_count: number;
55
+ collection_count: number;
56
+ video_count: number;
57
+ friend_count: number;
58
+ watched_episode_count: number;
59
+ watched_time: number;
60
+ is_private: boolean;
61
+ is_sponsor: boolean;
62
+ is_banned: boolean;
63
+ is_perm_banned: boolean;
64
+ is_bookmarks_transferred: boolean;
65
+ is_sponsor_transferred: boolean;
66
+ is_vk_bound: boolean;
67
+ is_google_bound: boolean;
68
+ is_release_type_notifications_enabled: boolean;
69
+ is_episode_notifications_enabled: boolean;
70
+ is_first_episode_notification_enabled: boolean;
71
+ is_related_release_notifications_enabled: boolean;
72
+ is_report_process_notifications_enabled: boolean;
73
+ is_comment_notifications_enabled: boolean;
74
+ is_my_collection_comment_notifications_enabled: boolean;
75
+ is_verified: boolean;
76
+ watch_dynamics: any[];
77
+ friend_status: number;
78
+ rating_score: number;
79
+ is_blocked: boolean;
80
+ is_me_blocked: boolean;
81
+ is_stats_hidden: boolean;
82
+ is_counts_hidden: boolean;
83
+ is_social_hidden: boolean;
84
+ is_friend_requests_disallowed: boolean;
85
+ is_online: boolean;
86
+ roles: IRole[];
87
+ badge: IBadge | null;
88
+ }
89
+ export interface IRole {
90
+ color: string;
91
+ name: string;
92
+ }
93
+ export interface IProfileShort {
94
+ id: number;
95
+ login: string;
96
+ avatar: string;
97
+ ban_expires: number;
98
+ ban_reason: string;
99
+ privilege_level: number;
100
+ badge_id: number | null;
101
+ badge_name: string | null;
102
+ badge_type: number | null;
103
+ badge_url: string | null;
104
+ is_banned: boolean;
105
+ is_sponsor: boolean;
106
+ is_verified: boolean;
107
+ is_online: boolean;
108
+ friend_status: number;
109
+ friend_count: number;
110
+ }
111
+ export interface IProfileResponse extends IResponse {
112
+ profile: IProfile;
113
+ is_my_profile: boolean;
114
+ }
115
+ export interface IFriendsRequest extends IBaseRequestPageable {
116
+ id: number;
117
+ }
118
+ export interface IFriendRequestResponse extends IResponse {
119
+ friend_status: number | null;
120
+ }
121
+ export interface IBadge {
122
+ id: number;
123
+ name: string;
124
+ type: number;
125
+ image_url: string;
126
+ timestamp: number;
127
+ }
128
+ export interface ISocialRequest {
129
+ vkPage: string;
130
+ tgPage: string;
131
+ instPage: string;
132
+ ttPage: string;
133
+ discordPage: string;
134
+ }
135
+ export interface ISocialResponse extends IResponse {
136
+ vk_page: string;
137
+ tg_page: string;
138
+ inst_page: string;
139
+ tt_page: string;
140
+ discord_page: string;
141
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ //Thanks Nekonyx for this types (https://github.com/Nekonyx/anixart-api/blob/master/src/contracts/profile.ts)
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.BookmarkSortType = exports.BookmarkType = void 0;
5
+ var BookmarkType;
6
+ (function (BookmarkType) {
7
+ BookmarkType[BookmarkType["Watching"] = 1] = "Watching";
8
+ BookmarkType[BookmarkType["InPlans"] = 2] = "InPlans";
9
+ BookmarkType[BookmarkType["Completed"] = 3] = "Completed";
10
+ BookmarkType[BookmarkType["HoldOn"] = 4] = "HoldOn";
11
+ BookmarkType[BookmarkType["Dropped"] = 5] = "Dropped";
12
+ })(BookmarkType || (exports.BookmarkType = BookmarkType = {}));
13
+ var BookmarkSortType;
14
+ (function (BookmarkSortType) {
15
+ BookmarkSortType[BookmarkSortType["NewToOldAddTime"] = 1] = "NewToOldAddTime";
16
+ BookmarkSortType[BookmarkSortType["OldToNewAddTime"] = 2] = "OldToNewAddTime";
17
+ BookmarkSortType[BookmarkSortType["NewToOldYear"] = 3] = "NewToOldYear";
18
+ BookmarkSortType[BookmarkSortType["OldToNewYear"] = 4] = "OldToNewYear";
19
+ BookmarkSortType[BookmarkSortType["AlpabetInAToZ"] = 5] = "AlpabetInAToZ";
20
+ BookmarkSortType[BookmarkSortType["AlpabetInZToA"] = 6] = "AlpabetInZToA";
21
+ })(BookmarkSortType || (exports.BookmarkSortType = BookmarkSortType = {}));
@@ -0,0 +1,240 @@
1
+ import { IPageableResponse, IResponse, IBaseComment } from './response';
2
+ import { IProfile } from './profile';
3
+ import { IBaseRequestPageable } from './request';
4
+ export declare enum ReleaseCategory {
5
+ Unknown = 0,
6
+ Series = 1,
7
+ Movie = 2,
8
+ OVA = 3,
9
+ Special = 6
10
+ }
11
+ export declare enum VoteType {
12
+ Like = 2,
13
+ Dislike = 1
14
+ }
15
+ export declare enum ReleaseStatus {
16
+ Unknown = 0,
17
+ Finished = 1,
18
+ Airing = 2,
19
+ Announced = 3
20
+ }
21
+ export interface ICommentRepliesRequest extends IBaseRequestPageable {
22
+ id: number;
23
+ sort: number;
24
+ }
25
+ export interface IVideoReleaseInCategoryRequest extends IBaseRequestPageable {
26
+ id: number;
27
+ categoryId: number;
28
+ }
29
+ export interface IReleaseFilterRequest {
30
+ categoryId?: number;
31
+ country?: string;
32
+ endYear?: number;
33
+ episodeDurationFrom?: number;
34
+ episodeDurationTo?: number;
35
+ episodesFrom?: number;
36
+ episodesTo?: number;
37
+ isGenresExcludeModeEnabled?: boolean;
38
+ season?: number;
39
+ startYear?: number;
40
+ statusId?: number;
41
+ studio?: string;
42
+ sort?: number;
43
+ genres?: string[];
44
+ profileListExclusions?: number[];
45
+ types?: number[];
46
+ ageRatings?: number[];
47
+ }
48
+ export interface IReleaseFilterResponse extends IPageableResponse<IRelease> {
49
+ }
50
+ export interface IReleaseCategory {
51
+ id: ReleaseCategory;
52
+ name: string;
53
+ }
54
+ export interface IReleaseStatus {
55
+ id: ReleaseStatus;
56
+ name: string;
57
+ }
58
+ export interface IRelated {
59
+ description: string;
60
+ id: number;
61
+ image: string;
62
+ images: string[];
63
+ name: string;
64
+ name_ru: string;
65
+ release_count: number;
66
+ }
67
+ export interface IEpisodeLastUpdate {
68
+ lastEpisodeTypeUpdateName: string;
69
+ last_episode_source_update_id: number;
70
+ last_episode_source_update_name: string;
71
+ last_episode_type_update_id: number;
72
+ last_episode_update_date: number;
73
+ last_episode_update_name: string;
74
+ }
75
+ export interface IRelease {
76
+ '@id': number;
77
+ id: number;
78
+ poster: string;
79
+ image: string;
80
+ year: string;
81
+ genres: string;
82
+ country: string;
83
+ director: string;
84
+ author: string;
85
+ translators: string;
86
+ studio: string;
87
+ description: string;
88
+ note: null;
89
+ related: IRelated;
90
+ category: IReleaseCategory;
91
+ rating: number;
92
+ grade: number;
93
+ status: IReleaseStatus;
94
+ duration: number;
95
+ season: number;
96
+ broadcast: number;
97
+ screenshots: any[];
98
+ comments: ICommentRelease[];
99
+ title_original: string;
100
+ title_ru: string;
101
+ title_alt: null;
102
+ episodes_released: number;
103
+ episodes_total: number;
104
+ release_date: string;
105
+ vote_1_count: number;
106
+ vote_2_count: number;
107
+ vote_3_count: number;
108
+ vote_4_count: number;
109
+ vote_5_count: number;
110
+ vote_count: number;
111
+ creation_date: number;
112
+ last_update_date: number;
113
+ aired_on_date: number;
114
+ favorites_count: number;
115
+ watching_count: number;
116
+ plan_count: number;
117
+ completed_count: number;
118
+ hold_on_count: number;
119
+ dropped_count: number;
120
+ is_adult: boolean;
121
+ is_play_disabled: boolean;
122
+ is_tpp_disabled: boolean;
123
+ can_video_appeal: boolean;
124
+ can_torlook_search: boolean;
125
+ is_deleted: boolean;
126
+ age_rating: number;
127
+ your_vote: number;
128
+ related_count: number;
129
+ comment_count: number;
130
+ comments_count: number;
131
+ collection_count: number;
132
+ profile_list_status: number;
133
+ status_id: number;
134
+ last_view_timestamp: number;
135
+ last_view_episode: null;
136
+ is_viewed: boolean;
137
+ is_favorite: boolean;
138
+ is_view_blocked: boolean;
139
+ screenshot_images: any[];
140
+ related_releases: IRelease[];
141
+ recommended_releases: IRelease[];
142
+ episode_last_update: IEpisodeLastUpdate;
143
+ comment_per_day_count: number;
144
+ video_banners: any[];
145
+ profile_release_type_notification_preference_count: number;
146
+ is_release_type_notifications_enabled: boolean;
147
+ }
148
+ export interface IVideo {
149
+ id: number;
150
+ release: IRelease | number;
151
+ profile: IProfile;
152
+ category: {
153
+ id: number;
154
+ name: string;
155
+ };
156
+ hosting: {
157
+ id: number;
158
+ name: string;
159
+ icon: string;
160
+ };
161
+ title: string;
162
+ image: string;
163
+ url: string;
164
+ timestamp: number;
165
+ player_url: string;
166
+ is_favorite: boolean;
167
+ favorites_count: number;
168
+ }
169
+ export interface IVideoResponse extends IResponse {
170
+ release: IRelease;
171
+ blocks: IVideo[];
172
+ streaming_platforms: any[];
173
+ last_videos: IVideo[];
174
+ can_appeal: boolean;
175
+ }
176
+ export interface IReleaseResponse extends IResponse {
177
+ release: IRelease;
178
+ }
179
+ export interface ICommentReleaseRequest extends IBaseRequestPageable {
180
+ id: number;
181
+ sort: number;
182
+ }
183
+ export interface ICommentReleaseResponse extends IResponse {
184
+ comment: ICommentRelease;
185
+ }
186
+ export interface ICommentRelease extends IBaseComment {
187
+ release: IRelease;
188
+ }
189
+ export interface IDubber {
190
+ '@id': number;
191
+ id: number;
192
+ name: string;
193
+ icon: string;
194
+ workers: string;
195
+ is_sub: boolean;
196
+ episode_count: number;
197
+ view_count: number;
198
+ pinned: boolean;
199
+ }
200
+ export interface IDubbersResponse extends IResponse {
201
+ types: IDubber[];
202
+ }
203
+ export interface ISource {
204
+ '@id': number;
205
+ id: number;
206
+ name: string;
207
+ type: IDubber | number;
208
+ episode_count: number;
209
+ }
210
+ export interface ISourcesResponse extends IResponse {
211
+ sources: ISource[];
212
+ }
213
+ export interface IEpisode {
214
+ '@id': number;
215
+ position: number;
216
+ release: IRelease | number;
217
+ source: ISource | number;
218
+ name: string;
219
+ url: string;
220
+ iframe: boolean;
221
+ addedDate: number;
222
+ is_filter: boolean;
223
+ is_watched: boolean;
224
+ }
225
+ export interface IEpisodesResponse extends IResponse {
226
+ episodes: IEpisode[];
227
+ }
228
+ export interface IEpisodeResponse extends IResponse {
229
+ episode: IEpisode;
230
+ }
231
+ export interface IInterestingRelease {
232
+ '@id': number;
233
+ id: number;
234
+ title: string;
235
+ image: string;
236
+ description: string;
237
+ type: number;
238
+ action: string;
239
+ is_hidden: boolean;
240
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ReleaseStatus = exports.VoteType = exports.ReleaseCategory = void 0;
4
+ var ReleaseCategory;
5
+ (function (ReleaseCategory) {
6
+ ReleaseCategory[ReleaseCategory["Unknown"] = 0] = "Unknown";
7
+ ReleaseCategory[ReleaseCategory["Series"] = 1] = "Series";
8
+ ReleaseCategory[ReleaseCategory["Movie"] = 2] = "Movie";
9
+ ReleaseCategory[ReleaseCategory["OVA"] = 3] = "OVA";
10
+ ReleaseCategory[ReleaseCategory["Special"] = 6] = "Special";
11
+ })(ReleaseCategory || (exports.ReleaseCategory = ReleaseCategory = {}));
12
+ var VoteType;
13
+ (function (VoteType) {
14
+ VoteType[VoteType["Like"] = 2] = "Like";
15
+ VoteType[VoteType["Dislike"] = 1] = "Dislike";
16
+ })(VoteType || (exports.VoteType = VoteType = {}));
17
+ var ReleaseStatus;
18
+ (function (ReleaseStatus) {
19
+ ReleaseStatus[ReleaseStatus["Unknown"] = 0] = "Unknown";
20
+ ReleaseStatus[ReleaseStatus["Finished"] = 1] = "Finished";
21
+ ReleaseStatus[ReleaseStatus["Airing"] = 2] = "Airing";
22
+ ReleaseStatus[ReleaseStatus["Announced"] = 3] = "Announced";
23
+ })(ReleaseStatus || (exports.ReleaseStatus = ReleaseStatus = {}));
@@ -0,0 +1,36 @@
1
+ export interface IBaseRequest {
2
+ path: string;
3
+ json?: object;
4
+ customBaseUrl?: string;
5
+ bearer?: string;
6
+ urlEncoded?: object;
7
+ queryParams?: object;
8
+ token?: string;
9
+ signal?: AbortSignal;
10
+ method?: string;
11
+ tokenRequired?: boolean;
12
+ apiV2?: boolean;
13
+ image?: {
14
+ name: string;
15
+ stream: Buffer;
16
+ boundary?: string;
17
+ type: "file" | "image";
18
+ };
19
+ }
20
+ export interface IBaseApiParams {
21
+ token?: string;
22
+ signal?: AbortSignal;
23
+ }
24
+ export interface IBaseRequestPageable {
25
+ page: number;
26
+ }
27
+ export interface IBaseSearchRequest extends IBaseRequestPageable {
28
+ query: string;
29
+ searchBy: number;
30
+ }
31
+ export interface IBaseCommentAddRequest {
32
+ parentCommentId?: number | null;
33
+ replyToProfileId?: number | null;
34
+ message: string;
35
+ isSpoiler: boolean;
36
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,51 @@
1
+ import { IDubber, IRelease } from "./release";
2
+ import { IProfileShort } from "./profile";
3
+ export declare enum ResponseCode {
4
+ Ok = 0,
5
+ Error = 2,
6
+ InvalidLogin = 3,
7
+ RateLimit = 401,
8
+ Ban = 402,
9
+ PermBan = 403
10
+ }
11
+ export interface IResponse {
12
+ code: ResponseCode;
13
+ }
14
+ export interface IPageableResponse<T> extends IResponse {
15
+ content: T[];
16
+ total_count: number;
17
+ total_page_count: number;
18
+ current_page: number;
19
+ }
20
+ export interface IScheduleResponse extends IResponse {
21
+ monday: IRelease[];
22
+ tuesday: IRelease[];
23
+ wednesday: IRelease[];
24
+ thursday: IRelease[];
25
+ friday: IRelease[];
26
+ saturday: IRelease[];
27
+ sunday: IRelease[];
28
+ }
29
+ export interface ITypeResponse extends IResponse {
30
+ types: IDubber[];
31
+ }
32
+ export interface IBaseComment {
33
+ id: number;
34
+ message: string;
35
+ timestamp: number;
36
+ type: number;
37
+ vote: number;
38
+ profile: IProfileShort;
39
+ parent_comment_id: number;
40
+ vote_count: number;
41
+ likes_count: number;
42
+ is_spoiler: boolean;
43
+ is_edited: boolean;
44
+ is_deleted: boolean;
45
+ is_reply: boolean;
46
+ reply_count: number;
47
+ can_like: boolean;
48
+ }
49
+ export interface IUrlResponse extends IResponse {
50
+ url: string;
51
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ResponseCode = void 0;
4
+ var ResponseCode;
5
+ (function (ResponseCode) {
6
+ ResponseCode[ResponseCode["Ok"] = 0] = "Ok";
7
+ ResponseCode[ResponseCode["Error"] = 2] = "Error";
8
+ ResponseCode[ResponseCode["InvalidLogin"] = 3] = "InvalidLogin";
9
+ ResponseCode[ResponseCode["RateLimit"] = 401] = "RateLimit";
10
+ ResponseCode[ResponseCode["Ban"] = 402] = "Ban";
11
+ ResponseCode[ResponseCode["PermBan"] = 403] = "PermBan";
12
+ })(ResponseCode || (exports.ResponseCode = ResponseCode = {}));
@@ -0,0 +1,61 @@
1
+ import { IBadge, IProfile } from "./profile";
2
+ import { IPageableResponse, IResponse } from "./response";
3
+ export interface IProfileSettingsResponse extends IResponse {
4
+ avatar: string;
5
+ status: string;
6
+ vkPage: string;
7
+ tgPage: string;
8
+ is_private: boolean;
9
+ isPrivate: boolean;
10
+ privacy_stats: number;
11
+ privacy_counts: number;
12
+ privacy_social: number;
13
+ privacy_friend_requests: number;
14
+ is_vk_bound: boolean;
15
+ isVkBound: boolean;
16
+ is_goolge_bound: boolean;
17
+ isGoogleBound: boolean;
18
+ is_login_changed: boolean;
19
+ isLoginChanged: boolean;
20
+ is_change_login_banned: boolean;
21
+ ban_change_login_expires: number;
22
+ is_change_avatar_banned: boolean;
23
+ ban_change_avatar_expires: number;
24
+ channel_id: number;
25
+ }
26
+ export interface IBadgesResponse extends IPageableResponse<IBadge> {
27
+ profile: IProfile;
28
+ }
29
+ export interface IEmailChangeConfirmResponse extends IResponse {
30
+ emailHint: string;
31
+ }
32
+ export interface IEmailChangeRequest {
33
+ oldEmail: string;
34
+ newEmail: string;
35
+ password: string;
36
+ }
37
+ export interface ILoginInfoResponse extends IResponse {
38
+ login: string;
39
+ avatar: string;
40
+ is_change_avaliable: boolean;
41
+ last_change_at: number;
42
+ next_change_avaliable_at: number;
43
+ }
44
+ export interface INewLogin {
45
+ '@id': number;
46
+ id: number;
47
+ newLogin: string;
48
+ timestamp: number;
49
+ }
50
+ export declare enum PrivacyState {
51
+ All = 0,
52
+ OnlyFriends = 1,
53
+ OnlyMe = 2
54
+ }
55
+ export declare enum PrivacyFriendRequestState {
56
+ All = 0,
57
+ OnlyMe = 1
58
+ }
59
+ export interface IPasswordChangeResponse extends IResponse {
60
+ token: string;
61
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PrivacyFriendRequestState = exports.PrivacyState = void 0;
4
+ var PrivacyState;
5
+ (function (PrivacyState) {
6
+ PrivacyState[PrivacyState["All"] = 0] = "All";
7
+ PrivacyState[PrivacyState["OnlyFriends"] = 1] = "OnlyFriends";
8
+ PrivacyState[PrivacyState["OnlyMe"] = 2] = "OnlyMe";
9
+ })(PrivacyState || (exports.PrivacyState = PrivacyState = {}));
10
+ var PrivacyFriendRequestState;
11
+ (function (PrivacyFriendRequestState) {
12
+ PrivacyFriendRequestState[PrivacyFriendRequestState["All"] = 0] = "All";
13
+ PrivacyFriendRequestState[PrivacyFriendRequestState["OnlyMe"] = 1] = "OnlyMe";
14
+ })(PrivacyFriendRequestState || (exports.PrivacyFriendRequestState = PrivacyFriendRequestState = {}));
@@ -0,0 +1,36 @@
1
+ import { IArticleCreateRequest, IArticleImageItem, IEmbedData } from "../types";
2
+ import { Article } from "../classes/Article";
3
+ export interface IArticleTextBlockBuilder {
4
+ type: "paragraph" | "header";
5
+ text: string;
6
+ }
7
+ export interface IArticleQuoteBlockBuilder {
8
+ type: "quote";
9
+ text: string;
10
+ caption: string;
11
+ }
12
+ export interface IArticleListBlockBuilder {
13
+ type: "orderedList" | "unorderedList";
14
+ items: string[];
15
+ }
16
+ export interface IArticleDelimiterBlockBuilder {
17
+ type: "delimiter";
18
+ }
19
+ export interface IArticleImageBlockBuilder {
20
+ type: "media";
21
+ items: IArticleImageItem[];
22
+ }
23
+ export interface IArticleEmbedBlockBuilder {
24
+ type: "embed";
25
+ data: IEmbedData;
26
+ }
27
+ export declare class ArticleBuilder {
28
+ private blocks;
29
+ private repostArticleId;
30
+ private readonly maxBlockCount;
31
+ private generateUniqueId;
32
+ returnBuildAricle(): IArticleCreateRequest;
33
+ setRepostArticle(article: Article | number): ArticleBuilder;
34
+ addBlock(data: IArticleTextBlockBuilder | IArticleQuoteBlockBuilder | IArticleListBlockBuilder | IArticleDelimiterBlockBuilder | IArticleImageBlockBuilder | IArticleEmbedBlockBuilder): ArticleBuilder;
35
+ addBlocks(data: (IArticleTextBlockBuilder | IArticleQuoteBlockBuilder | IArticleListBlockBuilder | IArticleDelimiterBlockBuilder | IArticleImageBlockBuilder | IArticleEmbedBlockBuilder)[]): ArticleBuilder;
36
+ }