@keystrokehq/spotify 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 (72) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +113 -0
  3. package/dist/_official/index.d.mts +32 -0
  4. package/dist/_official/index.mjs +3 -0
  5. package/dist/_runtime/index.d.mts +1 -0
  6. package/dist/_runtime/index.mjs +1 -0
  7. package/dist/albums.d.mts +265 -0
  8. package/dist/albums.mjs +72 -0
  9. package/dist/artists.d.mts +237 -0
  10. package/dist/artists.mjs +84 -0
  11. package/dist/audio-analysis.d.mts +91 -0
  12. package/dist/audio-analysis.mjs +19 -0
  13. package/dist/audio-features.d.mts +61 -0
  14. package/dist/audio-features.mjs +31 -0
  15. package/dist/audiobooks.d.mts +176 -0
  16. package/dist/audiobooks.mjs +59 -0
  17. package/dist/browse.d.mts +74 -0
  18. package/dist/browse.mjs +31 -0
  19. package/dist/categories.d.mts +118 -0
  20. package/dist/categories.mjs +66 -0
  21. package/dist/chapters.d.mts +163 -0
  22. package/dist/chapters.mjs +39 -0
  23. package/dist/client.d.mts +3486 -0
  24. package/dist/client.mjs +758 -0
  25. package/dist/connection.d.mts +2 -0
  26. package/dist/connection.mjs +3 -0
  27. package/dist/episodes.d.mts +149 -0
  28. package/dist/episodes.mjs +39 -0
  29. package/dist/errors.d.mts +34 -0
  30. package/dist/errors.mjs +89 -0
  31. package/dist/events.d.mts +613 -0
  32. package/dist/events.mjs +55 -0
  33. package/dist/factory-tZba6Hij.mjs +8 -0
  34. package/dist/follow.d.mts +83 -0
  35. package/dist/follow.mjs +65 -0
  36. package/dist/genres.d.mts +14 -0
  37. package/dist/genres.mjs +19 -0
  38. package/dist/index.d.mts +1 -0
  39. package/dist/index.mjs +1 -0
  40. package/dist/integration-DQ5Egd4f.d.mts +41 -0
  41. package/dist/integration-ykoImsCq.mjs +78 -0
  42. package/dist/library.d.mts +472 -0
  43. package/dist/library.mjs +225 -0
  44. package/dist/markets.d.mts +14 -0
  45. package/dist/markets.mjs +20 -0
  46. package/dist/me.d.mts +169 -0
  47. package/dist/me.mjs +58 -0
  48. package/dist/messaging.d.mts +1 -0
  49. package/dist/messaging.mjs +1 -0
  50. package/dist/operations.d.mts +6 -0
  51. package/dist/operations.mjs +237 -0
  52. package/dist/player.d.mts +877 -0
  53. package/dist/player.mjs +220 -0
  54. package/dist/playlists.d.mts +546 -0
  55. package/dist/playlists.mjs +243 -0
  56. package/dist/recommendations.d.mts +144 -0
  57. package/dist/recommendations.mjs +137 -0
  58. package/dist/schemas.d.mts +3312 -0
  59. package/dist/schemas.mjs +460 -0
  60. package/dist/search.d.mts +389 -0
  61. package/dist/search.mjs +42 -0
  62. package/dist/shows.d.mts +159 -0
  63. package/dist/shows.mjs +59 -0
  64. package/dist/tracks.d.mts +173 -0
  65. package/dist/tracks.mjs +37 -0
  66. package/dist/triggers.d.mts +45 -0
  67. package/dist/triggers.mjs +201 -0
  68. package/dist/users.d.mts +35 -0
  69. package/dist/users.mjs +20 -0
  70. package/dist/verification.d.mts +1 -0
  71. package/dist/verification.mjs +1 -0
  72. package/package.json +187 -0
