@ansango/lastfm-api 3.1.3 → 3.3.0

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 (168) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/README.md +150 -15
  3. package/dist/client.d.ts +1 -1
  4. package/dist/client.d.ts.map +1 -1
  5. package/dist/client.js +2 -2
  6. package/dist/client.js.map +1 -1
  7. package/dist/config.d.ts.map +1 -1
  8. package/dist/config.js +2 -2
  9. package/dist/config.js.map +1 -1
  10. package/dist/entrypoints/album.d.ts +1 -1
  11. package/dist/entrypoints/album.d.ts.map +1 -1
  12. package/dist/entrypoints/album.js.map +1 -1
  13. package/dist/entrypoints/album.schemas.d.ts.map +1 -1
  14. package/dist/entrypoints/album.schemas.js.map +1 -1
  15. package/dist/entrypoints/artist.d.ts +1 -1
  16. package/dist/entrypoints/artist.d.ts.map +1 -1
  17. package/dist/entrypoints/artist.js.map +1 -1
  18. package/dist/entrypoints/artist.schemas.d.ts.map +1 -1
  19. package/dist/entrypoints/artist.schemas.js.map +1 -1
  20. package/dist/entrypoints/auth.d.ts +1 -1
  21. package/dist/entrypoints/auth.d.ts.map +1 -1
  22. package/dist/entrypoints/auth.js.map +1 -1
  23. package/dist/entrypoints/auth.schemas.d.ts.map +1 -1
  24. package/dist/entrypoints/auth.schemas.js.map +1 -1
  25. package/dist/entrypoints/base.schemas.d.ts.map +1 -1
  26. package/dist/entrypoints/base.schemas.js.map +1 -1
  27. package/dist/entrypoints/chart.d.ts +1 -1
  28. package/dist/entrypoints/chart.d.ts.map +1 -1
  29. package/dist/entrypoints/chart.js.map +1 -1
  30. package/dist/entrypoints/chart.schemas.d.ts.map +1 -1
  31. package/dist/entrypoints/chart.schemas.js.map +1 -1
  32. package/dist/entrypoints/geo.d.ts.map +1 -1
  33. package/dist/entrypoints/geo.js.map +1 -1
  34. package/dist/entrypoints/geo.schemas.d.ts.map +1 -1
  35. package/dist/entrypoints/geo.schemas.js.map +1 -1
  36. package/dist/entrypoints/library.d.ts.map +1 -1
  37. package/dist/entrypoints/library.js.map +1 -1
  38. package/dist/entrypoints/library.schemas.d.ts.map +1 -1
  39. package/dist/entrypoints/library.schemas.js.map +1 -1
  40. package/dist/entrypoints/tag.d.ts.map +1 -1
  41. package/dist/entrypoints/tag.js.map +1 -1
  42. package/dist/entrypoints/tag.schemas.d.ts.map +1 -1
  43. package/dist/entrypoints/tag.schemas.js.map +1 -1
  44. package/dist/entrypoints/track.d.ts.map +1 -1
  45. package/dist/entrypoints/track.js.map +1 -1
  46. package/dist/entrypoints/track.schemas.d.ts.map +1 -1
  47. package/dist/entrypoints/track.schemas.js.map +1 -1
  48. package/dist/entrypoints/user.d.ts.map +1 -1
  49. package/dist/entrypoints/user.js.map +1 -1
  50. package/dist/entrypoints/user.schemas.d.ts.map +1 -1
  51. package/dist/entrypoints/user.schemas.js.map +1 -1
  52. package/dist/index.d.ts +18 -18
  53. package/dist/index.d.ts.map +1 -1
  54. package/dist/index.js +10 -10
  55. package/dist/index.js.map +1 -1
  56. package/dist/services/album.d.ts +41 -1
  57. package/dist/services/album.d.ts.map +1 -1
  58. package/dist/services/album.js +35 -2
  59. package/dist/services/album.js.map +1 -1
  60. package/dist/services/album.schemas.d.ts +51 -12
  61. package/dist/services/album.schemas.d.ts.map +1 -1
  62. package/dist/services/album.schemas.js +48 -10
  63. package/dist/services/album.schemas.js.map +1 -1
  64. package/dist/services/artist.d.ts +48 -1
  65. package/dist/services/artist.d.ts.map +1 -1
  66. package/dist/services/artist.js +34 -2
  67. package/dist/services/artist.js.map +1 -1
  68. package/dist/services/artist.schemas.d.ts +99 -25
  69. package/dist/services/artist.schemas.d.ts.map +1 -1
  70. package/dist/services/artist.schemas.js +125 -60
  71. package/dist/services/artist.schemas.js.map +1 -1
  72. package/dist/services/auth.d.ts +35 -1
  73. package/dist/services/auth.d.ts.map +1 -1
  74. package/dist/services/auth.js +19 -2
  75. package/dist/services/auth.js.map +1 -1
  76. package/dist/services/auth.schemas.d.ts +10 -1
  77. package/dist/services/auth.schemas.d.ts.map +1 -1
  78. package/dist/services/auth.schemas.js +13 -2
  79. package/dist/services/auth.schemas.js.map +1 -1
  80. package/dist/services/chart.d.ts +1 -1
  81. package/dist/services/chart.d.ts.map +1 -1
  82. package/dist/services/chart.js +2 -2
  83. package/dist/services/chart.js.map +1 -1
  84. package/dist/services/chart.schemas.d.ts +6 -6
  85. package/dist/services/chart.schemas.d.ts.map +1 -1
  86. package/dist/services/chart.schemas.js +21 -21
  87. package/dist/services/chart.schemas.js.map +1 -1
  88. package/dist/services/geo.d.ts +1 -1
  89. package/dist/services/geo.d.ts.map +1 -1
  90. package/dist/services/geo.js +2 -2
  91. package/dist/services/geo.js.map +1 -1
  92. package/dist/services/geo.schemas.d.ts +6 -6
  93. package/dist/services/geo.schemas.d.ts.map +1 -1
  94. package/dist/services/geo.schemas.js +17 -17
  95. package/dist/services/geo.schemas.js.map +1 -1
  96. package/dist/services/index.d.ts +12 -12
  97. package/dist/services/index.d.ts.map +1 -1
  98. package/dist/services/index.js +13 -13
  99. package/dist/services/index.js.map +1 -1
  100. package/dist/services/library.d.ts +1 -1
  101. package/dist/services/library.d.ts.map +1 -1
  102. package/dist/services/library.js +2 -2
  103. package/dist/services/library.js.map +1 -1
  104. package/dist/services/library.schemas.d.ts +3 -3
  105. package/dist/services/library.schemas.d.ts.map +1 -1
  106. package/dist/services/library.schemas.js +8 -8
  107. package/dist/services/library.schemas.js.map +1 -1
  108. package/dist/services/schemas/base.entities.schemas.d.ts +3 -3
  109. package/dist/services/schemas/base.entities.schemas.d.ts.map +1 -1
  110. package/dist/services/schemas/base.entities.schemas.js +9 -9
  111. package/dist/services/schemas/base.entities.schemas.js.map +1 -1
  112. package/dist/services/schemas/base.entity-names.schemas.d.ts +1 -1
  113. package/dist/services/schemas/base.entity-names.schemas.d.ts.map +1 -1
  114. package/dist/services/schemas/base.entity-names.schemas.js +1 -1
  115. package/dist/services/schemas/base.entity-names.schemas.js.map +1 -1
  116. package/dist/services/schemas/base.metadata.schemas.d.ts +1 -1
  117. package/dist/services/schemas/base.metadata.schemas.d.ts.map +1 -1
  118. package/dist/services/schemas/base.metadata.schemas.js +1 -1
  119. package/dist/services/schemas/base.metadata.schemas.js.map +1 -1
  120. package/dist/services/schemas/base.pagination.schemas.d.ts +1 -1
  121. package/dist/services/schemas/base.pagination.schemas.d.ts.map +1 -1
  122. package/dist/services/schemas/base.pagination.schemas.js +1 -1
  123. package/dist/services/schemas/base.pagination.schemas.js.map +1 -1
  124. package/dist/services/schemas/base.primitives.schemas.d.ts +3 -1
  125. package/dist/services/schemas/base.primitives.schemas.d.ts.map +1 -1
  126. package/dist/services/schemas/base.primitives.schemas.js +8 -7
  127. package/dist/services/schemas/base.primitives.schemas.js.map +1 -1
  128. package/dist/services/schemas/index.d.ts +5 -5
  129. package/dist/services/schemas/index.d.ts.map +1 -1
  130. package/dist/services/schemas/index.js +5 -5
  131. package/dist/services/schemas/index.js.map +1 -1
  132. package/dist/services/tag.d.ts +1 -1
  133. package/dist/services/tag.d.ts.map +1 -1
  134. package/dist/services/tag.js +2 -2
  135. package/dist/services/tag.js.map +1 -1
  136. package/dist/services/tag.schemas.d.ts +13 -13
  137. package/dist/services/tag.schemas.d.ts.map +1 -1
  138. package/dist/services/tag.schemas.js +50 -50
  139. package/dist/services/tag.schemas.js.map +1 -1
  140. package/dist/services/track.d.ts +122 -4
  141. package/dist/services/track.d.ts.map +1 -1
  142. package/dist/services/track.js +79 -10
  143. package/dist/services/track.js.map +1 -1
  144. package/dist/services/track.schemas.d.ts +213 -25
  145. package/dist/services/track.schemas.d.ts.map +1 -1
  146. package/dist/services/track.schemas.js +206 -57
  147. package/dist/services/track.schemas.js.map +1 -1
  148. package/dist/services/track.utils.d.ts +16 -7
  149. package/dist/services/track.utils.d.ts.map +1 -1
  150. package/dist/services/track.utils.js +49 -48
  151. package/dist/services/track.utils.js.map +1 -1
  152. package/dist/services/user.d.ts +19 -1
  153. package/dist/services/user.d.ts.map +1 -1
  154. package/dist/services/user.js +3 -2
  155. package/dist/services/user.js.map +1 -1
  156. package/dist/services/user.schemas.d.ts +321 -63
  157. package/dist/services/user.schemas.d.ts.map +1 -1
  158. package/dist/services/user.schemas.js +197 -88
  159. package/dist/services/user.schemas.js.map +1 -1
  160. package/dist/utils.d.ts +37 -2
  161. package/dist/utils.d.ts.map +1 -1
  162. package/dist/utils.js +105 -20
  163. package/dist/utils.js.map +1 -1
  164. package/package.json +167 -154
  165. package/dist/__tests__/utils.test.d.ts +0 -2
  166. package/dist/__tests__/utils.test.d.ts.map +0 -1
  167. package/dist/__tests__/utils.test.js +0 -86
  168. package/dist/__tests__/utils.test.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { z } from "zod";
