@groovenet/contracts 0.1.0 → 1.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.
@@ -0,0 +1,692 @@
1
+ import { z } from "zod";
2
+ export declare const albumArtSourceSchema: z.ZodEnum<{
3
+ apple_music: "apple_music";
4
+ discogs: "discogs";
5
+ upload: "upload";
6
+ }>;
7
+ export declare const albumArtMatchStatusSchema: z.ZodEnum<{
8
+ matched: "matched";
9
+ mismatch: "mismatch";
10
+ no_candidate: "no_candidate";
11
+ no_reference: "no_reference";
12
+ }>;
13
+ /** Omitted: unchanged; null: reset to Discogs; []: deliberately empty. */
14
+ export declare const albumTaxonomyOverridesSchema: z.ZodObject<{
15
+ genre_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
16
+ style_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
17
+ }, z.core.$strip>;
18
+ /** The album/release entity. Unknown database columns pass through. */
19
+ declare const albumShape: z.ZodObject<{
20
+ genre_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
21
+ style_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
22
+ effective_genres: z.ZodOptional<z.ZodArray<z.ZodString>>;
23
+ effective_styles: z.ZodOptional<z.ZodArray<z.ZodString>>;
24
+ release_id: z.ZodString;
25
+ friend_id: z.ZodNumber;
26
+ username: z.ZodOptional<z.ZodString>;
27
+ title: z.ZodString;
28
+ artist: z.ZodString;
29
+ year: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
30
+ genres: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
31
+ styles: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
32
+ album_thumbnail: z.ZodOptional<z.ZodNullable<z.ZodString>>;
33
+ audio_file_album_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
34
+ discogs_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
35
+ date_added: z.ZodOptional<z.ZodNullable<z.ZodString>>;
36
+ date_changed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
37
+ track_count: z.ZodOptional<z.ZodNumber>;
38
+ album_rating: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
39
+ album_notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
40
+ purchase_price: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
41
+ condition: z.ZodOptional<z.ZodNullable<z.ZodString>>;
42
+ label: z.ZodOptional<z.ZodNullable<z.ZodString>>;
43
+ catalog_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
44
+ country: z.ZodOptional<z.ZodNullable<z.ZodString>>;
45
+ format: z.ZodOptional<z.ZodNullable<z.ZodString>>;
46
+ created_at: z.ZodOptional<z.ZodString>;
47
+ updated_at: z.ZodOptional<z.ZodString>;
48
+ library_identifier: z.ZodOptional<z.ZodNullable<z.ZodString>>;
49
+ album_art_source: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
50
+ apple_music: "apple_music";
51
+ discogs: "discogs";
52
+ upload: "upload";
53
+ }>>>;
54
+ discogs_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
55
+ apple_music_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
56
+ art_match_status: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
57
+ matched: "matched";
58
+ mismatch: "mismatch";
59
+ no_candidate: "no_candidate";
60
+ no_reference: "no_reference";
61
+ }>>>;
62
+ art_match_distance: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
63
+ }, z.core.$strip>;
64
+ export declare const albumSchema: z.ZodObject<{
65
+ genre_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
66
+ style_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
67
+ effective_genres: z.ZodOptional<z.ZodArray<z.ZodString>>;
68
+ effective_styles: z.ZodOptional<z.ZodArray<z.ZodString>>;
69
+ release_id: z.ZodString;
70
+ friend_id: z.ZodNumber;
71
+ username: z.ZodOptional<z.ZodString>;
72
+ title: z.ZodString;
73
+ artist: z.ZodString;
74
+ year: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
75
+ genres: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
76
+ styles: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
77
+ album_thumbnail: z.ZodOptional<z.ZodNullable<z.ZodString>>;
78
+ audio_file_album_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
79
+ discogs_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
80
+ date_added: z.ZodOptional<z.ZodNullable<z.ZodString>>;
81
+ date_changed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
82
+ track_count: z.ZodOptional<z.ZodNumber>;
83
+ album_rating: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
84
+ album_notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
85
+ purchase_price: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
86
+ condition: z.ZodOptional<z.ZodNullable<z.ZodString>>;
87
+ label: z.ZodOptional<z.ZodNullable<z.ZodString>>;
88
+ catalog_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
89
+ country: z.ZodOptional<z.ZodNullable<z.ZodString>>;
90
+ format: z.ZodOptional<z.ZodNullable<z.ZodString>>;
91
+ created_at: z.ZodOptional<z.ZodString>;
92
+ updated_at: z.ZodOptional<z.ZodString>;
93
+ library_identifier: z.ZodOptional<z.ZodNullable<z.ZodString>>;
94
+ album_art_source: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
95
+ apple_music: "apple_music";
96
+ discogs: "discogs";
97
+ upload: "upload";
98
+ }>>>;
99
+ discogs_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
100
+ apple_music_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
101
+ art_match_status: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
102
+ matched: "matched";
103
+ mismatch: "mismatch";
104
+ no_candidate: "no_candidate";
105
+ no_reference: "no_reference";
106
+ }>>>;
107
+ art_match_distance: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
108
+ }, z.core.$loose>;
109
+ /** Wire shape of `GET /api/albums` query params once coerced from strings. */
110
+ export declare const albumSearchQuerySchema: z.ZodObject<{
111
+ q: z.ZodOptional<z.ZodString>;
112
+ sort: z.ZodOptional<z.ZodString>;
113
+ friend_id: z.ZodOptional<z.ZodNumber>;
114
+ limit: z.ZodOptional<z.ZodNumber>;
115
+ offset: z.ZodOptional<z.ZodNumber>;
116
+ missing_library_identifier: z.ZodOptional<z.ZodBoolean>;
117
+ missing_local_cover_art_url: z.ZodOptional<z.ZodBoolean>;
118
+ missing_audio: z.ZodOptional<z.ZodBoolean>;
119
+ genre: z.ZodOptional<z.ZodArray<z.ZodString>>;
120
+ include_similar: z.ZodOptional<z.ZodBoolean>;
121
+ similar_limit: z.ZodOptional<z.ZodNumber>;
122
+ similar_exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
123
+ }, z.core.$strip>;
124
+ export declare const albumSearchResponseSchema: z.ZodObject<{
125
+ hits: z.ZodArray<z.ZodObject<{
126
+ genre_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
127
+ style_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
128
+ effective_genres: z.ZodOptional<z.ZodArray<z.ZodString>>;
129
+ effective_styles: z.ZodOptional<z.ZodArray<z.ZodString>>;
130
+ release_id: z.ZodString;
131
+ friend_id: z.ZodNumber;
132
+ username: z.ZodOptional<z.ZodString>;
133
+ title: z.ZodString;
134
+ artist: z.ZodString;
135
+ year: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
136
+ genres: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
137
+ styles: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
138
+ album_thumbnail: z.ZodOptional<z.ZodNullable<z.ZodString>>;
139
+ audio_file_album_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
140
+ discogs_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
141
+ date_added: z.ZodOptional<z.ZodNullable<z.ZodString>>;
142
+ date_changed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
143
+ track_count: z.ZodOptional<z.ZodNumber>;
144
+ album_rating: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
145
+ album_notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
146
+ purchase_price: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
147
+ condition: z.ZodOptional<z.ZodNullable<z.ZodString>>;
148
+ label: z.ZodOptional<z.ZodNullable<z.ZodString>>;
149
+ catalog_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
150
+ country: z.ZodOptional<z.ZodNullable<z.ZodString>>;
151
+ format: z.ZodOptional<z.ZodNullable<z.ZodString>>;
152
+ created_at: z.ZodOptional<z.ZodString>;
153
+ updated_at: z.ZodOptional<z.ZodString>;
154
+ library_identifier: z.ZodOptional<z.ZodNullable<z.ZodString>>;
155
+ album_art_source: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
156
+ apple_music: "apple_music";
157
+ discogs: "discogs";
158
+ upload: "upload";
159
+ }>>>;
160
+ discogs_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
161
+ apple_music_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
162
+ art_match_status: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
163
+ matched: "matched";
164
+ mismatch: "mismatch";
165
+ no_candidate: "no_candidate";
166
+ no_reference: "no_reference";
167
+ }>>>;
168
+ art_match_distance: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
169
+ }, z.core.$loose>>;
170
+ estimatedTotalHits: z.ZodNumber;
171
+ offset: z.ZodNumber;
172
+ limit: z.ZodNumber;
173
+ query: z.ZodString;
174
+ sort: z.ZodString;
175
+ added_genres: z.ZodOptional<z.ZodArray<z.ZodObject<{
176
+ id: z.ZodString;
177
+ name: z.ZodString;
178
+ slug: z.ZodString;
179
+ }, z.core.$strip>>>;
180
+ }, z.core.$strip>;
181
+ export declare const albumDetailSchema: z.ZodObject<{
182
+ album: z.ZodObject<{
183
+ genre_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
184
+ style_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
185
+ effective_genres: z.ZodOptional<z.ZodArray<z.ZodString>>;
186
+ effective_styles: z.ZodOptional<z.ZodArray<z.ZodString>>;
187
+ release_id: z.ZodString;
188
+ friend_id: z.ZodNumber;
189
+ username: z.ZodOptional<z.ZodString>;
190
+ title: z.ZodString;
191
+ artist: z.ZodString;
192
+ year: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
193
+ genres: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
194
+ styles: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
195
+ album_thumbnail: z.ZodOptional<z.ZodNullable<z.ZodString>>;
196
+ audio_file_album_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
197
+ discogs_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
198
+ date_added: z.ZodOptional<z.ZodNullable<z.ZodString>>;
199
+ date_changed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
200
+ track_count: z.ZodOptional<z.ZodNumber>;
201
+ album_rating: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
202
+ album_notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
203
+ purchase_price: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
204
+ condition: z.ZodOptional<z.ZodNullable<z.ZodString>>;
205
+ label: z.ZodOptional<z.ZodNullable<z.ZodString>>;
206
+ catalog_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
207
+ country: z.ZodOptional<z.ZodNullable<z.ZodString>>;
208
+ format: z.ZodOptional<z.ZodNullable<z.ZodString>>;
209
+ created_at: z.ZodOptional<z.ZodString>;
210
+ updated_at: z.ZodOptional<z.ZodString>;
211
+ library_identifier: z.ZodOptional<z.ZodNullable<z.ZodString>>;
212
+ album_art_source: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
213
+ apple_music: "apple_music";
214
+ discogs: "discogs";
215
+ upload: "upload";
216
+ }>>>;
217
+ discogs_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
218
+ apple_music_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
219
+ art_match_status: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
220
+ matched: "matched";
221
+ mismatch: "mismatch";
222
+ no_candidate: "no_candidate";
223
+ no_reference: "no_reference";
224
+ }>>>;
225
+ art_match_distance: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
226
+ }, z.core.$loose>;
227
+ tracks: z.ZodArray<z.ZodObject<{
228
+ id: z.ZodOptional<z.ZodNumber>;
229
+ track_id: z.ZodString;
230
+ friend_id: z.ZodNumber;
231
+ isrc: z.ZodOptional<z.ZodNullable<z.ZodString>>;
232
+ title: z.ZodString;
233
+ artist: z.ZodString;
234
+ album: z.ZodString;
235
+ year: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
236
+ styles: z.ZodOptional<z.ZodArray<z.ZodString>>;
237
+ genres: z.ZodOptional<z.ZodArray<z.ZodString>>;
238
+ album_genres: z.ZodOptional<z.ZodArray<z.ZodString>>;
239
+ album_styles: z.ZodOptional<z.ZodArray<z.ZodString>>;
240
+ duration: z.ZodOptional<z.ZodString>;
241
+ duration_seconds: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
242
+ position: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
243
+ discogs_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
244
+ apple_music_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
245
+ youtube_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
246
+ spotify_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
247
+ soundcloud_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
248
+ album_thumbnail: z.ZodOptional<z.ZodNullable<z.ZodString>>;
249
+ local_tags: z.ZodOptional<z.ZodNullable<z.ZodString>>;
250
+ track_genres: z.ZodOptional<z.ZodArray<z.ZodObject<{
251
+ id: z.ZodString;
252
+ name: z.ZodString;
253
+ slug: z.ZodString;
254
+ parent_id: z.ZodNullable<z.ZodString>;
255
+ parent_name: z.ZodNullable<z.ZodString>;
256
+ }, z.core.$strip>>>;
257
+ descriptors: z.ZodOptional<z.ZodArray<z.ZodString>>;
258
+ composer: z.ZodOptional<z.ZodNullable<z.ZodString>>;
259
+ bpm: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
260
+ key: z.ZodOptional<z.ZodNullable<z.ZodString>>;
261
+ key_confidence: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
262
+ bpm_confidence: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
263
+ danceability: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>>;
264
+ mood_happy: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
265
+ mood_sad: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
266
+ mood_relaxed: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
267
+ mood_aggressive: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
268
+ notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
269
+ local_audio_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
270
+ audio_file_album_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
271
+ star_rating: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
272
+ username: z.ZodOptional<z.ZodString>;
273
+ release_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
274
+ library_identifier: z.ZodOptional<z.ZodNullable<z.ZodString>>;
275
+ hasVectors: z.ZodOptional<z.ZodBoolean>;
276
+ deleted_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
277
+ }, z.core.$loose>>;
278
+ }, z.core.$strip>;
279
+ export declare const albumDeleteResponseSchema: z.ZodObject<{
280
+ success: z.ZodBoolean;
281
+ }, z.core.$strip>;
282
+ export declare const albumArtworkStateSchema: z.ZodObject<{
283
+ release_id: z.ZodString;
284
+ friend_id: z.ZodNumber;
285
+ current_url: z.ZodNullable<z.ZodString>;
286
+ source: z.ZodNullable<z.ZodEnum<{
287
+ apple_music: "apple_music";
288
+ discogs: "discogs";
289
+ upload: "upload";
290
+ }>>;
291
+ discogs_art_url: z.ZodNullable<z.ZodString>;
292
+ apple_music_art_url: z.ZodNullable<z.ZodString>;
293
+ art_match_status: z.ZodNullable<z.ZodEnum<{
294
+ matched: "matched";
295
+ mismatch: "mismatch";
296
+ no_candidate: "no_candidate";
297
+ no_reference: "no_reference";
298
+ }>>;
299
+ art_match_distance: z.ZodNullable<z.ZodNumber>;
300
+ has_local_audio: z.ZodBoolean;
301
+ }, z.core.$strip>;
302
+ export declare const albumPlayableStructureTrackSchema: z.ZodObject<{
303
+ track_id: z.ZodString;
304
+ friend_id: z.ZodNumber;
305
+ position: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
306
+ title: z.ZodString;
307
+ artist: z.ZodString;
308
+ }, z.core.$loose>;
309
+ export declare const albumPlayableStructureSideSchema: z.ZodObject<{
310
+ side_key: z.ZodString;
311
+ side_label: z.ZodString;
312
+ ordinal: z.ZodNumber;
313
+ track_count: z.ZodNumber;
314
+ tracks: z.ZodArray<z.ZodObject<{
315
+ track_id: z.ZodString;
316
+ friend_id: z.ZodNumber;
317
+ position: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
318
+ title: z.ZodString;
319
+ artist: z.ZodString;
320
+ }, z.core.$loose>>;
321
+ }, z.core.$strip>;
322
+ export declare const albumPlayableStructureSchema: z.ZodObject<{
323
+ album: z.ZodObject<{
324
+ genre_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
325
+ style_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
326
+ effective_genres: z.ZodOptional<z.ZodArray<z.ZodString>>;
327
+ effective_styles: z.ZodOptional<z.ZodArray<z.ZodString>>;
328
+ release_id: z.ZodString;
329
+ friend_id: z.ZodNumber;
330
+ username: z.ZodOptional<z.ZodString>;
331
+ title: z.ZodString;
332
+ artist: z.ZodString;
333
+ year: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
334
+ genres: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
335
+ styles: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
336
+ album_thumbnail: z.ZodOptional<z.ZodNullable<z.ZodString>>;
337
+ audio_file_album_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
338
+ discogs_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
339
+ date_added: z.ZodOptional<z.ZodNullable<z.ZodString>>;
340
+ date_changed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
341
+ track_count: z.ZodOptional<z.ZodNumber>;
342
+ album_rating: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
343
+ album_notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
344
+ purchase_price: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
345
+ condition: z.ZodOptional<z.ZodNullable<z.ZodString>>;
346
+ label: z.ZodOptional<z.ZodNullable<z.ZodString>>;
347
+ catalog_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
348
+ country: z.ZodOptional<z.ZodNullable<z.ZodString>>;
349
+ format: z.ZodOptional<z.ZodNullable<z.ZodString>>;
350
+ created_at: z.ZodOptional<z.ZodString>;
351
+ updated_at: z.ZodOptional<z.ZodString>;
352
+ library_identifier: z.ZodOptional<z.ZodNullable<z.ZodString>>;
353
+ album_art_source: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
354
+ apple_music: "apple_music";
355
+ discogs: "discogs";
356
+ upload: "upload";
357
+ }>>>;
358
+ discogs_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
359
+ apple_music_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
360
+ art_match_status: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
361
+ matched: "matched";
362
+ mismatch: "mismatch";
363
+ no_candidate: "no_candidate";
364
+ no_reference: "no_reference";
365
+ }>>>;
366
+ art_match_distance: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
367
+ }, z.core.$loose>;
368
+ sides: z.ZodArray<z.ZodObject<{
369
+ side_key: z.ZodString;
370
+ side_label: z.ZodString;
371
+ ordinal: z.ZodNumber;
372
+ track_count: z.ZodNumber;
373
+ tracks: z.ZodArray<z.ZodObject<{
374
+ track_id: z.ZodString;
375
+ friend_id: z.ZodNumber;
376
+ position: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
377
+ title: z.ZodString;
378
+ artist: z.ZodString;
379
+ }, z.core.$loose>>;
380
+ }, z.core.$strip>>;
381
+ }, z.core.$strip>;
382
+ export type AlbumArtSource = z.infer<typeof albumArtSourceSchema>;
383
+ export type AlbumArtMatchStatus = z.infer<typeof albumArtMatchStatusSchema>;
384
+ export type AlbumTaxonomyOverrides = z.infer<typeof albumTaxonomyOverridesSchema>;
385
+ /** Declared fields only; the schema itself passes unknown columns through. */
386
+ export type AlbumEntity = z.infer<typeof albumShape>;
387
+ export type AlbumSearchQuery = z.infer<typeof albumSearchQuerySchema>;
388
+ export type AlbumSearchResponse = z.infer<typeof albumSearchResponseSchema>;
389
+ export type AlbumDetail = z.infer<typeof albumDetailSchema>;
390
+ export type AlbumDeleteResponse = z.infer<typeof albumDeleteResponseSchema>;
391
+ export type AlbumArtworkState = z.infer<typeof albumArtworkStateSchema>;
392
+ export type AlbumPlayableStructureTrack = z.infer<typeof albumPlayableStructureTrackSchema>;
393
+ export type AlbumPlayableStructureSide = z.infer<typeof albumPlayableStructureSideSchema>;
394
+ export type AlbumPlayableStructure = z.infer<typeof albumPlayableStructureSchema>;
395
+ export declare const albumJsonSchemas: {
396
+ AlbumArtSource: z.core.ZodStandardJSONSchemaPayload<z.ZodEnum<{
397
+ apple_music: "apple_music";
398
+ discogs: "discogs";
399
+ upload: "upload";
400
+ }>>;
401
+ AlbumArtMatchStatus: z.core.ZodStandardJSONSchemaPayload<z.ZodEnum<{
402
+ matched: "matched";
403
+ mismatch: "mismatch";
404
+ no_candidate: "no_candidate";
405
+ no_reference: "no_reference";
406
+ }>>;
407
+ Album: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
408
+ genre_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
409
+ style_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
410
+ effective_genres: z.ZodOptional<z.ZodArray<z.ZodString>>;
411
+ effective_styles: z.ZodOptional<z.ZodArray<z.ZodString>>;
412
+ release_id: z.ZodString;
413
+ friend_id: z.ZodNumber;
414
+ username: z.ZodOptional<z.ZodString>;
415
+ title: z.ZodString;
416
+ artist: z.ZodString;
417
+ year: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
418
+ genres: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
419
+ styles: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
420
+ album_thumbnail: z.ZodOptional<z.ZodNullable<z.ZodString>>;
421
+ audio_file_album_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
422
+ discogs_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
423
+ date_added: z.ZodOptional<z.ZodNullable<z.ZodString>>;
424
+ date_changed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
425
+ track_count: z.ZodOptional<z.ZodNumber>;
426
+ album_rating: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
427
+ album_notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
428
+ purchase_price: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
429
+ condition: z.ZodOptional<z.ZodNullable<z.ZodString>>;
430
+ label: z.ZodOptional<z.ZodNullable<z.ZodString>>;
431
+ catalog_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
432
+ country: z.ZodOptional<z.ZodNullable<z.ZodString>>;
433
+ format: z.ZodOptional<z.ZodNullable<z.ZodString>>;
434
+ created_at: z.ZodOptional<z.ZodString>;
435
+ updated_at: z.ZodOptional<z.ZodString>;
436
+ library_identifier: z.ZodOptional<z.ZodNullable<z.ZodString>>;
437
+ album_art_source: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
438
+ apple_music: "apple_music";
439
+ discogs: "discogs";
440
+ upload: "upload";
441
+ }>>>;
442
+ discogs_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
443
+ apple_music_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
444
+ art_match_status: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
445
+ matched: "matched";
446
+ mismatch: "mismatch";
447
+ no_candidate: "no_candidate";
448
+ no_reference: "no_reference";
449
+ }>>>;
450
+ art_match_distance: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
451
+ }, z.core.$loose>>;
452
+ AlbumSearchResponse: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
453
+ hits: z.ZodArray<z.ZodObject<{
454
+ genre_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
455
+ style_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
456
+ effective_genres: z.ZodOptional<z.ZodArray<z.ZodString>>;
457
+ effective_styles: z.ZodOptional<z.ZodArray<z.ZodString>>;
458
+ release_id: z.ZodString;
459
+ friend_id: z.ZodNumber;
460
+ username: z.ZodOptional<z.ZodString>;
461
+ title: z.ZodString;
462
+ artist: z.ZodString;
463
+ year: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
464
+ genres: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
465
+ styles: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
466
+ album_thumbnail: z.ZodOptional<z.ZodNullable<z.ZodString>>;
467
+ audio_file_album_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
468
+ discogs_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
469
+ date_added: z.ZodOptional<z.ZodNullable<z.ZodString>>;
470
+ date_changed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
471
+ track_count: z.ZodOptional<z.ZodNumber>;
472
+ album_rating: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
473
+ album_notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
474
+ purchase_price: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
475
+ condition: z.ZodOptional<z.ZodNullable<z.ZodString>>;
476
+ label: z.ZodOptional<z.ZodNullable<z.ZodString>>;
477
+ catalog_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
478
+ country: z.ZodOptional<z.ZodNullable<z.ZodString>>;
479
+ format: z.ZodOptional<z.ZodNullable<z.ZodString>>;
480
+ created_at: z.ZodOptional<z.ZodString>;
481
+ updated_at: z.ZodOptional<z.ZodString>;
482
+ library_identifier: z.ZodOptional<z.ZodNullable<z.ZodString>>;
483
+ album_art_source: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
484
+ apple_music: "apple_music";
485
+ discogs: "discogs";
486
+ upload: "upload";
487
+ }>>>;
488
+ discogs_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
489
+ apple_music_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
490
+ art_match_status: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
491
+ matched: "matched";
492
+ mismatch: "mismatch";
493
+ no_candidate: "no_candidate";
494
+ no_reference: "no_reference";
495
+ }>>>;
496
+ art_match_distance: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
497
+ }, z.core.$loose>>;
498
+ estimatedTotalHits: z.ZodNumber;
499
+ offset: z.ZodNumber;
500
+ limit: z.ZodNumber;
501
+ query: z.ZodString;
502
+ sort: z.ZodString;
503
+ added_genres: z.ZodOptional<z.ZodArray<z.ZodObject<{
504
+ id: z.ZodString;
505
+ name: z.ZodString;
506
+ slug: z.ZodString;
507
+ }, z.core.$strip>>>;
508
+ }, z.core.$strip>>;
509
+ AlbumDetail: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
510
+ album: z.ZodObject<{
511
+ genre_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
512
+ style_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
513
+ effective_genres: z.ZodOptional<z.ZodArray<z.ZodString>>;
514
+ effective_styles: z.ZodOptional<z.ZodArray<z.ZodString>>;
515
+ release_id: z.ZodString;
516
+ friend_id: z.ZodNumber;
517
+ username: z.ZodOptional<z.ZodString>;
518
+ title: z.ZodString;
519
+ artist: z.ZodString;
520
+ year: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
521
+ genres: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
522
+ styles: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
523
+ album_thumbnail: z.ZodOptional<z.ZodNullable<z.ZodString>>;
524
+ audio_file_album_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
525
+ discogs_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
526
+ date_added: z.ZodOptional<z.ZodNullable<z.ZodString>>;
527
+ date_changed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
528
+ track_count: z.ZodOptional<z.ZodNumber>;
529
+ album_rating: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
530
+ album_notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
531
+ purchase_price: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
532
+ condition: z.ZodOptional<z.ZodNullable<z.ZodString>>;
533
+ label: z.ZodOptional<z.ZodNullable<z.ZodString>>;
534
+ catalog_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
535
+ country: z.ZodOptional<z.ZodNullable<z.ZodString>>;
536
+ format: z.ZodOptional<z.ZodNullable<z.ZodString>>;
537
+ created_at: z.ZodOptional<z.ZodString>;
538
+ updated_at: z.ZodOptional<z.ZodString>;
539
+ library_identifier: z.ZodOptional<z.ZodNullable<z.ZodString>>;
540
+ album_art_source: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
541
+ apple_music: "apple_music";
542
+ discogs: "discogs";
543
+ upload: "upload";
544
+ }>>>;
545
+ discogs_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
546
+ apple_music_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
547
+ art_match_status: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
548
+ matched: "matched";
549
+ mismatch: "mismatch";
550
+ no_candidate: "no_candidate";
551
+ no_reference: "no_reference";
552
+ }>>>;
553
+ art_match_distance: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
554
+ }, z.core.$loose>;
555
+ tracks: z.ZodArray<z.ZodObject<{
556
+ id: z.ZodOptional<z.ZodNumber>;
557
+ track_id: z.ZodString;
558
+ friend_id: z.ZodNumber;
559
+ isrc: z.ZodOptional<z.ZodNullable<z.ZodString>>;
560
+ title: z.ZodString;
561
+ artist: z.ZodString;
562
+ album: z.ZodString;
563
+ year: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
564
+ styles: z.ZodOptional<z.ZodArray<z.ZodString>>;
565
+ genres: z.ZodOptional<z.ZodArray<z.ZodString>>;
566
+ album_genres: z.ZodOptional<z.ZodArray<z.ZodString>>;
567
+ album_styles: z.ZodOptional<z.ZodArray<z.ZodString>>;
568
+ duration: z.ZodOptional<z.ZodString>;
569
+ duration_seconds: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
570
+ position: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
571
+ discogs_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
572
+ apple_music_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
573
+ youtube_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
574
+ spotify_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
575
+ soundcloud_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
576
+ album_thumbnail: z.ZodOptional<z.ZodNullable<z.ZodString>>;
577
+ local_tags: z.ZodOptional<z.ZodNullable<z.ZodString>>;
578
+ track_genres: z.ZodOptional<z.ZodArray<z.ZodObject<{
579
+ id: z.ZodString;
580
+ name: z.ZodString;
581
+ slug: z.ZodString;
582
+ parent_id: z.ZodNullable<z.ZodString>;
583
+ parent_name: z.ZodNullable<z.ZodString>;
584
+ }, z.core.$strip>>>;
585
+ descriptors: z.ZodOptional<z.ZodArray<z.ZodString>>;
586
+ composer: z.ZodOptional<z.ZodNullable<z.ZodString>>;
587
+ bpm: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
588
+ key: z.ZodOptional<z.ZodNullable<z.ZodString>>;
589
+ key_confidence: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
590
+ bpm_confidence: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
591
+ danceability: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>>;
592
+ mood_happy: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
593
+ mood_sad: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
594
+ mood_relaxed: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
595
+ mood_aggressive: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
596
+ notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
597
+ local_audio_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
598
+ audio_file_album_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
599
+ star_rating: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
600
+ username: z.ZodOptional<z.ZodString>;
601
+ release_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
602
+ library_identifier: z.ZodOptional<z.ZodNullable<z.ZodString>>;
603
+ hasVectors: z.ZodOptional<z.ZodBoolean>;
604
+ deleted_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
605
+ }, z.core.$loose>>;
606
+ }, z.core.$strip>>;
607
+ AlbumDeleteResponse: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
608
+ success: z.ZodBoolean;
609
+ }, z.core.$strip>>;
610
+ AlbumArtworkState: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
611
+ release_id: z.ZodString;
612
+ friend_id: z.ZodNumber;
613
+ current_url: z.ZodNullable<z.ZodString>;
614
+ source: z.ZodNullable<z.ZodEnum<{
615
+ apple_music: "apple_music";
616
+ discogs: "discogs";
617
+ upload: "upload";
618
+ }>>;
619
+ discogs_art_url: z.ZodNullable<z.ZodString>;
620
+ apple_music_art_url: z.ZodNullable<z.ZodString>;
621
+ art_match_status: z.ZodNullable<z.ZodEnum<{
622
+ matched: "matched";
623
+ mismatch: "mismatch";
624
+ no_candidate: "no_candidate";
625
+ no_reference: "no_reference";
626
+ }>>;
627
+ art_match_distance: z.ZodNullable<z.ZodNumber>;
628
+ has_local_audio: z.ZodBoolean;
629
+ }, z.core.$strip>>;
630
+ AlbumPlayableStructure: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
631
+ album: z.ZodObject<{
632
+ genre_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
633
+ style_override_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
634
+ effective_genres: z.ZodOptional<z.ZodArray<z.ZodString>>;
635
+ effective_styles: z.ZodOptional<z.ZodArray<z.ZodString>>;
636
+ release_id: z.ZodString;
637
+ friend_id: z.ZodNumber;
638
+ username: z.ZodOptional<z.ZodString>;
639
+ title: z.ZodString;
640
+ artist: z.ZodString;
641
+ year: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
642
+ genres: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
643
+ styles: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
644
+ album_thumbnail: z.ZodOptional<z.ZodNullable<z.ZodString>>;
645
+ audio_file_album_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
646
+ discogs_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
647
+ date_added: z.ZodOptional<z.ZodNullable<z.ZodString>>;
648
+ date_changed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
649
+ track_count: z.ZodOptional<z.ZodNumber>;
650
+ album_rating: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
651
+ album_notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
652
+ purchase_price: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
653
+ condition: z.ZodOptional<z.ZodNullable<z.ZodString>>;
654
+ label: z.ZodOptional<z.ZodNullable<z.ZodString>>;
655
+ catalog_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
656
+ country: z.ZodOptional<z.ZodNullable<z.ZodString>>;
657
+ format: z.ZodOptional<z.ZodNullable<z.ZodString>>;
658
+ created_at: z.ZodOptional<z.ZodString>;
659
+ updated_at: z.ZodOptional<z.ZodString>;
660
+ library_identifier: z.ZodOptional<z.ZodNullable<z.ZodString>>;
661
+ album_art_source: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
662
+ apple_music: "apple_music";
663
+ discogs: "discogs";
664
+ upload: "upload";
665
+ }>>>;
666
+ discogs_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
667
+ apple_music_art_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
668
+ art_match_status: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
669
+ matched: "matched";
670
+ mismatch: "mismatch";
671
+ no_candidate: "no_candidate";
672
+ no_reference: "no_reference";
673
+ }>>>;
674
+ art_match_distance: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
675
+ }, z.core.$loose>;
676
+ sides: z.ZodArray<z.ZodObject<{
677
+ side_key: z.ZodString;
678
+ side_label: z.ZodString;
679
+ ordinal: z.ZodNumber;
680
+ track_count: z.ZodNumber;
681
+ tracks: z.ZodArray<z.ZodObject<{
682
+ track_id: z.ZodString;
683
+ friend_id: z.ZodNumber;
684
+ position: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
685
+ title: z.ZodString;
686
+ artist: z.ZodString;
687
+ }, z.core.$loose>>;
688
+ }, z.core.$strip>>;
689
+ }, z.core.$strip>>;
690
+ };
691
+ export {};
692
+ //# sourceMappingURL=albums.d.ts.map