@@ -0,0 +1,613 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/events.d.ts
4
+ declare const spotifyNewDeviceAddedEventSchema: z.ZodObject<{
5
+ eventId: z.ZodString;
6
+ type: z.ZodLiteral<"device.added">;
7
+ device: z.ZodObject<{
8
+ id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
9
+ isActive: z.ZodBoolean;
10
+ isPrivateSession: z.ZodBoolean;
11
+ isRestricted: z.ZodBoolean;
12
+ name: z.ZodString;
13
+ type: z.ZodString;
14
+ volumePercent: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
15
+ supportsVolume: z.ZodOptional<z.ZodBoolean>;
16
+ }, z.core.$strip>;
17
+ }, z.core.$strip>;
18
+ declare const spotifyPlaylistItemsChangedEventSchema: z.ZodObject<{
19
+ eventId: z.ZodString;
20
+ type: z.ZodEnum<{
21
+ "playlist.item_added": "playlist.item_added";
22
+ "playlist.item_removed": "playlist.item_removed";
23
+ "playlist.item_reordered": "playlist.item_reordered";
24
+ }>;
25
+ playlistId: z.ZodString;
26
+ snapshotId: z.ZodString;
27
+ item: z.ZodObject<{
28
+ addedAt: z.ZodOptional<z.ZodUnion<readonly [z.ZodISODateTime, z.ZodNull]>>;
29
+ addedBy: z.ZodOptional<z.ZodObject<{
30
+ displayName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
31
+ externalUrls: z.ZodOptional<z.ZodObject<{
32
+ spotify: z.ZodOptional<z.ZodURL>;
33
+ }, z.core.$strip>>;
34
+ followers: z.ZodOptional<z.ZodObject<{
35
+ href: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
36
+ total: z.ZodNumber;
37
+ }, z.core.$strip>>;
38
+ href: z.ZodOptional<z.ZodURL>;
39
+ id: z.ZodString;
40
+ type: z.ZodLiteral<"user">;
41
+ uri: z.ZodOptional<z.ZodString>;
42
+ email: z.ZodOptional<z.ZodEmail>;
43
+ country: z.ZodOptional<z.ZodString>;
44
+ product: z.ZodOptional<z.ZodString>;
45
+ images: z.ZodOptional<z.ZodArray<z.ZodObject<{
46
+ url: z.ZodURL;
47
+ height: z.ZodNullable<z.ZodNumber>;
48
+ width: z.ZodNullable<z.ZodNumber>;
49
+ }, z.core.$strip>>>;
50
+ }, z.core.$strip>>;
51
+ isLocal: z.ZodBoolean;
52
+ track: z.ZodOptional<z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
53
+ album: z.ZodOptional<z.ZodObject<{
54
+ albumType: z.ZodOptional<z.ZodEnum<{
55
+ album: "album";
56
+ single: "single";
57
+ compilation: "compilation";
58
+ }>>;
59
+ artists: z.ZodArray<z.ZodObject<{
60
+ externalUrls: z.ZodOptional<z.ZodObject<{
61
+ spotify: z.ZodOptional<z.ZodURL>;
62
+ }, z.core.$strip>>;
63
+ href: z.ZodOptional<z.ZodURL>;
64
+ id: z.ZodString;
65
+ name: z.ZodString;
66
+ type: z.ZodLiteral<"artist">;
67
+ uri: z.ZodOptional<z.ZodString>;
68
+ }, z.core.$strip>>;
69
+ availableMarkets: z.ZodOptional<z.ZodArray<z.ZodString>>;
70
+ externalUrls: z.ZodOptional<z.ZodObject<{
71
+ spotify: z.ZodOptional<z.ZodURL>;
72
+ }, z.core.$strip>>;
73
+ href: z.ZodOptional<z.ZodURL>;
74
+ id: z.ZodString;
75
+ images: z.ZodArray<z.ZodObject<{
76
+ url: z.ZodURL;
77
+ height: z.ZodNullable<z.ZodNumber>;
78
+ width: z.ZodNullable<z.ZodNumber>;
79
+ }, z.core.$strip>>;
80
+ name: z.ZodString;
81
+ releaseDate: z.ZodOptional<z.ZodString>;
82
+ releaseDatePrecision: z.ZodOptional<z.ZodEnum<{
83
+ year: "year";
84
+ month: "month";
85
+ day: "day";
86
+ }>>;
87
+ totalTracks: z.ZodOptional<z.ZodNumber>;
88
+ type: z.ZodLiteral<"album">;
89
+ uri: z.ZodOptional<z.ZodString>;
90
+ }, z.core.$strip>>;
91
+ artists: z.ZodArray<z.ZodObject<{
92
+ externalUrls: z.ZodOptional<z.ZodObject<{
93
+ spotify: z.ZodOptional<z.ZodURL>;
94
+ }, z.core.$strip>>;
95
+ href: z.ZodOptional<z.ZodURL>;
96
+ id: z.ZodString;
97
+ name: z.ZodString;
98
+ type: z.ZodLiteral<"artist">;
99
+ uri: z.ZodOptional<z.ZodString>;
100
+ }, z.core.$strip>>;
101
+ availableMarkets: z.ZodOptional<z.ZodArray<z.ZodString>>;
102
+ discNumber: z.ZodOptional<z.ZodNumber>;
103
+ durationMs: z.ZodNumber;
104
+ explicit: z.ZodBoolean;
105
+ externalIds: z.ZodOptional<z.ZodObject<{
106
+ isrc: z.ZodOptional<z.ZodString>;
107
+ ean: z.ZodOptional<z.ZodString>;
108
+ upc: z.ZodOptional<z.ZodString>;
109
+ }, z.core.$strip>>;
110
+ externalUrls: z.ZodOptional<z.ZodObject<{
111
+ spotify: z.ZodOptional<z.ZodURL>;
112
+ }, z.core.$strip>>;
113
+ href: z.ZodOptional<z.ZodURL>;
114
+ id: z.ZodString;
115
+ isLocal: z.ZodOptional<z.ZodBoolean>;
116
+ isPlayable: z.ZodOptional<z.ZodBoolean>;
117
+ name: z.ZodString;
118
+ popularity: z.ZodOptional<z.ZodNumber>;
119
+ previewUrl: z.ZodOptional<z.ZodUnion<readonly [z.ZodURL, z.ZodNull]>>;
120
+ restrictions: z.ZodOptional<z.ZodObject<{
121
+ reason: z.ZodString;
122
+ }, z.core.$strip>>;
123
+ trackNumber: z.ZodOptional<z.ZodNumber>;
124
+ type: z.ZodLiteral<"track">;
125
+ uri: z.ZodOptional<z.ZodString>;
126
+ }, z.core.$strip>, z.ZodObject<{
127
+ audioPreviewUrl: z.ZodOptional<z.ZodUnion<readonly [z.ZodURL, z.ZodNull]>>;
128
+ description: z.ZodOptional<z.ZodString>;
129
+ durationMs: z.ZodNumber;
130
+ explicit: z.ZodBoolean;
131
+ externalUrls: z.ZodOptional<z.ZodObject<{
132
+ spotify: z.ZodOptional<z.ZodURL>;
133
+ }, z.core.$strip>>;
134
+ href: z.ZodOptional<z.ZodURL>;
135
+ htmlDescription: z.ZodOptional<z.ZodString>;
136
+ id: z.ZodString;
137
+ images: z.ZodArray<z.ZodObject<{
138
+ url: z.ZodURL;
139
+ height: z.ZodNullable<z.ZodNumber>;
140
+ width: z.ZodNullable<z.ZodNumber>;
141
+ }, z.core.$strip>>;
142
+ isExternallyHosted: z.ZodOptional<z.ZodBoolean>;
143
+ isPlayable: z.ZodOptional<z.ZodBoolean>;
144
+ language: z.ZodOptional<z.ZodString>;
145
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
146
+ name: z.ZodString;
147
+ releaseDate: z.ZodOptional<z.ZodString>;
148
+ releaseDatePrecision: z.ZodOptional<z.ZodEnum<{
149
+ year: "year";
150
+ month: "month";
151
+ day: "day";
152
+ }>>;
153
+ resumePoint: z.ZodOptional<z.ZodObject<{
154
+ fullyPlayed: z.ZodBoolean;
155
+ resumePositionMs: z.ZodNumber;
156
+ }, z.core.$strip>>;
157
+ restrictions: z.ZodOptional<z.ZodObject<{
158
+ reason: z.ZodString;
159
+ }, z.core.$strip>>;
160
+ show: z.ZodOptional<z.ZodObject<{
161
+ availableMarkets: z.ZodOptional<z.ZodArray<z.ZodString>>;
162
+ copyrights: z.ZodOptional<z.ZodArray<z.ZodObject<{
163
+ text: z.ZodString;
164
+ type: z.ZodString;
165
+ }, z.core.$strip>>>;
166
+ description: z.ZodOptional<z.ZodString>;
167
+ explicit: z.ZodOptional<z.ZodBoolean>;
168
+ externalUrls: z.ZodOptional<z.ZodObject<{
169
+ spotify: z.ZodOptional<z.ZodURL>;
170
+ }, z.core.$strip>>;
171
+ href: z.ZodOptional<z.ZodURL>;
172
+ id: z.ZodString;
173
+ images: z.ZodArray<z.ZodObject<{
174
+ url: z.ZodURL;
175
+ height: z.ZodNullable<z.ZodNumber>;
176
+ width: z.ZodNullable<z.ZodNumber>;
177
+ }, z.core.$strip>>;
178
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
179
+ mediaType: z.ZodOptional<z.ZodString>;
180
+ name: z.ZodString;
181
+ publisher: z.ZodOptional<z.ZodString>;
182
+ totalEpisodes: z.ZodOptional<z.ZodNumber>;
183
+ type: z.ZodLiteral<"show">;
184
+ uri: z.ZodOptional<z.ZodString>;
185
+ }, z.core.$strip>>;
186
+ type: z.ZodLiteral<"episode">;
187
+ uri: z.ZodOptional<z.ZodString>;
188
+ }, z.core.$strip>], "type">>>;
189
+ }, z.core.$strip>;
190
+ }, z.core.$strip>;
191
+ declare const spotifyUserPlaylistsChangedEventSchema: z.ZodObject<{
192
+ eventId: z.ZodString;
193
+ type: z.ZodEnum<{
194
+ "playlist.created": "playlist.created";
195
+ "playlist.deleted": "playlist.deleted";
196
+ "playlist.details_changed": "playlist.details_changed";
197
+ }>;
198
+ playlist: z.ZodObject<{
199
+ collaborative: z.ZodBoolean;
200
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
201
+ externalUrls: z.ZodOptional<z.ZodObject<{
202
+ spotify: z.ZodOptional<z.ZodURL>;
203
+ }, z.core.$strip>>;
204
+ followers: z.ZodOptional<z.ZodObject<{
205
+ href: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
206
+ total: z.ZodNumber;
207
+ }, z.core.$strip>>;
208
+ href: z.ZodOptional<z.ZodURL>;
209
+ id: z.ZodString;
210
+ images: z.ZodArray<z.ZodObject<{
211
+ url: z.ZodURL;
212
+ height: z.ZodNullable<z.ZodNumber>;
213
+ width: z.ZodNullable<z.ZodNumber>;
214
+ }, z.core.$strip>>;
215
+ name: z.ZodString;
216
+ owner: z.ZodObject<{
217
+ displayName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
218
+ externalUrls: z.ZodOptional<z.ZodObject<{
219
+ spotify: z.ZodOptional<z.ZodURL>;
220
+ }, z.core.$strip>>;
221
+ followers: z.ZodOptional<z.ZodObject<{
222
+ href: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
223
+ total: z.ZodNumber;
224
+ }, z.core.$strip>>;
225
+ href: z.ZodOptional<z.ZodURL>;
226
+ id: z.ZodString;
227
+ type: z.ZodLiteral<"user">;
228
+ uri: z.ZodOptional<z.ZodString>;
229
+ email: z.ZodOptional<z.ZodEmail>;
230
+ country: z.ZodOptional<z.ZodString>;
231
+ product: z.ZodOptional<z.ZodString>;
232
+ images: z.ZodOptional<z.ZodArray<z.ZodObject<{
233
+ url: z.ZodURL;
234
+ height: z.ZodNullable<z.ZodNumber>;
235
+ width: z.ZodNullable<z.ZodNumber>;
236
+ }, z.core.$strip>>>;
237
+ }, z.core.$strip>;
238
+ public: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
239
+ snapshotId: z.ZodOptional<z.ZodString>;
240
+ tracks: z.ZodOptional<z.ZodObject<{
241
+ href: z.ZodOptional<z.ZodURL>;
242
+ total: z.ZodOptional<z.ZodNumber>;
243
+ }, z.core.$strip>>;
244
+ type: z.ZodLiteral<"playlist">;
245
+ uri: z.ZodOptional<z.ZodString>;
246
+ }, z.core.$strip>;
247
+ }, z.core.$strip>;
248
+ declare const spotifyRecentlyPlayedTrackAddedEventSchema: z.ZodObject<{
249
+ eventId: z.ZodString;
250
+ type: z.ZodLiteral<"recently_played.track_added">;
251
+ play: z.ZodObject<{
252
+ context: z.ZodOptional<z.ZodNullable<z.ZodObject<{
253
+ externalUrls: z.ZodOptional<z.ZodObject<{
254
+ spotify: z.ZodOptional<z.ZodURL>;
255
+ }, z.core.$strip>>;
256
+ href: z.ZodOptional<z.ZodURL>;
257
+ type: z.ZodString;
258
+ uri: z.ZodOptional<z.ZodString>;
259
+ }, z.core.$strip>>>;
260
+ playedAt: z.ZodISODateTime;
261
+ track: z.ZodObject<{
262
+ album: z.ZodOptional<z.ZodObject<{
263
+ albumType: z.ZodOptional<z.ZodEnum<{
264
+ album: "album";
265
+ single: "single";
266
+ compilation: "compilation";
267
+ }>>;
268
+ artists: z.ZodArray<z.ZodObject<{
269
+ externalUrls: z.ZodOptional<z.ZodObject<{
270
+ spotify: z.ZodOptional<z.ZodURL>;
271
+ }, z.core.$strip>>;
272
+ href: z.ZodOptional<z.ZodURL>;
273
+ id: z.ZodString;
274
+ name: z.ZodString;
275
+ type: z.ZodLiteral<"artist">;
276
+ uri: z.ZodOptional<z.ZodString>;
277
+ }, z.core.$strip>>;
278
+ availableMarkets: z.ZodOptional<z.ZodArray<z.ZodString>>;
279
+ externalUrls: z.ZodOptional<z.ZodObject<{
280
+ spotify: z.ZodOptional<z.ZodURL>;
281
+ }, z.core.$strip>>;
282
+ href: z.ZodOptional<z.ZodURL>;
283
+ id: z.ZodString;
284
+ images: z.ZodArray<z.ZodObject<{
285
+ url: z.ZodURL;
286
+ height: z.ZodNullable<z.ZodNumber>;
287
+ width: z.ZodNullable<z.ZodNumber>;
288
+ }, z.core.$strip>>;
289
+ name: z.ZodString;
290
+ releaseDate: z.ZodOptional<z.ZodString>;
291
+ releaseDatePrecision: z.ZodOptional<z.ZodEnum<{
292
+ year: "year";
293
+ month: "month";
294
+ day: "day";
295
+ }>>;
296
+ totalTracks: z.ZodOptional<z.ZodNumber>;
297
+ type: z.ZodLiteral<"album">;
298
+ uri: z.ZodOptional<z.ZodString>;
299
+ }, z.core.$strip>>;
300
+ artists: z.ZodArray<z.ZodObject<{
301
+ externalUrls: z.ZodOptional<z.ZodObject<{
302
+ spotify: z.ZodOptional<z.ZodURL>;
303
+ }, z.core.$strip>>;
304
+ href: z.ZodOptional<z.ZodURL>;
305
+ id: z.ZodString;
306
+ name: z.ZodString;
307
+ type: z.ZodLiteral<"artist">;
308
+ uri: z.ZodOptional<z.ZodString>;
309
+ }, z.core.$strip>>;
310
+ availableMarkets: z.ZodOptional<z.ZodArray<z.ZodString>>;
311
+ discNumber: z.ZodOptional<z.ZodNumber>;
312
+ durationMs: z.ZodNumber;
313
+ explicit: z.ZodBoolean;
314
+ externalIds: z.ZodOptional<z.ZodObject<{
315
+ isrc: z.ZodOptional<z.ZodString>;
316
+ ean: z.ZodOptional<z.ZodString>;
317
+ upc: z.ZodOptional<z.ZodString>;
318
+ }, z.core.$strip>>;
319
+ externalUrls: z.ZodOptional<z.ZodObject<{
320
+ spotify: z.ZodOptional<z.ZodURL>;
321
+ }, z.core.$strip>>;
322
+ href: z.ZodOptional<z.ZodURL>;
323
+ id: z.ZodString;
324
+ isLocal: z.ZodOptional<z.ZodBoolean>;
325
+ isPlayable: z.ZodOptional<z.ZodBoolean>;
326
+ name: z.ZodString;
327
+ popularity: z.ZodOptional<z.ZodNumber>;
328
+ previewUrl: z.ZodOptional<z.ZodUnion<readonly [z.ZodURL, z.ZodNull]>>;
329
+ restrictions: z.ZodOptional<z.ZodObject<{
330
+ reason: z.ZodString;
331
+ }, z.core.$strip>>;
332
+ trackNumber: z.ZodOptional<z.ZodNumber>;
333
+ type: z.ZodLiteral<"track">;
334
+ uri: z.ZodOptional<z.ZodString>;
335
+ }, z.core.$strip>;
336
+ }, z.core.$strip>;
337
+ }, z.core.$strip>;
338
+ declare const spotifySavedItemAddedEventSchema: z.ZodObject<{
339
+ eventId: z.ZodString;
340
+ type: z.ZodLiteral<"library.saved_item_added">;
341
+ itemType: z.ZodEnum<{
342
+ show: "show";
343
+ track: "track";
344
+ episode: "episode";
345
+ album: "album";
346
+ audiobook: "audiobook";
347
+ }>;
348
+ item: z.ZodUnion<readonly [z.ZodObject<{
349
+ addedAt: z.ZodISODateTime;
350
+ album: z.ZodObject<{
351
+ albumType: z.ZodOptional<z.ZodEnum<{
352
+ album: "album";
353
+ single: "single";
354
+ compilation: "compilation";
355
+ }>>;
356
+ artists: z.ZodArray<z.ZodObject<{
357
+ externalUrls: z.ZodOptional<z.ZodObject<{
358
+ spotify: z.ZodOptional<z.ZodURL>;
359
+ }, z.core.$strip>>;
360
+ href: z.ZodOptional<z.ZodURL>;
361
+ id: z.ZodString;
362
+ name: z.ZodString;
363
+ type: z.ZodLiteral<"artist">;
364
+ uri: z.ZodOptional<z.ZodString>;
365
+ }, z.core.$strip>>;
366
+ availableMarkets: z.ZodOptional<z.ZodArray<z.ZodString>>;
367
+ externalUrls: z.ZodOptional<z.ZodObject<{
368
+ spotify: z.ZodOptional<z.ZodURL>;
369
+ }, z.core.$strip>>;
370
+ href: z.ZodOptional<z.ZodURL>;
371
+ id: z.ZodString;
372
+ images: z.ZodArray<z.ZodObject<{
373
+ url: z.ZodURL;
374
+ height: z.ZodNullable<z.ZodNumber>;
375
+ width: z.ZodNullable<z.ZodNumber>;
376
+ }, z.core.$strip>>;
377
+ name: z.ZodString;
378
+ releaseDate: z.ZodOptional<z.ZodString>;
379
+ releaseDatePrecision: z.ZodOptional<z.ZodEnum<{
380
+ year: "year";
381
+ month: "month";
382
+ day: "day";
383
+ }>>;
384
+ totalTracks: z.ZodOptional<z.ZodNumber>;
385
+ type: z.ZodLiteral<"album">;
386
+ uri: z.ZodOptional<z.ZodString>;
387
+ copyrights: z.ZodOptional<z.ZodArray<z.ZodObject<{
388
+ text: z.ZodString;
389
+ type: z.ZodString;
390
+ }, z.core.$strip>>>;
391
+ genres: z.ZodOptional<z.ZodArray<z.ZodString>>;
392
+ label: z.ZodOptional<z.ZodString>;
393
+ popularity: z.ZodOptional<z.ZodNumber>;
394
+ restrictions: z.ZodOptional<z.ZodObject<{
395
+ reason: z.ZodString;
396
+ }, z.core.$strip>>;
397
+ }, z.core.$strip>;
398
+ }, z.core.$strip>, z.ZodObject<{
399
+ addedAt: z.ZodISODateTime;
400
+ track: z.ZodObject<{
401
+ album: z.ZodOptional<z.ZodObject<{
402
+ albumType: z.ZodOptional<z.ZodEnum<{
403
+ album: "album";
404
+ single: "single";
405
+ compilation: "compilation";
406
+ }>>;
407
+ artists: z.ZodArray<z.ZodObject<{
408
+ externalUrls: z.ZodOptional<z.ZodObject<{
409
+ spotify: z.ZodOptional<z.ZodURL>;
410
+ }, z.core.$strip>>;
411
+ href: z.ZodOptional<z.ZodURL>;
412
+ id: z.ZodString;
413
+ name: z.ZodString;
414
+ type: z.ZodLiteral<"artist">;
415
+ uri: z.ZodOptional<z.ZodString>;
416
+ }, z.core.$strip>>;
417
+ availableMarkets: z.ZodOptional<z.ZodArray<z.ZodString>>;
418
+ externalUrls: z.ZodOptional<z.ZodObject<{
419
+ spotify: z.ZodOptional<z.ZodURL>;
420
+ }, z.core.$strip>>;
421
+ href: z.ZodOptional<z.ZodURL>;
422
+ id: z.ZodString;
423
+ images: z.ZodArray<z.ZodObject<{
424
+ url: z.ZodURL;
425
+ height: z.ZodNullable<z.ZodNumber>;
426
+ width: z.ZodNullable<z.ZodNumber>;
427
+ }, z.core.$strip>>;
428
+ name: z.ZodString;
429
+ releaseDate: z.ZodOptional<z.ZodString>;
430
+ releaseDatePrecision: z.ZodOptional<z.ZodEnum<{
431
+ year: "year";
432
+ month: "month";
433
+ day: "day";
434
+ }>>;
435
+ totalTracks: z.ZodOptional<z.ZodNumber>;
436
+ type: z.ZodLiteral<"album">;
437
+ uri: z.ZodOptional<z.ZodString>;
438
+ }, z.core.$strip>>;
439
+ artists: z.ZodArray<z.ZodObject<{
440
+ externalUrls: z.ZodOptional<z.ZodObject<{
441
+ spotify: z.ZodOptional<z.ZodURL>;
442
+ }, z.core.$strip>>;
443
+ href: z.ZodOptional<z.ZodURL>;
444
+ id: z.ZodString;
445
+ name: z.ZodString;
446
+ type: z.ZodLiteral<"artist">;
447
+ uri: z.ZodOptional<z.ZodString>;
448
+ }, z.core.$strip>>;
449
+ availableMarkets: z.ZodOptional<z.ZodArray<z.ZodString>>;
450
+ discNumber: z.ZodOptional<z.ZodNumber>;
451
+ durationMs: z.ZodNumber;
452
+ explicit: z.ZodBoolean;
453
+ externalIds: z.ZodOptional<z.ZodObject<{
454
+ isrc: z.ZodOptional<z.ZodString>;
455
+ ean: z.ZodOptional<z.ZodString>;
456
+ upc: z.ZodOptional<z.ZodString>;
457
+ }, z.core.$strip>>;
458
+ externalUrls: z.ZodOptional<z.ZodObject<{
459
+ spotify: z.ZodOptional<z.ZodURL>;
460
+ }, z.core.$strip>>;
461
+ href: z.ZodOptional<z.ZodURL>;
462
+ id: z.ZodString;
463
+ isLocal: z.ZodOptional<z.ZodBoolean>;
464
+ isPlayable: z.ZodOptional<z.ZodBoolean>;
465
+ name: z.ZodString;
466
+ popularity: z.ZodOptional<z.ZodNumber>;
467
+ previewUrl: z.ZodOptional<z.ZodUnion<readonly [z.ZodURL, z.ZodNull]>>;
468
+ restrictions: z.ZodOptional<z.ZodObject<{
469
+ reason: z.ZodString;
470
+ }, z.core.$strip>>;
471
+ trackNumber: z.ZodOptional<z.ZodNumber>;
472
+ type: z.ZodLiteral<"track">;
473
+ uri: z.ZodOptional<z.ZodString>;
474
+ }, z.core.$strip>;
475
+ }, z.core.$strip>, z.ZodObject<{
476
+ addedAt: z.ZodISODateTime;
477
+ show: z.ZodObject<{
478
+ availableMarkets: z.ZodOptional<z.ZodArray<z.ZodString>>;
479
+ copyrights: z.ZodOptional<z.ZodArray<z.ZodObject<{
480
+ text: z.ZodString;
481
+ type: z.ZodString;
482
+ }, z.core.$strip>>>;
483
+ description: z.ZodOptional<z.ZodString>;
484
+ explicit: z.ZodOptional<z.ZodBoolean>;
485
+ externalUrls: z.ZodOptional<z.ZodObject<{
486
+ spotify: z.ZodOptional<z.ZodURL>;
487
+ }, z.core.$strip>>;
488
+ href: z.ZodOptional<z.ZodURL>;
489
+ id: z.ZodString;
490
+ images: z.ZodArray<z.ZodObject<{
491
+ url: z.ZodURL;
492
+ height: z.ZodNullable<z.ZodNumber>;
493
+ width: z.ZodNullable<z.ZodNumber>;
494
+ }, z.core.$strip>>;
495
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
496
+ mediaType: z.ZodOptional<z.ZodString>;
497
+ name: z.ZodString;
498
+ publisher: z.ZodOptional<z.ZodString>;
499
+ totalEpisodes: z.ZodOptional<z.ZodNumber>;
500
+ type: z.ZodLiteral<"show">;
501
+ uri: z.ZodOptional<z.ZodString>;
502
+ htmlDescription: z.ZodOptional<z.ZodString>;
503
+ isExternallyHosted: z.ZodOptional<z.ZodBoolean>;
504
+ }, z.core.$strip>;
505
+ }, z.core.$strip>, z.ZodObject<{
506
+ addedAt: z.ZodISODateTime;
507
+ episode: z.ZodObject<{
508
+ audioPreviewUrl: z.ZodOptional<z.ZodUnion<readonly [z.ZodURL, z.ZodNull]>>;
509
+ description: z.ZodOptional<z.ZodString>;
510
+ durationMs: z.ZodNumber;
511
+ explicit: z.ZodBoolean;
512
+ externalUrls: z.ZodOptional<z.ZodObject<{
513
+ spotify: z.ZodOptional<z.ZodURL>;
514
+ }, z.core.$strip>>;
515
+ href: z.ZodOptional<z.ZodURL>;
516
+ htmlDescription: z.ZodOptional<z.ZodString>;
517
+ id: z.ZodString;
518
+ images: z.ZodArray<z.ZodObject<{
519
+ url: z.ZodURL;
520
+ height: z.ZodNullable<z.ZodNumber>;
521
+ width: z.ZodNullable<z.ZodNumber>;
522
+ }, z.core.$strip>>;
523
+ isExternallyHosted: z.ZodOptional<z.ZodBoolean>;
524
+ isPlayable: z.ZodOptional<z.ZodBoolean>;
525
+ language: z.ZodOptional<z.ZodString>;
526
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
527
+ name: z.ZodString;
528
+ releaseDate: z.ZodOptional<z.ZodString>;
529
+ releaseDatePrecision: z.ZodOptional<z.ZodEnum<{
530
+ year: "year";
531
+ month: "month";
532
+ day: "day";
533
+ }>>;
534
+ resumePoint: z.ZodOptional<z.ZodObject<{
535
+ fullyPlayed: z.ZodBoolean;
536
+ resumePositionMs: z.ZodNumber;
537
+ }, z.core.$strip>>;
538
+ restrictions: z.ZodOptional<z.ZodObject<{
539
+ reason: z.ZodString;
540
+ }, z.core.$strip>>;
541
+ show: z.ZodOptional<z.ZodObject<{
542
+ availableMarkets: z.ZodOptional<z.ZodArray<z.ZodString>>;
543
+ copyrights: z.ZodOptional<z.ZodArray<z.ZodObject<{
544
+ text: z.ZodString;
545
+ type: z.ZodString;
546
+ }, z.core.$strip>>>;
547
+ description: z.ZodOptional<z.ZodString>;
548
+ explicit: z.ZodOptional<z.ZodBoolean>;
549
+ externalUrls: z.ZodOptional<z.ZodObject<{
550
+ spotify: z.ZodOptional<z.ZodURL>;
551
+ }, z.core.$strip>>;
552
+ href: z.ZodOptional<z.ZodURL>;
553
+ id: z.ZodString;
554
+ images: z.ZodArray<z.ZodObject<{
555
+ url: z.ZodURL;
556
+ height: z.ZodNullable<z.ZodNumber>;
557
+ width: z.ZodNullable<z.ZodNumber>;
558
+ }, z.core.$strip>>;
559
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
560
+ mediaType: z.ZodOptional<z.ZodString>;
561
+ name: z.ZodString;
562
+ publisher: z.ZodOptional<z.ZodString>;
563
+ totalEpisodes: z.ZodOptional<z.ZodNumber>;
564
+ type: z.ZodLiteral<"show">;
565
+ uri: z.ZodOptional<z.ZodString>;
566
+ }, z.core.$strip>>;
567
+ type: z.ZodLiteral<"episode">;
568
+ uri: z.ZodOptional<z.ZodString>;
569
+ }, z.core.$strip>;
570
+ }, z.core.$strip>, z.ZodObject<{
571
+ addedAt: z.ZodISODateTime;
572
+ audiobook: z.ZodObject<{
573
+ authors: z.ZodOptional<z.ZodArray<z.ZodObject<{
574
+ name: z.ZodString;
575
+ }, z.core.$strip>>>;
576
+ availableMarkets: z.ZodOptional<z.ZodArray<z.ZodString>>;
577
+ copyrights: z.ZodOptional<z.ZodArray<z.ZodObject<{
578
+ text: z.ZodString;
579
+ type: z.ZodString;
580
+ }, z.core.$strip>>>;
581
+ description: z.ZodOptional<z.ZodString>;
582
+ explicit: z.ZodOptional<z.ZodBoolean>;
583
+ externalUrls: z.ZodOptional<z.ZodObject<{
584
+ spotify: z.ZodOptional<z.ZodURL>;
585
+ }, z.core.$strip>>;
586
+ href: z.ZodOptional<z.ZodURL>;
587
+ htmlDescription: z.ZodOptional<z.ZodString>;
588
+ id: z.ZodString;
589
+ images: z.ZodArray<z.ZodObject<{
590
+ url: z.ZodURL;
591
+ height: z.ZodNullable<z.ZodNumber>;
592
+ width: z.ZodNullable<z.ZodNumber>;
593
+ }, z.core.$strip>>;
594
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
595
+ mediaType: z.ZodOptional<z.ZodString>;
596
+ name: z.ZodString;
597
+ narrators: z.ZodOptional<z.ZodArray<z.ZodObject<{
598
+ name: z.ZodString;
599
+ }, z.core.$strip>>>;
600
+ publisher: z.ZodOptional<z.ZodString>;
601
+ totalChapters: z.ZodOptional<z.ZodNumber>;
602
+ type: z.ZodLiteral<"audiobook">;
603
+ uri: z.ZodOptional<z.ZodString>;
604
+ }, z.core.$strip>;
605
+ }, z.core.$strip>]>;
606
+ }, z.core.$strip>;
607
+ type SpotifyNewDeviceAddedEvent = z.infer<typeof spotifyNewDeviceAddedEventSchema>;
608
+ type SpotifyPlaylistItemsChangedEvent = z.infer<typeof spotifyPlaylistItemsChangedEventSchema>;
609
+ type SpotifyUserPlaylistsChangedEvent = z.infer<typeof spotifyUserPlaylistsChangedEventSchema>;
610
+ type SpotifyRecentlyPlayedTrackAddedEvent = z.infer<typeof spotifyRecentlyPlayedTrackAddedEventSchema>;
611
+ type SpotifySavedItemAddedEvent = z.infer<typeof spotifySavedItemAddedEventSchema>;
612
+ //#endregion
613
+ export { SpotifyNewDeviceAddedEvent, SpotifyPlaylistItemsChangedEvent, SpotifyRecentlyPlayedTrackAddedEvent, SpotifySavedItemAddedEvent, SpotifyUserPlaylistsChangedEvent, spotifyNewDeviceAddedEventSchema, spotifyPlaylistItemsChangedEventSchema, spotifyRecentlyPlayedTrackAddedEventSchema, spotifySavedItemAddedEventSchema, spotifyUserPlaylistsChangedEventSchema };
@@ -0,0 +1,55 @@
1
+ import { spotifyDeviceSchema, spotifyPlaylistItemSchema, spotifyPlaylistSchema, spotifyRecentlyPlayedItemSchema, spotifySavedAlbumItemSchema, spotifySavedAudiobookItemSchema, spotifySavedEpisodeItemSchema, spotifySavedShowItemSchema, spotifySavedTrackItemSchema } from "./schemas.mjs";
2
+ import { z } from "zod";
3
+
4
+ //#region src/events.ts
5
+ const spotifyNewDeviceAddedEventSchema = z.object({
6
+ eventId: z.string().min(1),
7
+ type: z.literal("device.added"),
8
+ device: spotifyDeviceSchema
9
+ });
10
+ const spotifyPlaylistItemsChangedEventSchema = z.object({
11
+ eventId: z.string().min(1),
12
+ type: z.enum([
13
+ "playlist.item_added",
14
+ "playlist.item_removed",
15
+ "playlist.item_reordered"
16
+ ]),
17
+ playlistId: z.string().min(1),
18
+ snapshotId: z.string().min(1),
19
+ item: spotifyPlaylistItemSchema
20
+ });
21
+ const spotifyUserPlaylistsChangedEventSchema = z.object({
22
+ eventId: z.string().min(1),
23
+ type: z.enum([
24
+ "playlist.created",
25
+ "playlist.deleted",
26
+ "playlist.details_changed"
27
+ ]),
28
+ playlist: spotifyPlaylistSchema
29
+ });
30
+ const spotifyRecentlyPlayedTrackAddedEventSchema = z.object({
31
+ eventId: z.string().min(1),
32
+ type: z.literal("recently_played.track_added"),
33
+ play: spotifyRecentlyPlayedItemSchema
34
+ });
35
+ const spotifySavedItemAddedEventSchema = z.object({
36
+ eventId: z.string().min(1),
37
+ type: z.literal("library.saved_item_added"),
38
+ itemType: z.enum([
39
+ "album",
40
+ "track",
41
+ "show",
42
+ "episode",
43
+ "audiobook"
44
+ ]),
45
+ item: z.union([
46
+ spotifySavedAlbumItemSchema,
47
+ spotifySavedTrackItemSchema,
48
+ spotifySavedShowItemSchema,
49
+ spotifySavedEpisodeItemSchema,
50
+ spotifySavedAudiobookItemSchema
51
+ ])
52
+ });
53
+
54
+ //#endregion
55
+ export { spotifyNewDeviceAddedEventSchema, spotifyPlaylistItemsChangedEventSchema, spotifyRecentlyPlayedTrackAddedEventSchema, spotifySavedItemAddedEventSchema, spotifyUserPlaylistsChangedEventSchema };
@@ -0,0 +1,8 @@
1
+ import { t as spotify } from "./integration-ykoImsCq.mjs";
2
+ import { createOfficialOperationFactory } from "@keystrokehq/integration-authoring/official";
3
+
4
+ //#region src/factory.ts
5
+ const spotifyOperation = createOfficialOperationFactory(spotify);
6
+
7
+ //#endregion
8
+ export { spotifyOperation as t };