rhythia-api 217.0.0 → 225.0.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.
package/types/database.ts CHANGED
@@ -1,1145 +1,1179 @@
1
- export type Json =
2
- | string
3
- | number
4
- | boolean
5
- | null
6
- | { [key: string]: Json | undefined }
7
- | Json[]
8
-
9
- export type Database = {
10
- // Allows to automatically instantiate createClient with right options
11
- // instead of createClient<Database, { PostgrestVersion: 'XX' }>(URL, KEY)
12
- __InternalSupabase: {
13
- PostgrestVersion: "13.0.4"
14
- }
15
- public: {
16
- Tables: {
17
- admin_actions: {
18
- Row: {
19
- action_type: string
20
- admin_id: number
21
- created_at: string | null
22
- details: Json | null
23
- id: number
24
- target_id: number | null
25
- }
26
- Insert: {
27
- action_type: string
28
- admin_id: number
29
- created_at?: string | null
30
- details?: Json | null
31
- id?: number
32
- target_id?: number | null
33
- }
34
- Update: {
35
- action_type?: string
36
- admin_id?: number
37
- created_at?: string | null
38
- details?: Json | null
39
- id?: number
40
- target_id?: number | null
41
- }
42
- Relationships: []
43
- }
44
- admin_operations: {
45
- Row: {
46
- action_type: string | null
47
- details: Json
48
- id: number
49
- target_id: string | null
50
- }
51
- Insert: {
52
- action_type?: string | null
53
- details: Json
54
- id?: number
55
- target_id?: string | null
56
- }
57
- Update: {
58
- action_type?: string | null
59
- details?: Json
60
- id?: number
61
- target_id?: string | null
62
- }
63
- Relationships: [
64
- {
65
- foreignKeyName: "admin_operations_id_fkey"
66
- columns: ["id"]
67
- isOneToOne: true
68
- referencedRelation: "profiles"
69
- referencedColumns: ["id"]
70
- },
71
- ]
72
- }
73
- beatmapCollections: {
74
- Row: {
75
- created_at: string
76
- description: string
77
- id: number
78
- is_list: boolean
79
- owner: number
80
- title: string
81
- }
82
- Insert: {
83
- created_at?: string
84
- description: string
85
- id?: number
86
- is_list?: boolean
87
- owner: number
88
- title: string
89
- }
90
- Update: {
91
- created_at?: string
92
- description?: string
93
- id?: number
94
- is_list?: boolean
95
- owner?: number
96
- title?: string
97
- }
98
- Relationships: [
99
- {
100
- foreignKeyName: "beatmapCollections_owner_fkey"
101
- columns: ["owner"]
102
- isOneToOne: false
103
- referencedRelation: "profiles"
104
- referencedColumns: ["id"]
105
- },
106
- ]
107
- }
108
- beatmapPageComments: {
109
- Row: {
110
- beatmapPage: number
111
- content: string | null
112
- created_at: string
113
- id: number
114
- owner: number
115
- }
116
- Insert: {
117
- beatmapPage: number
118
- content?: string | null
119
- created_at?: string
120
- id?: number
121
- owner: number
122
- }
123
- Update: {
124
- beatmapPage?: number
125
- content?: string | null
126
- created_at?: string
127
- id?: number
128
- owner?: number
129
- }
130
- Relationships: [
131
- {
132
- foreignKeyName: "beatmapPageComments_beatmapPage_fkey"
133
- columns: ["beatmapPage"]
134
- isOneToOne: false
135
- referencedRelation: "beatmapPages"
136
- referencedColumns: ["id"]
137
- },
138
- {
139
- foreignKeyName: "beatmapPageComments_owner_fkey"
140
- columns: ["owner"]
141
- isOneToOne: false
142
- referencedRelation: "profiles"
143
- referencedColumns: ["id"]
144
- },
145
- ]
146
- }
147
- beatmapPages: {
148
- Row: {
149
- created_at: string
150
- description: string
151
- genre: string | null
152
- id: number
153
- latestBeatmapHash: string | null
154
- nominations: Json | null
155
- owner: number | null
156
- ranked_at: number
157
- status: string | null
158
- tags: string
159
- title: string | null
160
- updated_at: number | null
161
- video_url: string | null
162
- }
163
- Insert: {
164
- created_at?: string
165
- description?: string
166
- genre?: string | null
167
- id?: number
168
- latestBeatmapHash?: string | null
169
- nominations?: Json | null
170
- owner?: number | null
171
- ranked_at?: number
172
- status?: string | null
173
- tags?: string
174
- title?: string | null
175
- updated_at?: number | null
176
- video_url?: string | null
177
- }
178
- Update: {
179
- created_at?: string
180
- description?: string
181
- genre?: string | null
182
- id?: number
183
- latestBeatmapHash?: string | null
184
- nominations?: Json | null
185
- owner?: number | null
186
- ranked_at?: number
187
- status?: string | null
188
- tags?: string
189
- title?: string | null
190
- updated_at?: number | null
191
- video_url?: string | null
192
- }
193
- Relationships: [
194
- {
195
- foreignKeyName: "beatmapPages_latestBeatmapHash_fkey"
196
- columns: ["latestBeatmapHash"]
197
- isOneToOne: false
198
- referencedRelation: "beatmaps"
199
- referencedColumns: ["beatmapHash"]
200
- },
201
- {
202
- foreignKeyName: "beatmapPages_owner_fkey"
203
- columns: ["owner"]
204
- isOneToOne: false
205
- referencedRelation: "profiles"
206
- referencedColumns: ["id"]
207
- },
208
- ]
209
- }
210
- beatmaps: {
211
- Row: {
212
- beatmapFile: string | null
213
- beatmapHash: string
214
- created_at: string
215
- difficulty: number | null
216
- image: string | null
217
- imageLarge: string | null
218
- length: number | null
219
- noteCount: number | null
220
- playcount: number | null
221
- ranked: boolean | null
222
- starRating: number | null
223
- title: string | null
224
- }
225
- Insert: {
226
- beatmapFile?: string | null
227
- beatmapHash: string
228
- created_at?: string
229
- difficulty?: number | null
230
- image?: string | null
231
- imageLarge?: string | null
232
- length?: number | null
233
- noteCount?: number | null
234
- playcount?: number | null
235
- ranked?: boolean | null
236
- starRating?: number | null
237
- title?: string | null
238
- }
239
- Update: {
240
- beatmapFile?: string | null
241
- beatmapHash?: string
242
- created_at?: string
243
- difficulty?: number | null
244
- image?: string | null
245
- imageLarge?: string | null
246
- length?: number | null
247
- noteCount?: number | null
248
- playcount?: number | null
249
- ranked?: boolean | null
250
- starRating?: number | null
251
- title?: string | null
252
- }
253
- Relationships: []
254
- }
255
- cache: {
256
- Row: {
257
- key: string
258
- value: Json
259
- }
260
- Insert: {
261
- key: string
262
- value: Json
263
- }
264
- Update: {
265
- key?: string
266
- value?: Json
267
- }
268
- Relationships: []
269
- }
270
- chartedValues: {
271
- Row: {
272
- created_at: string
273
- id: number
274
- type: string | null
275
- value: number | null
276
- }
277
- Insert: {
278
- created_at?: string
279
- id?: number
280
- type?: string | null
281
- value?: number | null
282
- }
283
- Update: {
284
- created_at?: string
285
- id?: number
286
- type?: string | null
287
- value?: number | null
288
- }
289
- Relationships: []
290
- }
291
- clans: {
292
- Row: {
293
- acronym: string | null
294
- allowed_users: Json
295
- avatar_url: string | null
296
- created_at: string
297
- description: string | null
298
- id: number
299
- name: string
300
- owner: number | null
301
- }
302
- Insert: {
303
- acronym?: string | null
304
- allowed_users?: Json
305
- avatar_url?: string | null
306
- created_at?: string
307
- description?: string | null
308
- id?: number
309
- name?: string
310
- owner?: number | null
311
- }
312
- Update: {
313
- acronym?: string | null
314
- allowed_users?: Json
315
- avatar_url?: string | null
316
- created_at?: string
317
- description?: string | null
318
- id?: number
319
- name?: string
320
- owner?: number | null
321
- }
322
- Relationships: [
323
- {
324
- foreignKeyName: "clans_owner_fkey"
325
- columns: ["owner"]
326
- isOneToOne: false
327
- referencedRelation: "profiles"
328
- referencedColumns: ["id"]
329
- },
330
- ]
331
- }
332
- collectionRelations: {
333
- Row: {
334
- beatmapPage: number | null
335
- collection: number
336
- created_at: string
337
- id: number
338
- sort: number
339
- }
340
- Insert: {
341
- beatmapPage?: number | null
342
- collection: number
343
- created_at?: string
344
- id?: number
345
- sort?: number
346
- }
347
- Update: {
348
- beatmapPage?: number | null
349
- collection?: number
350
- created_at?: string
351
- id?: number
352
- sort?: number
353
- }
354
- Relationships: [
355
- {
356
- foreignKeyName: "collectionRelations_beatmapPage_fkey"
357
- columns: ["beatmapPage"]
358
- isOneToOne: false
359
- referencedRelation: "beatmapPages"
360
- referencedColumns: ["id"]
361
- },
362
- {
363
- foreignKeyName: "collectionRelations_collection_fkey"
364
- columns: ["collection"]
365
- isOneToOne: false
366
- referencedRelation: "beatmapCollections"
367
- referencedColumns: ["id"]
368
- },
369
- ]
370
- }
371
- discordWebhooks: {
372
- Row: {
373
- id: number
374
- type: Database["public"]["Enums"]["discordWebhookType"] | null
375
- webhook_link: string
376
- }
377
- Insert: {
378
- id?: number
379
- type?: Database["public"]["Enums"]["discordWebhookType"] | null
380
- webhook_link?: string
381
- }
382
- Update: {
383
- id?: number
384
- type?: Database["public"]["Enums"]["discordWebhookType"] | null
385
- webhook_link?: string
386
- }
387
- Relationships: []
388
- }
389
- inventories: {
390
- Row: {
391
- contents: Json
392
- id: number
393
- }
394
- Insert: {
395
- contents?: Json
396
- id?: number
397
- }
398
- Update: {
399
- contents?: Json
400
- id?: number
401
- }
402
- Relationships: [
403
- {
404
- foreignKeyName: "inventory_id_fkey"
405
- columns: ["id"]
406
- isOneToOne: true
407
- referencedRelation: "profiles"
408
- referencedColumns: ["id"]
409
- },
410
- ]
411
- }
412
- invites: {
413
- Row: {
414
- code: string
415
- created_at: string
416
- id: number
417
- resourceId: string
418
- type: string
419
- used: boolean
420
- }
421
- Insert: {
422
- code: string
423
- created_at?: string
424
- id?: number
425
- resourceId: string
426
- type: string
427
- used?: boolean
428
- }
429
- Update: {
430
- code?: string
431
- created_at?: string
432
- id?: number
433
- resourceId?: string
434
- type?: string
435
- used?: boolean
436
- }
437
- Relationships: []
438
- }
439
- levers: {
440
- Row: {
441
- disable_scores: boolean
442
- id: number
443
- }
444
- Insert: {
445
- disable_scores?: boolean
446
- id?: number
447
- }
448
- Update: {
449
- disable_scores?: boolean
450
- id?: number
451
- }
452
- Relationships: []
453
- }
454
- passkeys: {
455
- Row: {
456
- email: string
457
- id: number
458
- passkey: string
459
- }
460
- Insert: {
461
- email: string
462
- id: number
463
- passkey: string
464
- }
465
- Update: {
466
- email?: string
467
- id?: number
468
- passkey?: string
469
- }
470
- Relationships: [
471
- {
472
- foreignKeyName: "passkeys_id_fkey"
473
- columns: ["id"]
474
- isOneToOne: true
475
- referencedRelation: "profiles"
476
- referencedColumns: ["id"]
477
- },
478
- ]
479
- }
480
- profileActivities: {
481
- Row: {
482
- last_activity: number | null
483
- uid: string
484
- }
485
- Insert: {
486
- last_activity?: number | null
487
- uid: string
488
- }
489
- Update: {
490
- last_activity?: number | null
491
- uid?: string
492
- }
493
- Relationships: []
494
- }
495
- profiles: {
496
- Row: {
497
- about_me: string | null
498
- avatar_url: string | null
499
- badges: Json | null
500
- ban: Database["public"]["Enums"]["banTypes"] | null
501
- bannedAt: number | null
502
- clan: number | null
503
- computedUsername: string | null
504
- created_at: number | null
505
- flag: string | null
506
- id: number
507
- mu_rank: number
508
- play_count: number | null
509
- profile_image: string | null
510
- sigma_rank: number | null
511
- skill_points: number | null
512
- spin_skill_points: number
513
- squares_hit: number | null
514
- total_score: number | null
515
- uid: string | null
516
- username: string | null
517
- verificationDeadline: number
518
- verified: boolean | null
519
- }
520
- Insert: {
521
- about_me?: string | null
522
- avatar_url?: string | null
523
- badges?: Json | null
524
- ban?: Database["public"]["Enums"]["banTypes"] | null
525
- bannedAt?: number | null
526
- clan?: number | null
527
- computedUsername?: string | null
528
- created_at?: number | null
529
- flag?: string | null
530
- id?: number
531
- mu_rank?: number
532
- play_count?: number | null
533
- profile_image?: string | null
534
- sigma_rank?: number | null
535
- skill_points?: number | null
536
- spin_skill_points?: number
537
- squares_hit?: number | null
538
- total_score?: number | null
539
- uid?: string | null
540
- username?: string | null
541
- verificationDeadline?: number
542
- verified?: boolean | null
543
- }
544
- Update: {
545
- about_me?: string | null
546
- avatar_url?: string | null
547
- badges?: Json | null
548
- ban?: Database["public"]["Enums"]["banTypes"] | null
549
- bannedAt?: number | null
550
- clan?: number | null
551
- computedUsername?: string | null
552
- created_at?: number | null
553
- flag?: string | null
554
- id?: number
555
- mu_rank?: number
556
- play_count?: number | null
557
- profile_image?: string | null
558
- sigma_rank?: number | null
559
- skill_points?: number | null
560
- spin_skill_points?: number
561
- squares_hit?: number | null
562
- total_score?: number | null
563
- uid?: string | null
564
- username?: string | null
565
- verificationDeadline?: number
566
- verified?: boolean | null
567
- }
568
- Relationships: [
569
- {
570
- foreignKeyName: "profiles_clan_fkey"
571
- columns: ["clan"]
572
- isOneToOne: false
573
- referencedRelation: "clans"
574
- referencedColumns: ["id"]
575
- },
576
- ]
577
- }
578
- scores: {
579
- Row: {
580
- additional_data: Json
581
- awarded_sp: number | null
582
- beatmapHash: string | null
583
- created_at: string
584
- id: number
585
- misses: number | null
586
- mods: Json
587
- passed: boolean | null
588
- replayHwid: string | null
589
- songId: string | null
590
- speed: number | null
591
- spin: boolean
592
- userId: number | null
593
- }
594
- Insert: {
595
- additional_data?: Json
596
- awarded_sp?: number | null
597
- beatmapHash?: string | null
598
- created_at?: string
599
- id?: number
600
- misses?: number | null
601
- mods?: Json
602
- passed?: boolean | null
603
- replayHwid?: string | null
604
- songId?: string | null
605
- speed?: number | null
606
- spin?: boolean
607
- userId?: number | null
608
- }
609
- Update: {
610
- additional_data?: Json
611
- awarded_sp?: number | null
612
- beatmapHash?: string | null
613
- created_at?: string
614
- id?: number
615
- misses?: number | null
616
- mods?: Json
617
- passed?: boolean | null
618
- replayHwid?: string | null
619
- songId?: string | null
620
- speed?: number | null
621
- spin?: boolean
622
- userId?: number | null
623
- }
624
- Relationships: [
625
- {
626
- foreignKeyName: "scores_beatmapHash_fkey"
627
- columns: ["beatmapHash"]
628
- isOneToOne: false
629
- referencedRelation: "beatmaps"
630
- referencedColumns: ["beatmapHash"]
631
- },
632
- {
633
- foreignKeyName: "scores_userId_fkey"
634
- columns: ["userId"]
635
- isOneToOne: false
636
- referencedRelation: "profiles"
637
- referencedColumns: ["id"]
638
- },
639
- ]
640
- }
641
- }
642
- Views: {
643
- [_ in never]: never
644
- }
645
- Functions: {
646
- admin_delete_user: { Args: { user_id: number }; Returns: boolean }
647
- admin_exclude_user: { Args: { user_id: number }; Returns: boolean }
648
- admin_invalidate_ranked_scores: {
649
- Args: { user_id: number }
650
- Returns: number
651
- }
652
- admin_log_action:
653
- | {
654
- Args: {
655
- action_type: string
656
- admin_id: number
657
- details?: Json
658
- target_id: number
659
- }
660
- Returns: undefined
661
- }
662
- | {
663
- Args: {
664
- action_type: string
665
- admin_id: number
666
- details?: Json
667
- target_id: string
668
- }
669
- Returns: undefined
670
- }
671
- admin_profanity_clear: { Args: { user_id: number }; Returns: boolean }
672
- admin_remove_all_scores: { Args: { user_id: number }; Returns: number }
673
- admin_restrict_user: { Args: { user_id: number }; Returns: boolean }
674
- admin_search_users: {
675
- Args: { search_text: string }
676
- Returns: {
677
- about_me: string | null
678
- avatar_url: string | null
679
- badges: Json | null
680
- ban: Database["public"]["Enums"]["banTypes"] | null
681
- bannedAt: number | null
682
- clan: number | null
683
- computedUsername: string | null
684
- created_at: number | null
685
- flag: string | null
686
- id: number
687
- mu_rank: number
688
- play_count: number | null
689
- profile_image: string | null
690
- sigma_rank: number | null
691
- skill_points: number | null
692
- spin_skill_points: number
693
- squares_hit: number | null
694
- total_score: number | null
695
- uid: string | null
696
- username: string | null
697
- verificationDeadline: number
698
- verified: boolean | null
699
- }[]
700
- SetofOptions: {
701
- from: "*"
702
- to: "profiles"
703
- isOneToOne: false
704
- isSetofReturn: true
705
- }
706
- }
707
- admin_silence_user: { Args: { user_id: number }; Returns: boolean }
708
- admin_unban_user: { Args: { user_id: number }; Returns: boolean }
709
- get_badge_leaderboard: {
710
- Args: { p_limit?: number }
711
- Returns: {
712
- avatar_url: string
713
- display_name: string
714
- id: number
715
- special_badge_count: number
716
- }[]
717
- }
718
- get_clan_leaderboard: {
719
- Args: { items_per_page?: number; page_number?: number }
720
- Returns: {
721
- acronym: string
722
- avatar_url: string
723
- description: string
724
- id: number
725
- member_count: number
726
- name: string
727
- total_pages: number
728
- total_skill_points: number
729
- }[]
730
- }
731
- get_collections_v1: {
732
- Args: { items_per_page?: number; page_number?: number }
733
- Returns: {
734
- beatmap_count: number
735
- created_at: string
736
- description: string
737
- id: number
738
- owner: number
739
- star1: number
740
- star10: number
741
- star11: number
742
- star12: number
743
- star13: number
744
- star14: number
745
- star15: number
746
- star16: number
747
- star17: number
748
- star18: number
749
- star2: number
750
- star3: number
751
- star4: number
752
- star5: number
753
- star6: number
754
- star7: number
755
- star8: number
756
- star9: number
757
- title: string
758
- total_pages: number
759
- }[]
760
- }
761
- get_collections_v2:
762
- | {
763
- Args: { items_per_page?: number; page_number?: number }
764
- Returns: {
765
- beatmap_count: number
766
- created_at: string
767
- description: string
768
- id: number
769
- owner: number
770
- owner_avatar_url: string
771
- owner_username: string
772
- star1: number
773
- star10: number
774
- star11: number
775
- star12: number
776
- star13: number
777
- star14: number
778
- star15: number
779
- star16: number
780
- star17: number
781
- star18: number
782
- star2: number
783
- star3: number
784
- star4: number
785
- star5: number
786
- star6: number
787
- star7: number
788
- star8: number
789
- star9: number
790
- title: string
791
- total_pages: number
792
- }[]
793
- }
794
- | {
795
- Args: {
796
- items_per_page?: number
797
- owner_filter?: number
798
- page_number?: number
799
- }
800
- Returns: {
801
- beatmap_count: number
802
- created_at: string
803
- description: string
804
- id: number
805
- owner: number
806
- owner_avatar_url: string
807
- owner_username: string
808
- star1: number
809
- star10: number
810
- star11: number
811
- star12: number
812
- star13: number
813
- star14: number
814
- star15: number
815
- star16: number
816
- star17: number
817
- star18: number
818
- star2: number
819
- star3: number
820
- star4: number
821
- star5: number
822
- star6: number
823
- star7: number
824
- star8: number
825
- star9: number
826
- title: string
827
- total_pages: number
828
- }[]
829
- }
830
- get_collections_v3: {
831
- Args: {
832
- items_per_page?: number
833
- owner_filter?: number
834
- page_number?: number
835
- }
836
- Returns: {
837
- beatmap_count: number
838
- created_at: string
839
- description: string
840
- id: number
841
- owner: number
842
- owner_avatar_url: string
843
- owner_username: string
844
- star1: number
845
- star10: number
846
- star11: number
847
- star12: number
848
- star13: number
849
- star14: number
850
- star15: number
851
- star16: number
852
- star17: number
853
- star18: number
854
- star2: number
855
- star3: number
856
- star4: number
857
- star5: number
858
- star6: number
859
- star7: number
860
- star8: number
861
- star9: number
862
- title: string
863
- total_pages: number
864
- }[]
865
- }
866
- get_collections_v4: {
867
- Args: {
868
- author_filter?: string
869
- items_per_page?: number
870
- min_beatmaps?: number
871
- owner_filter?: number
872
- page_number?: number
873
- search_query?: string
874
- }
875
- Returns: {
876
- beatmap_count: number
877
- created_at: string
878
- description: string
879
- id: number
880
- owner: number
881
- owner_avatar_url: string
882
- owner_username: string
883
- star1: number
884
- star10: number
885
- star11: number
886
- star12: number
887
- star13: number
888
- star14: number
889
- star15: number
890
- star16: number
891
- star17: number
892
- star18: number
893
- star2: number
894
- star3: number
895
- star4: number
896
- star5: number
897
- star6: number
898
- star7: number
899
- star8: number
900
- star9: number
901
- title: string
902
- total_pages: number
903
- }[]
904
- }
905
- get_top_scores_for_beatmap: {
906
- Args: { beatmap_hash: string }
907
- Returns: {
908
- accuracy: number
909
- avatar_url: string
910
- awarded_sp: number
911
- created_at: string
912
- id: number
913
- misses: number
914
- mods: Json
915
- passed: boolean
916
- replayhwid: string
917
- songid: string
918
- speed: number
919
- spin: boolean
920
- userid: number
921
- username: string
922
- }[]
923
- }
924
- get_top_scores_for_beatmap2: {
925
- Args: { beatmap_hash: string }
926
- Returns: {
927
- accuracy: number
928
- avatar_url: string
929
- awarded_sp: number
930
- created_at: string
931
- id: number
932
- misses: number
933
- mods: Json
934
- passed: boolean
935
- replayhwid: string
936
- songid: string
937
- speed: number
938
- spin: boolean
939
- userid: number
940
- username: string
941
- }[]
942
- }
943
- get_user_activity: {
944
- Args: { score_limit?: number; user_id: number }
945
- Returns: Json
946
- }
947
- get_user_by_email: { Args: { email_address: string }; Returns: Json }
948
- get_user_reigning_scores:
949
- | {
950
- Args: { page_size: number; userid: number }
951
- Returns: {
952
- awarded_sp: number
953
- beatmaphash: string
954
- beatmaptitle: string
955
- created_at: string
956
- difficulty: number
957
- id: number
958
- misses: number
959
- mods: Json
960
- notes: number
961
- passed: boolean
962
- replayhwid: string
963
- songid: string
964
- speed: number
965
- spin: boolean
966
- }[]
967
- }
968
- | {
969
- Args: { userid: number }
970
- Returns: {
971
- awarded_sp: number
972
- beatmaphash: string
973
- created_at: string
974
- id: number
975
- misses: number
976
- mods: Json
977
- passed: boolean
978
- replayhwid: string
979
- songid: string
980
- speed: number
981
- spin: boolean
982
- }[]
983
- }
984
- get_user_scores_lastday: {
985
- Args: { limit_param: number; userid: number }
986
- Returns: Json
987
- }
988
- get_user_scores_payload: {
989
- Args: { limit_param: number; userid: number }
990
- Returns: Json
991
- }
992
- get_user_scores_reign: { Args: { userid: number }; Returns: Json }
993
- get_user_scores_summary: {
994
- Args: { limit_param?: number; userid: number }
995
- Returns: Json
996
- }
997
- get_user_scores_top_and_stats: {
998
- Args: { limit_param: number; userid: number }
999
- Returns: Json
1000
- }
1001
- grant_special_badges: {
1002
- Args: {
1003
- p_beatmap_id: number
1004
- p_passed?: boolean
1005
- p_spin?: boolean
1006
- p_user_id: number
1007
- }
1008
- Returns: Json
1009
- }
1010
- }
1011
- Enums: {
1012
- banTypes: "cool" | "silenced" | "restricted" | "excluded"
1013
- discordWebhookType: "maps" | "scores"
1014
- }
1015
- CompositeTypes: {
1016
- [_ in never]: never
1017
- }
1018
- }
1019
- }
1020
-
1021
- type DatabaseWithoutInternals = Omit<Database, "__InternalSupabase">
1022
-
1023
- type DefaultSchema = DatabaseWithoutInternals[Extract<keyof Database, "public">]
1024
-
1025
- export type Tables<
1026
- DefaultSchemaTableNameOrOptions extends
1027
- | keyof (DefaultSchema["Tables"] & DefaultSchema["Views"])
1028
- | { schema: keyof DatabaseWithoutInternals },
1029
- TableName extends DefaultSchemaTableNameOrOptions extends {
1030
- schema: keyof DatabaseWithoutInternals
1031
- }
1032
- ? keyof (DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] &
1033
- DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Views"])
1034
- : never = never,
1035
- > = DefaultSchemaTableNameOrOptions extends {
1036
- schema: keyof DatabaseWithoutInternals
1037
- }
1038
- ? (DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] &
1039
- DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Views"])[TableName] extends {
1040
- Row: infer R
1041
- }
1042
- ? R
1043
- : never
1044
- : DefaultSchemaTableNameOrOptions extends keyof (DefaultSchema["Tables"] &
1045
- DefaultSchema["Views"])
1046
- ? (DefaultSchema["Tables"] &
1047
- DefaultSchema["Views"])[DefaultSchemaTableNameOrOptions] extends {
1048
- Row: infer R
1049
- }
1050
- ? R
1051
- : never
1052
- : never
1053
-
1054
- export type TablesInsert<
1055
- DefaultSchemaTableNameOrOptions extends
1056
- | keyof DefaultSchema["Tables"]
1057
- | { schema: keyof DatabaseWithoutInternals },
1058
- TableName extends DefaultSchemaTableNameOrOptions extends {
1059
- schema: keyof DatabaseWithoutInternals
1060
- }
1061
- ? keyof DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"]
1062
- : never = never,
1063
- > = DefaultSchemaTableNameOrOptions extends {
1064
- schema: keyof DatabaseWithoutInternals
1065
- }
1066
- ? DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"][TableName] extends {
1067
- Insert: infer I
1068
- }
1069
- ? I
1070
- : never
1071
- : DefaultSchemaTableNameOrOptions extends keyof DefaultSchema["Tables"]
1072
- ? DefaultSchema["Tables"][DefaultSchemaTableNameOrOptions] extends {
1073
- Insert: infer I
1074
- }
1075
- ? I
1076
- : never
1077
- : never
1078
-
1079
- export type TablesUpdate<
1080
- DefaultSchemaTableNameOrOptions extends
1081
- | keyof DefaultSchema["Tables"]
1082
- | { schema: keyof DatabaseWithoutInternals },
1083
- TableName extends DefaultSchemaTableNameOrOptions extends {
1084
- schema: keyof DatabaseWithoutInternals
1085
- }
1086
- ? keyof DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"]
1087
- : never = never,
1088
- > = DefaultSchemaTableNameOrOptions extends {
1089
- schema: keyof DatabaseWithoutInternals
1090
- }
1091
- ? DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"][TableName] extends {
1092
- Update: infer U
1093
- }
1094
- ? U
1095
- : never
1096
- : DefaultSchemaTableNameOrOptions extends keyof DefaultSchema["Tables"]
1097
- ? DefaultSchema["Tables"][DefaultSchemaTableNameOrOptions] extends {
1098
- Update: infer U
1099
- }
1100
- ? U
1101
- : never
1102
- : never
1103
-
1104
- export type Enums<
1105
- DefaultSchemaEnumNameOrOptions extends
1106
- | keyof DefaultSchema["Enums"]
1107
- | { schema: keyof DatabaseWithoutInternals },
1108
- EnumName extends DefaultSchemaEnumNameOrOptions extends {
1109
- schema: keyof DatabaseWithoutInternals
1110
- }
1111
- ? keyof DatabaseWithoutInternals[DefaultSchemaEnumNameOrOptions["schema"]]["Enums"]
1112
- : never = never,
1113
- > = DefaultSchemaEnumNameOrOptions extends {
1114
- schema: keyof DatabaseWithoutInternals
1115
- }
1116
- ? DatabaseWithoutInternals[DefaultSchemaEnumNameOrOptions["schema"]]["Enums"][EnumName]
1117
- : DefaultSchemaEnumNameOrOptions extends keyof DefaultSchema["Enums"]
1118
- ? DefaultSchema["Enums"][DefaultSchemaEnumNameOrOptions]
1119
- : never
1120
-
1121
- export type CompositeTypes<
1122
- PublicCompositeTypeNameOrOptions extends
1123
- | keyof DefaultSchema["CompositeTypes"]
1124
- | { schema: keyof DatabaseWithoutInternals },
1125
- CompositeTypeName extends PublicCompositeTypeNameOrOptions extends {
1126
- schema: keyof DatabaseWithoutInternals
1127
- }
1128
- ? keyof DatabaseWithoutInternals[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"]
1129
- : never = never,
1130
- > = PublicCompositeTypeNameOrOptions extends {
1131
- schema: keyof DatabaseWithoutInternals
1132
- }
1133
- ? DatabaseWithoutInternals[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"][CompositeTypeName]
1134
- : PublicCompositeTypeNameOrOptions extends keyof DefaultSchema["CompositeTypes"]
1135
- ? DefaultSchema["CompositeTypes"][PublicCompositeTypeNameOrOptions]
1136
- : never
1137
-
1138
- export const Constants = {
1139
- public: {
1140
- Enums: {
1141
- banTypes: ["cool", "silenced", "restricted", "excluded"],
1142
- discordWebhookType: ["maps", "scores"],
1143
- },
1144
- },
1145
- } as const
1
+ export type Json =
2
+ | string
3
+ | number
4
+ | boolean
5
+ | null
6
+ | { [key: string]: Json | undefined }
7
+ | Json[]
8
+
9
+ export type Database = {
10
+ // Allows to automatically instantiate createClient with right options
11
+ // instead of createClient<Database, { PostgrestVersion: 'XX' }>(URL, KEY)
12
+ __InternalSupabase: {
13
+ PostgrestVersion: "13.0.4"
14
+ }
15
+ public: {
16
+ Tables: {
17
+ admin_actions: {
18
+ Row: {
19
+ action_type: string
20
+ admin_id: number
21
+ created_at: string | null
22
+ details: Json | null
23
+ id: number
24
+ target_id: number | null
25
+ }
26
+ Insert: {
27
+ action_type: string
28
+ admin_id: number
29
+ created_at?: string | null
30
+ details?: Json | null
31
+ id?: number
32
+ target_id?: number | null
33
+ }
34
+ Update: {
35
+ action_type?: string
36
+ admin_id?: number
37
+ created_at?: string | null
38
+ details?: Json | null
39
+ id?: number
40
+ target_id?: number | null
41
+ }
42
+ Relationships: []
43
+ }
44
+ admin_operations: {
45
+ Row: {
46
+ action_type: string | null
47
+ details: Json
48
+ id: number
49
+ target_id: string | null
50
+ }
51
+ Insert: {
52
+ action_type?: string | null
53
+ details: Json
54
+ id?: number
55
+ target_id?: string | null
56
+ }
57
+ Update: {
58
+ action_type?: string | null
59
+ details?: Json
60
+ id?: number
61
+ target_id?: string | null
62
+ }
63
+ Relationships: [
64
+ {
65
+ foreignKeyName: "admin_operations_id_fkey"
66
+ columns: ["id"]
67
+ isOneToOne: true
68
+ referencedRelation: "profiles"
69
+ referencedColumns: ["id"]
70
+ },
71
+ ]
72
+ }
73
+ beatmapCollections: {
74
+ Row: {
75
+ created_at: string
76
+ description: string
77
+ id: number
78
+ is_list: boolean
79
+ owner: number
80
+ title: string
81
+ }
82
+ Insert: {
83
+ created_at?: string
84
+ description: string
85
+ id?: number
86
+ is_list?: boolean
87
+ owner: number
88
+ title: string
89
+ }
90
+ Update: {
91
+ created_at?: string
92
+ description?: string
93
+ id?: number
94
+ is_list?: boolean
95
+ owner?: number
96
+ title?: string
97
+ }
98
+ Relationships: [
99
+ {
100
+ foreignKeyName: "beatmapCollections_owner_fkey"
101
+ columns: ["owner"]
102
+ isOneToOne: false
103
+ referencedRelation: "profiles"
104
+ referencedColumns: ["id"]
105
+ },
106
+ ]
107
+ }
108
+ beatmapPageComments: {
109
+ Row: {
110
+ beatmapPage: number
111
+ content: string | null
112
+ created_at: string
113
+ id: number
114
+ owner: number
115
+ }
116
+ Insert: {
117
+ beatmapPage: number
118
+ content?: string | null
119
+ created_at?: string
120
+ id?: number
121
+ owner: number
122
+ }
123
+ Update: {
124
+ beatmapPage?: number
125
+ content?: string | null
126
+ created_at?: string
127
+ id?: number
128
+ owner?: number
129
+ }
130
+ Relationships: [
131
+ {
132
+ foreignKeyName: "beatmapPageComments_beatmapPage_fkey"
133
+ columns: ["beatmapPage"]
134
+ isOneToOne: false
135
+ referencedRelation: "beatmapPages"
136
+ referencedColumns: ["id"]
137
+ },
138
+ {
139
+ foreignKeyName: "beatmapPageComments_owner_fkey"
140
+ columns: ["owner"]
141
+ isOneToOne: false
142
+ referencedRelation: "profiles"
143
+ referencedColumns: ["id"]
144
+ },
145
+ ]
146
+ }
147
+ beatmapPages: {
148
+ Row: {
149
+ created_at: string
150
+ description: string
151
+ genre: string | null
152
+ id: number
153
+ latestBeatmapHash: string | null
154
+ nominations: Json | null
155
+ owner: number | null
156
+ ranked_at: number
157
+ status: string | null
158
+ tags: string
159
+ title: string | null
160
+ updated_at: number | null
161
+ video_url: string | null
162
+ }
163
+ Insert: {
164
+ created_at?: string
165
+ description?: string
166
+ genre?: string | null
167
+ id?: number
168
+ latestBeatmapHash?: string | null
169
+ nominations?: Json | null
170
+ owner?: number | null
171
+ ranked_at?: number
172
+ status?: string | null
173
+ tags?: string
174
+ title?: string | null
175
+ updated_at?: number | null
176
+ video_url?: string | null
177
+ }
178
+ Update: {
179
+ created_at?: string
180
+ description?: string
181
+ genre?: string | null
182
+ id?: number
183
+ latestBeatmapHash?: string | null
184
+ nominations?: Json | null
185
+ owner?: number | null
186
+ ranked_at?: number
187
+ status?: string | null
188
+ tags?: string
189
+ title?: string | null
190
+ updated_at?: number | null
191
+ video_url?: string | null
192
+ }
193
+ Relationships: [
194
+ {
195
+ foreignKeyName: "beatmapPages_latestBeatmapHash_fkey"
196
+ columns: ["latestBeatmapHash"]
197
+ isOneToOne: false
198
+ referencedRelation: "beatmaps"
199
+ referencedColumns: ["beatmapHash"]
200
+ },
201
+ {
202
+ foreignKeyName: "beatmapPages_owner_fkey"
203
+ columns: ["owner"]
204
+ isOneToOne: false
205
+ referencedRelation: "profiles"
206
+ referencedColumns: ["id"]
207
+ },
208
+ ]
209
+ }
210
+ beatmaps: {
211
+ Row: {
212
+ beatmapFile: string | null
213
+ beatmapHash: string
214
+ created_at: string
215
+ difficulty: number | null
216
+ image: string | null
217
+ imageLarge: string | null
218
+ length: number | null
219
+ noteCount: number | null
220
+ playcount: number | null
221
+ ranked: boolean | null
222
+ starRating: number | null
223
+ title: string | null
224
+ }
225
+ Insert: {
226
+ beatmapFile?: string | null
227
+ beatmapHash: string
228
+ created_at?: string
229
+ difficulty?: number | null
230
+ image?: string | null
231
+ imageLarge?: string | null
232
+ length?: number | null
233
+ noteCount?: number | null
234
+ playcount?: number | null
235
+ ranked?: boolean | null
236
+ starRating?: number | null
237
+ title?: string | null
238
+ }
239
+ Update: {
240
+ beatmapFile?: string | null
241
+ beatmapHash?: string
242
+ created_at?: string
243
+ difficulty?: number | null
244
+ image?: string | null
245
+ imageLarge?: string | null
246
+ length?: number | null
247
+ noteCount?: number | null
248
+ playcount?: number | null
249
+ ranked?: boolean | null
250
+ starRating?: number | null
251
+ title?: string | null
252
+ }
253
+ Relationships: []
254
+ }
255
+ cache: {
256
+ Row: {
257
+ key: string
258
+ value: Json
259
+ }
260
+ Insert: {
261
+ key: string
262
+ value: Json
263
+ }
264
+ Update: {
265
+ key?: string
266
+ value?: Json
267
+ }
268
+ Relationships: []
269
+ }
270
+ chartedValues: {
271
+ Row: {
272
+ created_at: string
273
+ id: number
274
+ type: string | null
275
+ value: number | null
276
+ }
277
+ Insert: {
278
+ created_at?: string
279
+ id?: number
280
+ type?: string | null
281
+ value?: number | null
282
+ }
283
+ Update: {
284
+ created_at?: string
285
+ id?: number
286
+ type?: string | null
287
+ value?: number | null
288
+ }
289
+ Relationships: []
290
+ }
291
+ clans: {
292
+ Row: {
293
+ acronym: string | null
294
+ allowed_users: Json
295
+ avatar_url: string | null
296
+ created_at: string
297
+ description: string | null
298
+ id: number
299
+ name: string
300
+ owner: number | null
301
+ }
302
+ Insert: {
303
+ acronym?: string | null
304
+ allowed_users?: Json
305
+ avatar_url?: string | null
306
+ created_at?: string
307
+ description?: string | null
308
+ id?: number
309
+ name?: string
310
+ owner?: number | null
311
+ }
312
+ Update: {
313
+ acronym?: string | null
314
+ allowed_users?: Json
315
+ avatar_url?: string | null
316
+ created_at?: string
317
+ description?: string | null
318
+ id?: number
319
+ name?: string
320
+ owner?: number | null
321
+ }
322
+ Relationships: [
323
+ {
324
+ foreignKeyName: "clans_owner_fkey"
325
+ columns: ["owner"]
326
+ isOneToOne: false
327
+ referencedRelation: "profiles"
328
+ referencedColumns: ["id"]
329
+ },
330
+ ]
331
+ }
332
+ collectionRelations: {
333
+ Row: {
334
+ beatmapPage: number | null
335
+ collection: number
336
+ created_at: string
337
+ id: number
338
+ sort: number
339
+ }
340
+ Insert: {
341
+ beatmapPage?: number | null
342
+ collection: number
343
+ created_at?: string
344
+ id?: number
345
+ sort?: number
346
+ }
347
+ Update: {
348
+ beatmapPage?: number | null
349
+ collection?: number
350
+ created_at?: string
351
+ id?: number
352
+ sort?: number
353
+ }
354
+ Relationships: [
355
+ {
356
+ foreignKeyName: "collectionRelations_beatmapPage_fkey"
357
+ columns: ["beatmapPage"]
358
+ isOneToOne: false
359
+ referencedRelation: "beatmapPages"
360
+ referencedColumns: ["id"]
361
+ },
362
+ {
363
+ foreignKeyName: "collectionRelations_collection_fkey"
364
+ columns: ["collection"]
365
+ isOneToOne: false
366
+ referencedRelation: "beatmapCollections"
367
+ referencedColumns: ["id"]
368
+ },
369
+ ]
370
+ }
371
+ discordWebhooks: {
372
+ Row: {
373
+ id: number
374
+ type: Database["public"]["Enums"]["discordWebhookType"] | null
375
+ webhook_link: string
376
+ }
377
+ Insert: {
378
+ id?: number
379
+ type?: Database["public"]["Enums"]["discordWebhookType"] | null
380
+ webhook_link?: string
381
+ }
382
+ Update: {
383
+ id?: number
384
+ type?: Database["public"]["Enums"]["discordWebhookType"] | null
385
+ webhook_link?: string
386
+ }
387
+ Relationships: []
388
+ }
389
+ inventories: {
390
+ Row: {
391
+ contents: Json
392
+ id: number
393
+ }
394
+ Insert: {
395
+ contents?: Json
396
+ id?: number
397
+ }
398
+ Update: {
399
+ contents?: Json
400
+ id?: number
401
+ }
402
+ Relationships: [
403
+ {
404
+ foreignKeyName: "inventory_id_fkey"
405
+ columns: ["id"]
406
+ isOneToOne: true
407
+ referencedRelation: "profiles"
408
+ referencedColumns: ["id"]
409
+ },
410
+ ]
411
+ }
412
+ invites: {
413
+ Row: {
414
+ code: string
415
+ created_at: string
416
+ id: number
417
+ resourceId: string
418
+ type: string
419
+ used: boolean
420
+ }
421
+ Insert: {
422
+ code: string
423
+ created_at?: string
424
+ id?: number
425
+ resourceId: string
426
+ type: string
427
+ used?: boolean
428
+ }
429
+ Update: {
430
+ code?: string
431
+ created_at?: string
432
+ id?: number
433
+ resourceId?: string
434
+ type?: string
435
+ used?: boolean
436
+ }
437
+ Relationships: []
438
+ }
439
+ levers: {
440
+ Row: {
441
+ disable_scores: boolean
442
+ id: number
443
+ }
444
+ Insert: {
445
+ disable_scores?: boolean
446
+ id?: number
447
+ }
448
+ Update: {
449
+ disable_scores?: boolean
450
+ id?: number
451
+ }
452
+ Relationships: []
453
+ }
454
+ passkeys: {
455
+ Row: {
456
+ email: string
457
+ id: number
458
+ passkey: string
459
+ }
460
+ Insert: {
461
+ email: string
462
+ id: number
463
+ passkey: string
464
+ }
465
+ Update: {
466
+ email?: string
467
+ id?: number
468
+ passkey?: string
469
+ }
470
+ Relationships: [
471
+ {
472
+ foreignKeyName: "passkeys_id_fkey"
473
+ columns: ["id"]
474
+ isOneToOne: true
475
+ referencedRelation: "profiles"
476
+ referencedColumns: ["id"]
477
+ },
478
+ ]
479
+ }
480
+ profileActivities: {
481
+ Row: {
482
+ last_activity: number | null
483
+ uid: string
484
+ }
485
+ Insert: {
486
+ last_activity?: number | null
487
+ uid: string
488
+ }
489
+ Update: {
490
+ last_activity?: number | null
491
+ uid?: string
492
+ }
493
+ Relationships: []
494
+ }
495
+ profiles: {
496
+ Row: {
497
+ about_me: string | null
498
+ avatar_url: string | null
499
+ badges: Json | null
500
+ ban: Database["public"]["Enums"]["banTypes"] | null
501
+ bannedAt: number | null
502
+ clan: number | null
503
+ computedUsername: string | null
504
+ created_at: number | null
505
+ flag: string | null
506
+ id: number
507
+ mu_rank: number
508
+ play_count: number | null
509
+ profile_image: string | null
510
+ sigma_rank: number | null
511
+ skill_points: number | null
512
+ spin_skill_points: number
513
+ squares_hit: number | null
514
+ total_score: number | null
515
+ uid: string | null
516
+ username: string | null
517
+ verificationDeadline: number
518
+ verified: boolean | null
519
+ }
520
+ Insert: {
521
+ about_me?: string | null
522
+ avatar_url?: string | null
523
+ badges?: Json | null
524
+ ban?: Database["public"]["Enums"]["banTypes"] | null
525
+ bannedAt?: number | null
526
+ clan?: number | null
527
+ computedUsername?: string | null
528
+ created_at?: number | null
529
+ flag?: string | null
530
+ id?: number
531
+ mu_rank?: number
532
+ play_count?: number | null
533
+ profile_image?: string | null
534
+ sigma_rank?: number | null
535
+ skill_points?: number | null
536
+ spin_skill_points?: number
537
+ squares_hit?: number | null
538
+ total_score?: number | null
539
+ uid?: string | null
540
+ username?: string | null
541
+ verificationDeadline?: number
542
+ verified?: boolean | null
543
+ }
544
+ Update: {
545
+ about_me?: string | null
546
+ avatar_url?: string | null
547
+ badges?: Json | null
548
+ ban?: Database["public"]["Enums"]["banTypes"] | null
549
+ bannedAt?: number | null
550
+ clan?: number | null
551
+ computedUsername?: string | null
552
+ created_at?: number | null
553
+ flag?: string | null
554
+ id?: number
555
+ mu_rank?: number
556
+ play_count?: number | null
557
+ profile_image?: string | null
558
+ sigma_rank?: number | null
559
+ skill_points?: number | null
560
+ spin_skill_points?: number
561
+ squares_hit?: number | null
562
+ total_score?: number | null
563
+ uid?: string | null
564
+ username?: string | null
565
+ verificationDeadline?: number
566
+ verified?: boolean | null
567
+ }
568
+ Relationships: [
569
+ {
570
+ foreignKeyName: "profiles_clan_fkey"
571
+ columns: ["clan"]
572
+ isOneToOne: false
573
+ referencedRelation: "clans"
574
+ referencedColumns: ["id"]
575
+ },
576
+ ]
577
+ }
578
+ scores: {
579
+ Row: {
580
+ additional_data: Json
581
+ awarded_sp: number | null
582
+ beatmapHash: string | null
583
+ created_at: string
584
+ id: number
585
+ misses: number | null
586
+ mods: Json
587
+ passed: boolean | null
588
+ replay_url: string | null
589
+ replayHwid: string | null
590
+ songId: string | null
591
+ speed: number | null
592
+ spin: boolean
593
+ token: number | null
594
+ userId: number | null
595
+ }
596
+ Insert: {
597
+ additional_data?: Json
598
+ awarded_sp?: number | null
599
+ beatmapHash?: string | null
600
+ created_at?: string
601
+ id?: number
602
+ misses?: number | null
603
+ mods?: Json
604
+ passed?: boolean | null
605
+ replay_url?: string | null
606
+ replayHwid?: string | null
607
+ songId?: string | null
608
+ speed?: number | null
609
+ spin?: boolean
610
+ token?: number | null
611
+ userId?: number | null
612
+ }
613
+ Update: {
614
+ additional_data?: Json
615
+ awarded_sp?: number | null
616
+ beatmapHash?: string | null
617
+ created_at?: string
618
+ id?: number
619
+ misses?: number | null
620
+ mods?: Json
621
+ passed?: boolean | null
622
+ replay_url?: string | null
623
+ replayHwid?: string | null
624
+ songId?: string | null
625
+ speed?: number | null
626
+ spin?: boolean
627
+ token?: number | null
628
+ userId?: number | null
629
+ }
630
+ Relationships: [
631
+ {
632
+ foreignKeyName: "scores_beatmapHash_fkey"
633
+ columns: ["beatmapHash"]
634
+ isOneToOne: false
635
+ referencedRelation: "beatmaps"
636
+ referencedColumns: ["beatmapHash"]
637
+ },
638
+ {
639
+ foreignKeyName: "scores_token_fkey"
640
+ columns: ["token"]
641
+ isOneToOne: false
642
+ referencedRelation: "tokens"
643
+ referencedColumns: ["id"]
644
+ },
645
+ {
646
+ foreignKeyName: "scores_userId_fkey"
647
+ columns: ["userId"]
648
+ isOneToOne: false
649
+ referencedRelation: "profiles"
650
+ referencedColumns: ["id"]
651
+ },
652
+ ]
653
+ }
654
+ tokens: {
655
+ Row: {
656
+ created_at: string
657
+ id: number
658
+ processed: Json | null
659
+ raw: string | null
660
+ }
661
+ Insert: {
662
+ created_at?: string
663
+ id?: number
664
+ processed?: Json | null
665
+ raw?: string | null
666
+ }
667
+ Update: {
668
+ created_at?: string
669
+ id?: number
670
+ processed?: Json | null
671
+ raw?: string | null
672
+ }
673
+ Relationships: []
674
+ }
675
+ }
676
+ Views: {
677
+ [_ in never]: never
678
+ }
679
+ Functions: {
680
+ admin_delete_user: { Args: { user_id: number }; Returns: boolean }
681
+ admin_exclude_user: { Args: { user_id: number }; Returns: boolean }
682
+ admin_invalidate_ranked_scores: {
683
+ Args: { user_id: number }
684
+ Returns: number
685
+ }
686
+ admin_log_action:
687
+ | {
688
+ Args: {
689
+ action_type: string
690
+ admin_id: number
691
+ details?: Json
692
+ target_id: number
693
+ }
694
+ Returns: undefined
695
+ }
696
+ | {
697
+ Args: {
698
+ action_type: string
699
+ admin_id: number
700
+ details?: Json
701
+ target_id: string
702
+ }
703
+ Returns: undefined
704
+ }
705
+ admin_profanity_clear: { Args: { user_id: number }; Returns: boolean }
706
+ admin_remove_all_scores: { Args: { user_id: number }; Returns: number }
707
+ admin_restrict_user: { Args: { user_id: number }; Returns: boolean }
708
+ admin_search_users: {
709
+ Args: { search_text: string }
710
+ Returns: {
711
+ about_me: string | null
712
+ avatar_url: string | null
713
+ badges: Json | null
714
+ ban: Database["public"]["Enums"]["banTypes"] | null
715
+ bannedAt: number | null
716
+ clan: number | null
717
+ computedUsername: string | null
718
+ created_at: number | null
719
+ flag: string | null
720
+ id: number
721
+ mu_rank: number
722
+ play_count: number | null
723
+ profile_image: string | null
724
+ sigma_rank: number | null
725
+ skill_points: number | null
726
+ spin_skill_points: number
727
+ squares_hit: number | null
728
+ total_score: number | null
729
+ uid: string | null
730
+ username: string | null
731
+ verificationDeadline: number
732
+ verified: boolean | null
733
+ }[]
734
+ SetofOptions: {
735
+ from: "*"
736
+ to: "profiles"
737
+ isOneToOne: false
738
+ isSetofReturn: true
739
+ }
740
+ }
741
+ admin_silence_user: { Args: { user_id: number }; Returns: boolean }
742
+ admin_unban_user: { Args: { user_id: number }; Returns: boolean }
743
+ get_badge_leaderboard: {
744
+ Args: { p_limit?: number }
745
+ Returns: {
746
+ avatar_url: string
747
+ display_name: string
748
+ id: number
749
+ special_badge_count: number
750
+ }[]
751
+ }
752
+ get_clan_leaderboard: {
753
+ Args: { items_per_page?: number; page_number?: number }
754
+ Returns: {
755
+ acronym: string
756
+ avatar_url: string
757
+ description: string
758
+ id: number
759
+ member_count: number
760
+ name: string
761
+ total_pages: number
762
+ total_skill_points: number
763
+ }[]
764
+ }
765
+ get_collections_v1: {
766
+ Args: { items_per_page?: number; page_number?: number }
767
+ Returns: {
768
+ beatmap_count: number
769
+ created_at: string
770
+ description: string
771
+ id: number
772
+ owner: number
773
+ star1: number
774
+ star10: number
775
+ star11: number
776
+ star12: number
777
+ star13: number
778
+ star14: number
779
+ star15: number
780
+ star16: number
781
+ star17: number
782
+ star18: number
783
+ star2: number
784
+ star3: number
785
+ star4: number
786
+ star5: number
787
+ star6: number
788
+ star7: number
789
+ star8: number
790
+ star9: number
791
+ title: string
792
+ total_pages: number
793
+ }[]
794
+ }
795
+ get_collections_v2:
796
+ | {
797
+ Args: { items_per_page?: number; page_number?: number }
798
+ Returns: {
799
+ beatmap_count: number
800
+ created_at: string
801
+ description: string
802
+ id: number
803
+ owner: number
804
+ owner_avatar_url: string
805
+ owner_username: string
806
+ star1: number
807
+ star10: number
808
+ star11: number
809
+ star12: number
810
+ star13: number
811
+ star14: number
812
+ star15: number
813
+ star16: number
814
+ star17: number
815
+ star18: number
816
+ star2: number
817
+ star3: number
818
+ star4: number
819
+ star5: number
820
+ star6: number
821
+ star7: number
822
+ star8: number
823
+ star9: number
824
+ title: string
825
+ total_pages: number
826
+ }[]
827
+ }
828
+ | {
829
+ Args: {
830
+ items_per_page?: number
831
+ owner_filter?: number
832
+ page_number?: number
833
+ }
834
+ Returns: {
835
+ beatmap_count: number
836
+ created_at: string
837
+ description: string
838
+ id: number
839
+ owner: number
840
+ owner_avatar_url: string
841
+ owner_username: string
842
+ star1: number
843
+ star10: number
844
+ star11: number
845
+ star12: number
846
+ star13: number
847
+ star14: number
848
+ star15: number
849
+ star16: number
850
+ star17: number
851
+ star18: number
852
+ star2: number
853
+ star3: number
854
+ star4: number
855
+ star5: number
856
+ star6: number
857
+ star7: number
858
+ star8: number
859
+ star9: number
860
+ title: string
861
+ total_pages: number
862
+ }[]
863
+ }
864
+ get_collections_v3: {
865
+ Args: {
866
+ items_per_page?: number
867
+ owner_filter?: number
868
+ page_number?: number
869
+ }
870
+ Returns: {
871
+ beatmap_count: number
872
+ created_at: string
873
+ description: string
874
+ id: number
875
+ owner: number
876
+ owner_avatar_url: string
877
+ owner_username: string
878
+ star1: number
879
+ star10: number
880
+ star11: number
881
+ star12: number
882
+ star13: number
883
+ star14: number
884
+ star15: number
885
+ star16: number
886
+ star17: number
887
+ star18: number
888
+ star2: number
889
+ star3: number
890
+ star4: number
891
+ star5: number
892
+ star6: number
893
+ star7: number
894
+ star8: number
895
+ star9: number
896
+ title: string
897
+ total_pages: number
898
+ }[]
899
+ }
900
+ get_collections_v4: {
901
+ Args: {
902
+ author_filter?: string
903
+ items_per_page?: number
904
+ min_beatmaps?: number
905
+ owner_filter?: number
906
+ page_number?: number
907
+ search_query?: string
908
+ }
909
+ Returns: {
910
+ beatmap_count: number
911
+ created_at: string
912
+ description: string
913
+ id: number
914
+ owner: number
915
+ owner_avatar_url: string
916
+ owner_username: string
917
+ star1: number
918
+ star10: number
919
+ star11: number
920
+ star12: number
921
+ star13: number
922
+ star14: number
923
+ star15: number
924
+ star16: number
925
+ star17: number
926
+ star18: number
927
+ star2: number
928
+ star3: number
929
+ star4: number
930
+ star5: number
931
+ star6: number
932
+ star7: number
933
+ star8: number
934
+ star9: number
935
+ title: string
936
+ total_pages: number
937
+ }[]
938
+ }
939
+ get_top_scores_for_beatmap: {
940
+ Args: { beatmap_hash: string }
941
+ Returns: {
942
+ accuracy: number
943
+ avatar_url: string
944
+ awarded_sp: number
945
+ created_at: string
946
+ id: number
947
+ misses: number
948
+ mods: Json
949
+ passed: boolean
950
+ replayhwid: string
951
+ songid: string
952
+ speed: number
953
+ spin: boolean
954
+ userid: number
955
+ username: string
956
+ }[]
957
+ }
958
+ get_top_scores_for_beatmap2: {
959
+ Args: { beatmap_hash: string }
960
+ Returns: {
961
+ accuracy: number
962
+ avatar_url: string
963
+ awarded_sp: number
964
+ created_at: string
965
+ id: number
966
+ misses: number
967
+ mods: Json
968
+ passed: boolean
969
+ replayhwid: string
970
+ songid: string
971
+ speed: number
972
+ spin: boolean
973
+ userid: number
974
+ username: string
975
+ }[]
976
+ }
977
+ get_user_activity: {
978
+ Args: { score_limit?: number; user_id: number }
979
+ Returns: Json
980
+ }
981
+ get_user_by_email: { Args: { email_address: string }; Returns: Json }
982
+ get_user_reigning_scores:
983
+ | {
984
+ Args: { userid: number }
985
+ Returns: {
986
+ awarded_sp: number
987
+ beatmaphash: string
988
+ created_at: string
989
+ id: number
990
+ misses: number
991
+ mods: Json
992
+ passed: boolean
993
+ replayhwid: string
994
+ songid: string
995
+ speed: number
996
+ spin: boolean
997
+ }[]
998
+ }
999
+ | {
1000
+ Args: { page_size: number; userid: number }
1001
+ Returns: {
1002
+ awarded_sp: number
1003
+ beatmaphash: string
1004
+ beatmaptitle: string
1005
+ created_at: string
1006
+ difficulty: number
1007
+ id: number
1008
+ misses: number
1009
+ mods: Json
1010
+ notes: number
1011
+ passed: boolean
1012
+ replayhwid: string
1013
+ songid: string
1014
+ speed: number
1015
+ spin: boolean
1016
+ }[]
1017
+ }
1018
+ get_user_scores_lastday: {
1019
+ Args: { limit_param: number; userid: number }
1020
+ Returns: Json
1021
+ }
1022
+ get_user_scores_payload: {
1023
+ Args: { limit_param: number; userid: number }
1024
+ Returns: Json
1025
+ }
1026
+ get_user_scores_reign: { Args: { userid: number }; Returns: Json }
1027
+ get_user_scores_summary: {
1028
+ Args: { limit_param?: number; userid: number }
1029
+ Returns: Json
1030
+ }
1031
+ get_user_scores_top_and_stats: {
1032
+ Args: { limit_param: number; userid: number }
1033
+ Returns: Json
1034
+ }
1035
+ grant_special_badges: {
1036
+ Args: {
1037
+ p_beatmap_id: number
1038
+ p_passed?: boolean
1039
+ p_spin?: boolean
1040
+ p_user_id: number
1041
+ }
1042
+ Returns: Json
1043
+ }
1044
+ }
1045
+ Enums: {
1046
+ banTypes: "cool" | "silenced" | "restricted" | "excluded"
1047
+ discordWebhookType: "maps" | "scores"
1048
+ }
1049
+ CompositeTypes: {
1050
+ [_ in never]: never
1051
+ }
1052
+ }
1053
+ }
1054
+
1055
+ type DatabaseWithoutInternals = Omit<Database, "__InternalSupabase">
1056
+
1057
+ type DefaultSchema = DatabaseWithoutInternals[Extract<keyof Database, "public">]
1058
+
1059
+ export type Tables<
1060
+ DefaultSchemaTableNameOrOptions extends
1061
+ | keyof (DefaultSchema["Tables"] & DefaultSchema["Views"])
1062
+ | { schema: keyof DatabaseWithoutInternals },
1063
+ TableName extends DefaultSchemaTableNameOrOptions extends {
1064
+ schema: keyof DatabaseWithoutInternals
1065
+ }
1066
+ ? keyof (DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] &
1067
+ DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Views"])
1068
+ : never = never,
1069
+ > = DefaultSchemaTableNameOrOptions extends {
1070
+ schema: keyof DatabaseWithoutInternals
1071
+ }
1072
+ ? (DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] &
1073
+ DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Views"])[TableName] extends {
1074
+ Row: infer R
1075
+ }
1076
+ ? R
1077
+ : never
1078
+ : DefaultSchemaTableNameOrOptions extends keyof (DefaultSchema["Tables"] &
1079
+ DefaultSchema["Views"])
1080
+ ? (DefaultSchema["Tables"] &
1081
+ DefaultSchema["Views"])[DefaultSchemaTableNameOrOptions] extends {
1082
+ Row: infer R
1083
+ }
1084
+ ? R
1085
+ : never
1086
+ : never
1087
+
1088
+ export type TablesInsert<
1089
+ DefaultSchemaTableNameOrOptions extends
1090
+ | keyof DefaultSchema["Tables"]
1091
+ | { schema: keyof DatabaseWithoutInternals },
1092
+ TableName extends DefaultSchemaTableNameOrOptions extends {
1093
+ schema: keyof DatabaseWithoutInternals
1094
+ }
1095
+ ? keyof DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"]
1096
+ : never = never,
1097
+ > = DefaultSchemaTableNameOrOptions extends {
1098
+ schema: keyof DatabaseWithoutInternals
1099
+ }
1100
+ ? DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"][TableName] extends {
1101
+ Insert: infer I
1102
+ }
1103
+ ? I
1104
+ : never
1105
+ : DefaultSchemaTableNameOrOptions extends keyof DefaultSchema["Tables"]
1106
+ ? DefaultSchema["Tables"][DefaultSchemaTableNameOrOptions] extends {
1107
+ Insert: infer I
1108
+ }
1109
+ ? I
1110
+ : never
1111
+ : never
1112
+
1113
+ export type TablesUpdate<
1114
+ DefaultSchemaTableNameOrOptions extends
1115
+ | keyof DefaultSchema["Tables"]
1116
+ | { schema: keyof DatabaseWithoutInternals },
1117
+ TableName extends DefaultSchemaTableNameOrOptions extends {
1118
+ schema: keyof DatabaseWithoutInternals
1119
+ }
1120
+ ? keyof DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"]
1121
+ : never = never,
1122
+ > = DefaultSchemaTableNameOrOptions extends {
1123
+ schema: keyof DatabaseWithoutInternals
1124
+ }
1125
+ ? DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"][TableName] extends {
1126
+ Update: infer U
1127
+ }
1128
+ ? U
1129
+ : never
1130
+ : DefaultSchemaTableNameOrOptions extends keyof DefaultSchema["Tables"]
1131
+ ? DefaultSchema["Tables"][DefaultSchemaTableNameOrOptions] extends {
1132
+ Update: infer U
1133
+ }
1134
+ ? U
1135
+ : never
1136
+ : never
1137
+
1138
+ export type Enums<
1139
+ DefaultSchemaEnumNameOrOptions extends
1140
+ | keyof DefaultSchema["Enums"]
1141
+ | { schema: keyof DatabaseWithoutInternals },
1142
+ EnumName extends DefaultSchemaEnumNameOrOptions extends {
1143
+ schema: keyof DatabaseWithoutInternals
1144
+ }
1145
+ ? keyof DatabaseWithoutInternals[DefaultSchemaEnumNameOrOptions["schema"]]["Enums"]
1146
+ : never = never,
1147
+ > = DefaultSchemaEnumNameOrOptions extends {
1148
+ schema: keyof DatabaseWithoutInternals
1149
+ }
1150
+ ? DatabaseWithoutInternals[DefaultSchemaEnumNameOrOptions["schema"]]["Enums"][EnumName]
1151
+ : DefaultSchemaEnumNameOrOptions extends keyof DefaultSchema["Enums"]
1152
+ ? DefaultSchema["Enums"][DefaultSchemaEnumNameOrOptions]
1153
+ : never
1154
+
1155
+ export type CompositeTypes<
1156
+ PublicCompositeTypeNameOrOptions extends
1157
+ | keyof DefaultSchema["CompositeTypes"]
1158
+ | { schema: keyof DatabaseWithoutInternals },
1159
+ CompositeTypeName extends PublicCompositeTypeNameOrOptions extends {
1160
+ schema: keyof DatabaseWithoutInternals
1161
+ }
1162
+ ? keyof DatabaseWithoutInternals[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"]
1163
+ : never = never,
1164
+ > = PublicCompositeTypeNameOrOptions extends {
1165
+ schema: keyof DatabaseWithoutInternals
1166
+ }
1167
+ ? DatabaseWithoutInternals[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"][CompositeTypeName]
1168
+ : PublicCompositeTypeNameOrOptions extends keyof DefaultSchema["CompositeTypes"]
1169
+ ? DefaultSchema["CompositeTypes"][PublicCompositeTypeNameOrOptions]
1170
+ : never
1171
+
1172
+ export const Constants = {
1173
+ public: {
1174
+ Enums: {
1175
+ banTypes: ["cool", "silenced", "restricted", "excluded"],
1176
+ discordWebhookType: ["maps", "scores"],
1177
+ },
1178
+ },
1179
+ } as const