1
+ import { z } from 'zod';
2
2
  export declare const trackArtistSchema: z.ZodObject<{
3
3
  name: z.ZodString;
4
4
  mbid: z.ZodString;
@@ -10,10 +10,10 @@ export declare const trackAlbumSchema: z.ZodObject<{
10
10
  mbid: z.ZodString;
11
11
  url: z.ZodString;
12
12
  image: z.ZodArray<z.ZodObject<{
13
- "#text": z.ZodString;
13
+ '#text': z.ZodString;
14
14
  size: z.ZodUnion<readonly [z.ZodLiteral<"small">, z.ZodLiteral<"medium">, z.ZodLiteral<"large">, z.ZodLiteral<"extralarge">, z.ZodLiteral<"mega">]>;
15
15
  }, z.core.$strip>>;
16
- "@attr": z.ZodObject<{
16
+ '@attr': z.ZodObject<{
17
17
  position: z.ZodString;
18
18
  }, z.core.$strip>;
19
19
  }, z.core.$strip>;
@@ -50,10 +50,10 @@ export declare const trackSchema: z.ZodObject<{
50
50
  mbid: z.ZodString;
51
51
  url: z.ZodString;
52
52
  image: z.ZodArray<z.ZodObject<{
53
- "#text": z.ZodString;
53
+ '#text': z.ZodString;
54
54
  size: z.ZodUnion<readonly [z.ZodLiteral<"small">, z.ZodLiteral<"medium">, z.ZodLiteral<"large">, z.ZodLiteral<"extralarge">, z.ZodLiteral<"mega">]>;
55
55
  }, z.core.$strip>>;
56
- "@attr": z.ZodObject<{
56
+ '@attr': z.ZodObject<{
57
57
  position: z.ZodString;
58
58
  }, z.core.$strip>;
59
59
  }, z.core.$strip>;
@@ -95,10 +95,10 @@ export declare const trackGetInfoResponseSchema: z.ZodObject<{
95
95
  mbid: z.ZodString;
96
96
  url: z.ZodString;
97
97
  image: z.ZodArray<z.ZodObject<{
98
- "#text": z.ZodString;
98
+ '#text': z.ZodString;
99
99
  size: z.ZodUnion<readonly [z.ZodLiteral<"small">, z.ZodLiteral<"medium">, z.ZodLiteral<"large">, z.ZodLiteral<"extralarge">, z.ZodLiteral<"mega">]>;
100
100
  }, z.core.$strip>>;
101
- "@attr": z.ZodObject<{
101
+ '@attr': z.ZodObject<{
102
102
  position: z.ZodString;
103
103
  }, z.core.$strip>;
104
104
  }, z.core.$strip>;
@@ -137,11 +137,11 @@ export declare const trackGetSimilarResponseSchema: z.ZodObject<{
137
137
  url: z.ZodString;
138
138
  }, z.core.$strip>;
139
139
  image: z.ZodArray<z.ZodObject<{
140
- "#text": z.ZodString;
140
+ '#text': z.ZodString;
141
141
  size: z.ZodUnion<readonly [z.ZodLiteral<"small">, z.ZodLiteral<"medium">, z.ZodLiteral<"large">, z.ZodLiteral<"extralarge">, z.ZodLiteral<"mega">]>;
142
142
  }, z.core.$strip>>;
143
143
  }, z.core.$strip>>;
144
- "@attr": z.ZodObject<{
144
+ '@attr': z.ZodObject<{
145
145
  artist: z.ZodString;
146
146
  }, z.core.$strip>;
147
147
  }, z.core.$strip>;
@@ -158,7 +158,7 @@ export declare const trackGetTagsResponseSchema: z.ZodObject<{
158
158
  name: z.ZodString;
159
159
  url: z.ZodString;
160
160
  }, z.core.$strip>>;
161
- "@attr": z.ZodObject<{
161
+ '@attr': z.ZodObject<{
162
162
  artist: z.ZodString;
163
163
  track: z.ZodString;
164
164
  }, z.core.$strip>;
@@ -176,7 +176,7 @@ export declare const trackGetTopTagsResponseSchema: z.ZodObject<{
176
176
  url: z.ZodString;
177
177
  count: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
178
178
  }, z.core.$strip>>;
179
- "@attr": z.ZodObject<{
179
+ '@attr': z.ZodObject<{
180
180
  artist: z.ZodString;
181
181
  track: z.ZodString;
182
182
  }, z.core.$strip>;
@@ -190,15 +190,15 @@ export declare const trackSearchRequestSchema: z.ZodObject<{
190
190
  }, z.core.$strip>;
191
191
  export declare const trackSearchResponseSchema: z.ZodObject<{
192
192
  results: z.ZodObject<{
193
- "opensearch:Query": z.ZodObject<{
194
- "#text": z.ZodString;
193
+ 'opensearch:Query': z.ZodObject<{
194
+ '#text': z.ZodString;
195
195
  role: z.ZodString;
196
196
  searchTerms: z.ZodString;
197
197
  startPage: z.ZodString;
198
198
  }, z.core.$strip>;
199
- "opensearch:totalResults": z.ZodString;
200
- "opensearch:startIndex": z.ZodString;
201
- "opensearch:itemsPerPage": z.ZodString;
199
+ 'opensearch:totalResults': z.ZodString;
200
+ 'opensearch:startIndex': z.ZodString;
201
+ 'opensearch:itemsPerPage': z.ZodString;
202
202
  trackmatches: z.ZodObject<{
203
203
  track: z.ZodArray<z.ZodObject<{
204
204
  name: z.ZodString;
@@ -206,21 +206,79 @@ export declare const trackSearchResponseSchema: z.ZodObject<{
206
206
  url: z.ZodString;
207
207
  listeners: z.ZodString;
208
208
  image: z.ZodArray<z.ZodObject<{
209
- "#text": z.ZodString;
209
+ '#text': z.ZodString;
210
210
  size: z.ZodUnion<readonly [z.ZodLiteral<"small">, z.ZodLiteral<"medium">, z.ZodLiteral<"large">, z.ZodLiteral<"extralarge">, z.ZodLiteral<"mega">]>;
211
211
  }, z.core.$strip>>;
212
212
  mbid: z.ZodString;
213
213
  }, z.core.$strip>>;
214
214
  }, z.core.$strip>;
215
- "@attr": z.ZodObject<{
215
+ '@attr': z.ZodObject<{
216
216
  for: z.ZodString;
217
217
  }, z.core.$strip>;
218
218
  }, z.core.$strip>;
219
219
  }, z.core.$strip>;
220
+ /**
221
+ * Track correction entry returned by `track.getCorrection`.
222
+ *
223
+ * Each entry carries the canonical track and artist identities
224
+ * (`name`, `mbid`, `url`) and per-field "corrected" flags plus a
225
+ * positional `index` attribute indicating which input this correction
226
+ * maps to.
227
+ *
228
+ * The `corrected` flags and the `index` are sent by Last.fm as JSON
229
+ * strings ("0" / "1") — we accept them as strings.
230
+ * https://www.last.fm/api/show/track.getCorrection
231
+ */
232
+ export declare const trackCorrectionSchema: z.ZodObject<{
233
+ track: z.ZodObject<{
234
+ name: z.ZodString;
235
+ mbid: z.ZodString;
236
+ url: z.ZodString;
237
+ }, z.core.$strip>;
238
+ artist: z.ZodObject<{
239
+ name: z.ZodString;
240
+ mbid: z.ZodString;
241
+ url: z.ZodString;
242
+ }, z.core.$strip>;
243
+ artistcorrected: z.ZodOptional<z.ZodString>;
244
+ trackcorrected: z.ZodOptional<z.ZodString>;
245
+ '@attr': z.ZodOptional<z.ZodObject<{
246
+ index: z.ZodString;
247
+ }, z.core.$strip>>;
248
+ }, z.core.$strip>;
249
+ export declare const trackGetCorrectionRequestSchema: z.ZodObject<{
250
+ artist: z.ZodString;
251
+ track: z.ZodString;
252
+ }, z.core.$strip>;
253
+ export declare const trackGetCorrectionResponseSchema: z.ZodObject<{
254
+ corrections: z.ZodObject<{
255
+ correction: z.ZodArray<z.ZodObject<{
256
+ track: z.ZodObject<{
257
+ name: z.ZodString;
258
+ mbid: z.ZodString;
259
+ url: z.ZodString;
260
+ }, z.core.$strip>;
261
+ artist: z.ZodObject<{
262
+ name: z.ZodString;
263
+ mbid: z.ZodString;
264
+ url: z.ZodString;
265
+ }, z.core.$strip>;
266
+ artistcorrected: z.ZodOptional<z.ZodString>;
267
+ trackcorrected: z.ZodOptional<z.ZodString>;
268
+ '@attr': z.ZodOptional<z.ZodObject<{
269
+ index: z.ZodString;
270
+ }, z.core.$strip>>;
271
+ }, z.core.$strip>>;
272
+ '@attr': z.ZodOptional<z.ZodObject<{
273
+ artist: z.ZodString;
274
+ track: z.ZodString;
275
+ }, z.core.$strip>>;
276
+ }, z.core.$strip>;
277
+ }, z.core.$strip>;
220
278
  export declare const trackScrobbleRequestSchema: z.ZodObject<{
221
279
  artist: z.ZodString;
222
280
  track: z.ZodString;
223
- timestamp: z.ZodString;
281
+ timestamp: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
224
282
  sk: z.ZodOptional<z.ZodString>;
225
283
  album: z.ZodOptional<z.ZodString>;
226
284
  }, z.core.$strip>;
@@ -229,26 +287,26 @@ export declare const trackScrobbleResponseSchema: z.ZodObject<{
229
287
  scrobble: z.ZodObject<{
230
288
  artist: z.ZodObject<{
231
289
  corrected: z.ZodString;
232
- "#text": z.ZodString;
290
+ '#text': z.ZodString;
233
291
  }, z.core.$strip>;
234
292
  album: z.ZodObject<{
235
293
  corrected: z.ZodString;
236
294
  }, z.core.$strip>;
237
295
  track: z.ZodObject<{
238
296
  corrected: z.ZodString;
239
- "#text": z.ZodString;
297
+ '#text': z.ZodString;
240
298
  }, z.core.$strip>;
241
299
  ignoredMessage: z.ZodObject<{
242
300
  code: z.ZodString;
243
- "#text": z.ZodString;
301
+ '#text': z.ZodString;
244
302
  }, z.core.$strip>;
245
303
  albumArtist: z.ZodObject<{
246
304
  corrected: z.ZodString;
247
- "#text": z.ZodString;
305
+ '#text': z.ZodString;
248
306
  }, z.core.$strip>;
249
307
  timestamp: z.ZodString;
250
308
  }, z.core.$strip>;
251
- "@attr": z.ZodObject<{
309
+ '@attr': z.ZodObject<{
252
310
  accepted: z.ZodNumber;
253
311
  ignored: z.ZodNumber;
254
312
  }, z.core.$strip>;
@@ -259,10 +317,127 @@ export declare const batchTracksScrobbleRequestSchema: z.ZodObject<{
259
317
  track: z.ZodString;
260
318
  artist: z.ZodString;
261
319
  album: z.ZodOptional<z.ZodString>;
262
- timestamp: z.ZodString;
320
+ timestamp: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
263
321
  }, z.core.$strip>>;
264
322
  sk: z.ZodOptional<z.ZodString>;
265
323
  }, z.core.$strip>;
324
+ /**
325
+ * Maximum number of tags accepted by `track.addTags` per the Last.fm
326
+ * API documentation.
327
+ */
328
+ export declare const MAX_TRACK_TAGS_PER_ADD = 10;
329
+ /**
330
+ * Request shape for `track.addTags`. The `tags` array is sent on the
331
+ * wire as a comma-separated string and validated to at most
332
+ * `MAX_TRACK_TAGS_PER_ADD` entries.
333
+ * https://www.last.fm/api/show/track.addTags
334
+ */
335
+ export declare const trackAddTagsRequestSchema: z.ZodObject<{
336
+ artist: z.ZodString;
337
+ track: z.ZodString;
338
+ tags: z.ZodArray<z.ZodString>;
339
+ sk: z.ZodOptional<z.ZodString>;
340
+ }, z.core.$strip>;
341
+ /**
342
+ * Request shape for `track.removeTag`. A single tag is removed per
343
+ * call.
344
+ * https://www.last.fm/api/show/track.removeTag
345
+ */
346
+ export declare const trackRemoveTagRequestSchema: z.ZodObject<{
347
+ artist: z.ZodString;
348
+ track: z.ZodString;
349
+ tag: z.ZodString;
350
+ sk: z.ZodOptional<z.ZodString>;
351
+ }, z.core.$strip>;
352
+ /**
353
+ * Request shape for `track.love` / `track.unlove`. Both share the
354
+ * same body — only the method name changes.
355
+ * https://www.last.fm/api/show/track.love
356
+ * https://www.last.fm/api/show/track.unlove
357
+ */
358
+ export declare const trackLoveRequestSchema: z.ZodObject<{
359
+ artist: z.ZodString;
360
+ track: z.ZodString;
361
+ sk: z.ZodOptional<z.ZodString>;
362
+ }, z.core.$strip>;
363
+ export declare const trackUnloveRequestSchema: z.ZodObject<{
364
+ artist: z.ZodString;
365
+ track: z.ZodString;
366
+ sk: z.ZodOptional<z.ZodString>;
367
+ }, z.core.$strip>;
368
+ /**
369
+ * Empty success payload for the void tag/love mutations.
370
+ */
371
+ export declare const trackMutationResponseSchema: z.ZodUnknown;
372
+ /**
373
+ * Request shape for `track.updateNowPlaying`. Optional fields are
374
+ * omitted from both the body and the signature when undefined.
375
+ * https://www.last.fm/api/show/track.updateNowPlaying
376
+ */
377
+ export declare const trackUpdateNowPlayingRequestSchema: z.ZodObject<{
378
+ artist: z.ZodString;
379
+ track: z.ZodString;
380
+ album: z.ZodOptional<z.ZodString>;
381
+ trackNumber: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
382
+ context: z.ZodOptional<z.ZodString>;
383
+ mbid: z.ZodOptional<z.ZodString>;
384
+ duration: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
385
+ albumArtist: z.ZodOptional<z.ZodString>;
386
+ sk: z.ZodOptional<z.ZodString>;
387
+ }, z.core.$strip>;
388
+ /**
389
+ * `{ corrected, "#text" }` payload returned for the textual fields of
390
+ * a now-playing announcement. `corrected` is sent by Last.fm as a
391
+ * JSON string ("0" / "1").
392
+ */
393
+ export declare const correctedTextFieldSchema: z.ZodObject<{
394
+ corrected: z.ZodString;
395
+ '#text': z.ZodString;
396
+ }, z.core.$strip>;
397
+ /**
398
+ * `{ corrected }` payload for fields that don't carry a `#text`
399
+ * value (e.g. `album` in the now-playing response).
400
+ */
401
+ export declare const correctedFlagOnlyFieldSchema: z.ZodObject<{
402
+ corrected: z.ZodString;
403
+ }, z.core.$strip>;
404
+ /**
405
+ * `ignoredMessage` block returned by the now-playing endpoint when
406
+ * the request is accepted but partially or fully ignored.
407
+ */
408
+ export declare const nowPlayingIgnoredMessageSchema: z.ZodObject<{
409
+ code: z.ZodString;
410
+ '#text': z.ZodString;
411
+ }, z.core.$strip>;
412
+ /**
413
+ * Response root for `track.updateNowPlaying`. The `nowplaying` block
414
+ * carries the corrected identities and the ignored-message code; all
415
+ * inner fields are optional because Last.fm only echoes the parts
416
+ * that were actually processed.
417
+ */
418
+ export declare const trackUpdateNowPlayingResponseSchema: z.ZodObject<{
419
+ nowplaying: z.ZodObject<{
420
+ track: z.ZodOptional<z.ZodObject<{
421
+ corrected: z.ZodString;
422
+ '#text': z.ZodString;
423
+ }, z.core.$strip>>;
424
+ artist: z.ZodOptional<z.ZodObject<{
425
+ corrected: z.ZodString;
426
+ '#text': z.ZodString;
427
+ }, z.core.$strip>>;
428
+ album: z.ZodOptional<z.ZodObject<{
429
+ corrected: z.ZodString;
430
+ }, z.core.$strip>>;
431
+ albumArtist: z.ZodOptional<z.ZodObject<{
432
+ corrected: z.ZodString;
433
+ '#text': z.ZodString;
434
+ }, z.core.$strip>>;
435
+ ignoredMessage: z.ZodObject<{
436
+ code: z.ZodString;
437
+ '#text': z.ZodString;
438
+ }, z.core.$strip>;
439
+ }, z.core.$strip>;
440
+ }, z.core.$strip>;
266
441
  export type TrackArtist = z.infer<typeof trackArtistSchema>;
267
442
  export type TrackAlbum = z.infer<typeof trackAlbumSchema>;
268
443
  export type TrackTopTag = z.infer<typeof trackTopTagSchema>;
@@ -278,7 +453,20 @@ export type TrackGetTopTagsRequest = z.infer<typeof trackGetTopTagsRequestSchema
278
453
  export type TrackGetTopTagsResponse = z.infer<typeof trackGetTopTagsResponseSchema>;
279
454
  export type TrackSearchRequest = z.infer<typeof trackSearchRequestSchema>;
280
455
  export type TrackSearchResponse = z.infer<typeof trackSearchResponseSchema>;
456
+ export type TrackCorrection = z.infer<typeof trackCorrectionSchema>;
457
+ export type TrackGetCorrectionRequest = z.infer<typeof trackGetCorrectionRequestSchema>;
458
+ export type TrackGetCorrectionResponse = z.infer<typeof trackGetCorrectionResponseSchema>;
281
459
  export type TrackScrobbleRequest = z.infer<typeof trackScrobbleRequestSchema>;
282
460
  export type TrackScrobbleResponse = z.infer<typeof trackScrobbleResponseSchema>;
283
461
  export type BatchTracksScrobbleRequest = z.infer<typeof batchTracksScrobbleRequestSchema>;
462
+ export type TrackAddTagsRequest = z.infer<typeof trackAddTagsRequestSchema>;
463
+ export type TrackRemoveTagRequest = z.infer<typeof trackRemoveTagRequestSchema>;
464
+ export type TrackLoveRequest = z.infer<typeof trackLoveRequestSchema>;
465
+ export type TrackUnloveRequest = TrackLoveRequest;
466
+ export type TrackMutationResponse = z.infer<typeof trackMutationResponseSchema>;
467
+ export type TrackUpdateNowPlayingRequest = z.infer<typeof trackUpdateNowPlayingRequestSchema>;
468
+ export type CorrectedTextField = z.infer<typeof correctedTextFieldSchema>;
469
+ export type CorrectedFlagOnlyField = z.infer<typeof correctedFlagOnlyFieldSchema>;
470
+ export type NowPlayingIgnoredMessage = z.infer<typeof nowPlayingIgnoredMessageSchema>;
471
+ export type TrackUpdateNowPlayingResponse = z.infer<typeof trackUpdateNowPlayingResponseSchema>;
284
472
  //# sourceMappingURL=track.schemas.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"track.schemas.d.ts","sourceRoot":"","sources":["../../src/services/track.schemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"track.schemas.d.ts","sourceRoot":"","sources":["../../src/services/track.schemas.ts"],"names":[],"mappings":"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"}