@@ -363,6 +363,86 @@ test('typegen', async () => {
363
363
}
364
364
}
365
365
}
366
+
367
+ export type Tables<
368
+ PublicTableNameOrOptions extends
369
+ | keyof (Database["public"]["Tables"] & Database["public"]["Views"])
370
+ | { schema: keyof Database },
371
+ TableName extends PublicTableNameOrOptions extends { schema: keyof Database }
372
+ ? keyof (Database[PublicTableNameOrOptions["schema"]]["Tables"] &
373
+ Database[PublicTableNameOrOptions["schema"]]["Views"])
374
+ : never = never
375
+ > = PublicTableNameOrOptions extends { schema: keyof Database }
376
+ ? (Database[PublicTableNameOrOptions["schema"]]["Tables"] &
377
+ Database[PublicTableNameOrOptions["schema"]]["Views"])[TableName] extends {
378
+ Row: infer R
379
+ }
380
+ ? R
381
+ : never
382
+ : PublicTableNameOrOptions extends keyof (Database["public"]["Tables"] &
383
+ Database["public"]["Views"])
384
+ ? (Database["public"]["Tables"] &
385
+ Database["public"]["Views"])[PublicTableNameOrOptions] extends {
386
+ Row: infer R
387
+ }
388
+ ? R
389
+ : never
390
+ : never
391
+
392
+ export type TablesInsert<
393
+ PublicTableNameOrOptions extends
394
+ | keyof Database["public"]["Tables"]
395
+ | { schema: keyof Database },
396
+ TableName extends PublicTableNameOrOptions extends { schema: keyof Database }
397
+ ? keyof Database[PublicTableNameOrOptions["schema"]]["Tables"]
398
+ : never = never
399
+ > = PublicTableNameOrOptions extends { schema: keyof Database }
400
+ ? Database[PublicTableNameOrOptions["schema"]]["Tables"][TableName] extends {
401
+ Insert: infer I
402
+ }
403
+ ? I
404
+ : never
405
+ : PublicTableNameOrOptions extends keyof Database["public"]["Tables"]
406
+ ? Database["public"]["Tables"][PublicTableNameOrOptions] extends {
407
+ Insert: infer I
408
+ }
409
+ ? I
410
+ : never
411
+ : never
412
+
413
+ export type TablesUpdate<
414
+ PublicTableNameOrOptions extends
415
+ | keyof Database["public"]["Tables"]
416
+ | { schema: keyof Database },
417
+ TableName extends PublicTableNameOrOptions extends { schema: keyof Database }
418
+ ? keyof Database[PublicTableNameOrOptions["schema"]]["Tables"]
419
+ : never = never
420
+ > = PublicTableNameOrOptions extends { schema: keyof Database }
421
+ ? Database[PublicTableNameOrOptions["schema"]]["Tables"][TableName] extends {
422
+ Update: infer U
423
+ }
424
+ ? U
425
+ : never
426
+ : PublicTableNameOrOptions extends keyof Database["public"]["Tables"]
427
+ ? Database["public"]["Tables"][PublicTableNameOrOptions] extends {
428
+ Update: infer U
429
+ }
430
+ ? U
431
+ : never
432
+ : never
433
+
434
+ export type Enums<
435
+ PublicEnumNameOrOptions extends
436
+ | keyof Database["public"]["Enums"]
437
+ | { schema: keyof Database },
438
+ EnumName extends PublicEnumNameOrOptions extends { schema: keyof Database }
439
+ ? keyof Database[PublicEnumNameOrOptions["schema"]]["Enums"]
440
+ : never = never
441
+ > = PublicEnumNameOrOptions extends { schema: keyof Database }
442
+ ? Database[PublicEnumNameOrOptions["schema"]]["Enums"][EnumName]
443
+ : PublicEnumNameOrOptions extends keyof Database["public"]["Enums"]
444
+ ? Database["public"]["Enums"][PublicEnumNameOrOptions]
445
+ : never
366
446
"
367
447
` )
368
448
} )
@@ -747,6 +827,86 @@ test('typegen w/ one-to-one relationships', async () => {
747
827
}
748
828
}
749
829
}
830
+
831
+ export type Tables<
832
+ PublicTableNameOrOptions extends
833
+ | keyof (Database["public"]["Tables"] & Database["public"]["Views"])
834
+ | { schema: keyof Database },
835
+ TableName extends PublicTableNameOrOptions extends { schema: keyof Database }
836
+ ? keyof (Database[PublicTableNameOrOptions["schema"]]["Tables"] &
837
+ Database[PublicTableNameOrOptions["schema"]]["Views"])
838
+ : never = never
839
+ > = PublicTableNameOrOptions extends { schema: keyof Database }
840
+ ? (Database[PublicTableNameOrOptions["schema"]]["Tables"] &
841
+ Database[PublicTableNameOrOptions["schema"]]["Views"])[TableName] extends {
842
+ Row: infer R
843
+ }
844
+ ? R
845
+ : never
846
+ : PublicTableNameOrOptions extends keyof (Database["public"]["Tables"] &
847
+ Database["public"]["Views"])
848
+ ? (Database["public"]["Tables"] &
849
+ Database["public"]["Views"])[PublicTableNameOrOptions] extends {
850
+ Row: infer R
851
+ }
852
+ ? R
853
+ : never
854
+ : never
855
+
856
+ export type TablesInsert<
857
+ PublicTableNameOrOptions extends
858
+ | keyof Database["public"]["Tables"]
859
+ | { schema: keyof Database },
860
+ TableName extends PublicTableNameOrOptions extends { schema: keyof Database }
861
+ ? keyof Database[PublicTableNameOrOptions["schema"]]["Tables"]
862
+ : never = never
863
+ > = PublicTableNameOrOptions extends { schema: keyof Database }
864
+ ? Database[PublicTableNameOrOptions["schema"]]["Tables"][TableName] extends {
865
+ Insert: infer I
866
+ }
867
+ ? I
868
+ : never
869
+ : PublicTableNameOrOptions extends keyof Database["public"]["Tables"]
870
+ ? Database["public"]["Tables"][PublicTableNameOrOptions] extends {
871
+ Insert: infer I
872
+ }
873
+ ? I
874
+ : never
875
+ : never
876
+
877
+ export type TablesUpdate<
878
+ PublicTableNameOrOptions extends
879
+ | keyof Database["public"]["Tables"]
880
+ | { schema: keyof Database },
881
+ TableName extends PublicTableNameOrOptions extends { schema: keyof Database }
882
+ ? keyof Database[PublicTableNameOrOptions["schema"]]["Tables"]
883
+ : never = never
884
+ > = PublicTableNameOrOptions extends { schema: keyof Database }
885
+ ? Database[PublicTableNameOrOptions["schema"]]["Tables"][TableName] extends {
886
+ Update: infer U
887
+ }
888
+ ? U
889
+ : never
890
+ : PublicTableNameOrOptions extends keyof Database["public"]["Tables"]
891
+ ? Database["public"]["Tables"][PublicTableNameOrOptions] extends {
892
+ Update: infer U
893
+ }
894
+ ? U
895
+ : never
896
+ : never
897
+
898
+ export type Enums<
899
+ PublicEnumNameOrOptions extends
900
+ | keyof Database["public"]["Enums"]
901
+ | { schema: keyof Database },
902
+ EnumName extends PublicEnumNameOrOptions extends { schema: keyof Database }
903
+ ? keyof Database[PublicEnumNameOrOptions["schema"]]["Enums"]
904
+ : never = never
905
+ > = PublicEnumNameOrOptions extends { schema: keyof Database }
906
+ ? Database[PublicEnumNameOrOptions["schema"]]["Enums"][EnumName]
907
+ : PublicEnumNameOrOptions extends keyof Database["public"]["Enums"]
908
+ ? Database["public"]["Enums"][PublicEnumNameOrOptions]
909
+ : never
750
910
"
751
911
` )
752
912
} )
0 commit comments