@earbug/db-models 0.0.62 → 0.0.63

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/.dockerignore +10 -0
  2. package/.github/workflows/publish.yaml +303 -0
  3. package/.nvmrc +1 -0
  4. package/Dockerfile.generate +19 -0
  5. package/model_options.json +3 -0
  6. package/models/AccessControlPreference.ts +53 -0
  7. package/models/AffinityRelationshipType.ts +96 -0
  8. package/models/AffinityTier.ts +131 -0
  9. package/models/AppUser.ts +577 -0
  10. package/models/AppUserDevice.ts +101 -0
  11. package/models/AppUserDeviceClassicBackup20260906.ts +66 -0
  12. package/models/AppUserFollowRelation.ts +128 -0
  13. package/models/AppUserPlatformRelation.ts +150 -0
  14. package/models/CanonAlbum.ts +229 -0
  15. package/models/CanonAlbumExternalReferenceRelation.ts +92 -0
  16. package/models/CanonAlbumGenreRelation.ts +86 -0
  17. package/models/CanonAlbumLabelRelation.ts +86 -0
  18. package/models/CanonAlbumTrackRelation.ts +92 -0
  19. package/models/CanonArtist.ts +356 -0
  20. package/models/CanonArtistAlbumRelation.ts +92 -0
  21. package/models/CanonArtistExternalReferenceRelation.ts +92 -0
  22. package/models/CanonArtistGenreRelation.ts +86 -0
  23. package/models/CanonArtistMemberRelation.ts +86 -0
  24. package/models/CanonArtistTrackRelation.ts +92 -0
  25. package/models/CanonGenre.ts +273 -0
  26. package/models/CanonGenreExternalReferenceRelation.ts +92 -0
  27. package/models/CanonLabel.ts +129 -0
  28. package/models/CanonLabelExternalReferenceRelation.ts +92 -0
  29. package/models/CanonMember.ts +130 -0
  30. package/models/CanonMemberExternalReferenceRelation.ts +99 -0
  31. package/models/CanonToPlatformAlbumRelation.ts +92 -0
  32. package/models/CanonToPlatformArtistRelation.ts +92 -0
  33. package/models/CanonToPlatformGenreRelation.ts +86 -0
  34. package/models/CanonToPlatformTrackRelation.ts +92 -0
  35. package/models/CanonTrack.ts +232 -0
  36. package/models/ConfigParam.ts +62 -0
  37. package/models/ExternalReference.ts +201 -0
  38. package/models/FeedConfig.ts +65 -0
  39. package/models/FeedContentType.ts +124 -0
  40. package/models/GuestUser.ts +137 -0
  41. package/models/JukeboxAccessType.ts +60 -0
  42. package/models/JukeboxCanonGenreRelation.ts +108 -0
  43. package/models/JukeboxInvite.ts +125 -0
  44. package/models/JukeboxQueueEntry.ts +247 -0
  45. package/models/JukeboxQueueMode.ts +60 -0
  46. package/models/JukeboxSession.ts +334 -0
  47. package/models/JukeboxSessionArtistAffinity.ts +136 -0
  48. package/models/JukeboxSessionGenreAffinity.ts +136 -0
  49. package/models/JukeboxStatus.ts +58 -0
  50. package/models/JukeboxTerminationCondition.ts +60 -0
  51. package/models/JukeboxType.ts +60 -0
  52. package/models/JukeboxUser.ts +182 -0
  53. package/models/JukeboxUserType.ts +58 -0
  54. package/models/KnexMigrations.ts +60 -0
  55. package/models/KnexMigrationsLock.ts +48 -0
  56. package/models/MerchItem.ts +198 -0
  57. package/models/MerchOrchestration.ts +130 -0
  58. package/models/MerchPlatform.ts +95 -0
  59. package/models/MerchType.ts +89 -0
  60. package/models/MetricsDaily.ts +79 -0
  61. package/models/MetricsEvent.ts +124 -0
  62. package/models/NewsArticle.ts +177 -0
  63. package/models/NewsPlatform.ts +76 -0
  64. package/models/NewsSite.ts +75 -0
  65. package/models/Notification.ts +214 -0
  66. package/models/NotificationType.ts +66 -0
  67. package/models/PauseStatusType.ts +58 -0
  68. package/models/Platform.ts +189 -0
  69. package/models/PlatformAlbum.ts +398 -0
  70. package/models/PlatformAlbumGenreRelation.ts +86 -0
  71. package/models/PlatformAlbumTrackRelation.ts +92 -0
  72. package/models/PlatformArtist.ts +358 -0
  73. package/models/PlatformArtistAlbumRelation.ts +92 -0
  74. package/models/PlatformArtistGenreRelation.ts +86 -0
  75. package/models/PlatformArtistTrackRelation.ts +92 -0
  76. package/models/PlatformGenre.ts +194 -0
  77. package/models/PlatformTrack.ts +339 -0
  78. package/models/PlatformTrackGenreRelation.ts +86 -0
  79. package/models/PlatformUserAlbum.ts +152 -0
  80. package/models/PlatformUserAlbumTrack.ts +138 -0
  81. package/models/PlatformUserPlaylist.ts +260 -0
  82. package/models/PlatformUserPlaylistArtistAffinity.ts +136 -0
  83. package/models/PlatformUserPlaylistGenreAffinity.ts +136 -0
  84. package/models/PlatformUserPlaylistTrack.ts +162 -0
  85. package/models/PlaybackStatus.ts +47 -0
  86. package/models/PlaybackStatusType.ts +58 -0
  87. package/models/RadioShow.ts +209 -0
  88. package/models/RadioShowGenres.ts +107 -0
  89. package/models/RadioShowMedia.ts +181 -0
  90. package/models/RadioShowPlacement.ts +115 -0
  91. package/models/RadioShowPublishRequests.ts +86 -0
  92. package/models/State.ts +86 -0
  93. package/models/TrackDeletionReason.ts +58 -0
  94. package/models/UnmatchedAlbum.ts +66 -0
  95. package/models/UnmatchedArtist.ts +81 -0
  96. package/models/UserAbuseReports.ts +232 -0
  97. package/models/UserAffinity.ts +117 -0
  98. package/models/UserArtistAffinity.ts +136 -0
  99. package/models/UserBookmarks.ts +235 -0
  100. package/models/UserComments.ts +271 -0
  101. package/models/UserContacts.ts +155 -0
  102. package/models/UserEngagementFactor.ts +109 -0
  103. package/models/UserGenreAffinity.ts +136 -0
  104. package/models/UserLikes.ts +235 -0
  105. package/models/UserMessages.ts +189 -0
  106. package/models/Versus.ts +438 -0
  107. package/models/VersusAccessType.ts +66 -0
  108. package/models/VersusCoCreator.ts +111 -0
  109. package/models/VersusCreatorScope.ts +66 -0
  110. package/models/VersusEndMode.ts +66 -0
  111. package/models/VersusEndTimerDuration.ts +81 -0
  112. package/models/VersusEndVoteThreshold.ts +67 -0
  113. package/models/VersusEntityKind.ts +79 -0
  114. package/models/VersusOption.ts +258 -0
  115. package/models/VersusPublishIssue.ts +146 -0
  116. package/models/VersusQuestion.ts +123 -0
  117. package/models/VersusQuestionVariableType.ts +66 -0
  118. package/models/VersusVote.ts +99 -0
  119. package/models/VersusVotingListType.ts +66 -0
  120. package/models/VersusVotingMode.ts +66 -0
  121. package/models/index.ts +3 -0
  122. package/models/init-models.ts +1259 -0
  123. package/models/initDb.ts +72 -0
  124. package/models/rdsCaBundle.ts +5 -0
  125. package/package.json +2 -5
  126. package/scripts/generate-and-upload.mjs +123 -0
  127. package/scripts/update-rds-ca-bundle.mjs +44 -0
  128. package/tsconfig.json +52 -0
@@ -0,0 +1,577 @@
1
+ import * as Sequelize from 'sequelize';
2
+ import { DataTypes, Model, Optional } from 'sequelize';
3
+ import type { AppUserDevice, AppUserDeviceId } from './AppUserDevice';
4
+ import type { AppUserFollowRelation, AppUserFollowRelationId } from './AppUserFollowRelation';
5
+ import type { AppUserPlatformRelation, AppUserPlatformRelationCreationAttributes, AppUserPlatformRelationId } from './AppUserPlatformRelation';
6
+ import type { JukeboxInvite, JukeboxInviteId } from './JukeboxInvite';
7
+ import type { JukeboxQueueEntry, JukeboxQueueEntryId } from './JukeboxQueueEntry';
8
+ import type { JukeboxUser, JukeboxUserId } from './JukeboxUser';
9
+ import type { Notification, NotificationId } from './Notification';
10
+ import type { PlatformUserAlbum, PlatformUserAlbumId } from './PlatformUserAlbum';
11
+ import type { PlatformUserPlaylist, PlatformUserPlaylistId } from './PlatformUserPlaylist';
12
+ import type { RadioShow, RadioShowId } from './RadioShow';
13
+ import type { State, StateId } from './State';
14
+ import type { UserAbuseReports, UserAbuseReportsId } from './UserAbuseReports';
15
+ import type { UserAffinity, UserAffinityId } from './UserAffinity';
16
+ import type { UserArtistAffinity, UserArtistAffinityId } from './UserArtistAffinity';
17
+ import type { UserBookmarks, UserBookmarksId } from './UserBookmarks';
18
+ import type { UserComments, UserCommentsId } from './UserComments';
19
+ import type { UserContacts, UserContactsId } from './UserContacts';
20
+ import type { UserEngagementFactor, UserEngagementFactorId } from './UserEngagementFactor';
21
+ import type { UserGenreAffinity, UserGenreAffinityId } from './UserGenreAffinity';
22
+ import type { UserLikes, UserLikesId } from './UserLikes';
23
+ import type { UserMessages, UserMessagesId } from './UserMessages';
24
+ import type { Versus, VersusId } from './Versus';
25
+ import type { VersusCoCreator, VersusCoCreatorId } from './VersusCoCreator';
26
+ import type { VersusOption, VersusOptionId } from './VersusOption';
27
+ import type { VersusVote, VersusVoteId } from './VersusVote';
28
+
29
+ export interface AppUserAttributes {
30
+ id: string;
31
+ email?: string;
32
+ firstName: string;
33
+ createDate: Date;
34
+ updateDate: Date;
35
+ syncContacts?: boolean;
36
+ stateId: number;
37
+ lastName?: string;
38
+ autoApproveFollowers: boolean;
39
+ lastHarvested?: Date;
40
+ lastHarvestedError?: string;
41
+ earbugAccessControlPreference: string;
42
+ unsubscribeAll?: Date;
43
+ unsubscribeBiweeklyEmail?: Date;
44
+ unsubscribeFollowingNotifications?: Date;
45
+ unsubscribeInterestNotifications?: Date;
46
+ unsubscribeFunNotifications?: Date;
47
+ hardBounce?: Date;
48
+ softBounce1?: Date;
49
+ softBounce2?: Date;
50
+ softBounce3?: Date;
51
+ isGuest: boolean;
52
+ bio?: string;
53
+ }
54
+
55
+ export type AppUserPk = "id";
56
+ export type AppUserId = AppUser[AppUserPk];
57
+ export type AppUserOptionalAttributes = "id" | "email" | "createDate" | "updateDate" | "syncContacts" | "stateId" | "lastName" | "autoApproveFollowers" | "lastHarvested" | "lastHarvestedError" | "earbugAccessControlPreference" | "unsubscribeAll" | "unsubscribeBiweeklyEmail" | "unsubscribeFollowingNotifications" | "unsubscribeInterestNotifications" | "unsubscribeFunNotifications" | "hardBounce" | "softBounce1" | "softBounce2" | "softBounce3" | "bio";
58
+ export type AppUserCreationAttributes = Optional<AppUserAttributes, AppUserOptionalAttributes>;
59
+
60
+ export class AppUser extends Model<AppUserAttributes, AppUserCreationAttributes> implements AppUserAttributes {
61
+ id!: string;
62
+ email?: string;
63
+ firstName!: string;
64
+ createDate!: Date;
65
+ updateDate!: Date;
66
+ syncContacts?: boolean;
67
+ stateId!: number;
68
+ lastName?: string;
69
+ autoApproveFollowers!: boolean;
70
+ lastHarvested?: Date;
71
+ lastHarvestedError?: string;
72
+ earbugAccessControlPreference!: string;
73
+ unsubscribeAll?: Date;
74
+ unsubscribeBiweeklyEmail?: Date;
75
+ unsubscribeFollowingNotifications?: Date;
76
+ unsubscribeInterestNotifications?: Date;
77
+ unsubscribeFunNotifications?: Date;
78
+ hardBounce?: Date;
79
+ softBounce1?: Date;
80
+ softBounce2?: Date;
81
+ softBounce3?: Date;
82
+ isGuest!: boolean;
83
+ bio?: string;
84
+
85
+ // AppUser hasMany AppUserDevice via appUserId
86
+ appUserDevices!: AppUserDevice[];
87
+ getAppUserDevices!: Sequelize.HasManyGetAssociationsMixin<AppUserDevice>;
88
+ setAppUserDevices!: Sequelize.HasManySetAssociationsMixin<AppUserDevice, AppUserDeviceId>;
89
+ addAppUserDevice!: Sequelize.HasManyAddAssociationMixin<AppUserDevice, AppUserDeviceId>;
90
+ addAppUserDevices!: Sequelize.HasManyAddAssociationsMixin<AppUserDevice, AppUserDeviceId>;
91
+ createAppUserDevice!: Sequelize.HasManyCreateAssociationMixin<AppUserDevice>;
92
+ removeAppUserDevice!: Sequelize.HasManyRemoveAssociationMixin<AppUserDevice, AppUserDeviceId>;
93
+ removeAppUserDevices!: Sequelize.HasManyRemoveAssociationsMixin<AppUserDevice, AppUserDeviceId>;
94
+ hasAppUserDevice!: Sequelize.HasManyHasAssociationMixin<AppUserDevice, AppUserDeviceId>;
95
+ hasAppUserDevices!: Sequelize.HasManyHasAssociationsMixin<AppUserDevice, AppUserDeviceId>;
96
+ countAppUserDevices!: Sequelize.HasManyCountAssociationsMixin;
97
+ // AppUser hasMany AppUserFollowRelation via appUserId
98
+ appUserFollowRelations!: AppUserFollowRelation[];
99
+ getAppUserFollowRelations!: Sequelize.HasManyGetAssociationsMixin<AppUserFollowRelation>;
100
+ setAppUserFollowRelations!: Sequelize.HasManySetAssociationsMixin<AppUserFollowRelation, AppUserFollowRelationId>;
101
+ addAppUserFollowRelation!: Sequelize.HasManyAddAssociationMixin<AppUserFollowRelation, AppUserFollowRelationId>;
102
+ addAppUserFollowRelations!: Sequelize.HasManyAddAssociationsMixin<AppUserFollowRelation, AppUserFollowRelationId>;
103
+ createAppUserFollowRelation!: Sequelize.HasManyCreateAssociationMixin<AppUserFollowRelation>;
104
+ removeAppUserFollowRelation!: Sequelize.HasManyRemoveAssociationMixin<AppUserFollowRelation, AppUserFollowRelationId>;
105
+ removeAppUserFollowRelations!: Sequelize.HasManyRemoveAssociationsMixin<AppUserFollowRelation, AppUserFollowRelationId>;
106
+ hasAppUserFollowRelation!: Sequelize.HasManyHasAssociationMixin<AppUserFollowRelation, AppUserFollowRelationId>;
107
+ hasAppUserFollowRelations!: Sequelize.HasManyHasAssociationsMixin<AppUserFollowRelation, AppUserFollowRelationId>;
108
+ countAppUserFollowRelations!: Sequelize.HasManyCountAssociationsMixin;
109
+ // AppUser hasMany AppUserFollowRelation via followingAppUserId
110
+ followingAppUserAppUserFollowRelations!: AppUserFollowRelation[];
111
+ getFollowingAppUserAppUserFollowRelations!: Sequelize.HasManyGetAssociationsMixin<AppUserFollowRelation>;
112
+ setFollowingAppUserAppUserFollowRelations!: Sequelize.HasManySetAssociationsMixin<AppUserFollowRelation, AppUserFollowRelationId>;
113
+ addFollowingAppUserAppUserFollowRelation!: Sequelize.HasManyAddAssociationMixin<AppUserFollowRelation, AppUserFollowRelationId>;
114
+ addFollowingAppUserAppUserFollowRelations!: Sequelize.HasManyAddAssociationsMixin<AppUserFollowRelation, AppUserFollowRelationId>;
115
+ createFollowingAppUserAppUserFollowRelation!: Sequelize.HasManyCreateAssociationMixin<AppUserFollowRelation>;
116
+ removeFollowingAppUserAppUserFollowRelation!: Sequelize.HasManyRemoveAssociationMixin<AppUserFollowRelation, AppUserFollowRelationId>;
117
+ removeFollowingAppUserAppUserFollowRelations!: Sequelize.HasManyRemoveAssociationsMixin<AppUserFollowRelation, AppUserFollowRelationId>;
118
+ hasFollowingAppUserAppUserFollowRelation!: Sequelize.HasManyHasAssociationMixin<AppUserFollowRelation, AppUserFollowRelationId>;
119
+ hasFollowingAppUserAppUserFollowRelations!: Sequelize.HasManyHasAssociationsMixin<AppUserFollowRelation, AppUserFollowRelationId>;
120
+ countFollowingAppUserAppUserFollowRelations!: Sequelize.HasManyCountAssociationsMixin;
121
+ // AppUser hasOne AppUserPlatformRelation via appUserId
122
+ appUserPlatformRelation!: AppUserPlatformRelation;
123
+ getAppUserPlatformRelation!: Sequelize.HasOneGetAssociationMixin<AppUserPlatformRelation>;
124
+ setAppUserPlatformRelation!: Sequelize.HasOneSetAssociationMixin<AppUserPlatformRelation, AppUserPlatformRelationId>;
125
+ createAppUserPlatformRelation!: Sequelize.HasOneCreateAssociationMixin<AppUserPlatformRelation>;
126
+ // AppUser hasMany JukeboxInvite via invitedUserId
127
+ jukeboxInvites!: JukeboxInvite[];
128
+ getJukeboxInvites!: Sequelize.HasManyGetAssociationsMixin<JukeboxInvite>;
129
+ setJukeboxInvites!: Sequelize.HasManySetAssociationsMixin<JukeboxInvite, JukeboxInviteId>;
130
+ addJukeboxInvite!: Sequelize.HasManyAddAssociationMixin<JukeboxInvite, JukeboxInviteId>;
131
+ addJukeboxInvites!: Sequelize.HasManyAddAssociationsMixin<JukeboxInvite, JukeboxInviteId>;
132
+ createJukeboxInvite!: Sequelize.HasManyCreateAssociationMixin<JukeboxInvite>;
133
+ removeJukeboxInvite!: Sequelize.HasManyRemoveAssociationMixin<JukeboxInvite, JukeboxInviteId>;
134
+ removeJukeboxInvites!: Sequelize.HasManyRemoveAssociationsMixin<JukeboxInvite, JukeboxInviteId>;
135
+ hasJukeboxInvite!: Sequelize.HasManyHasAssociationMixin<JukeboxInvite, JukeboxInviteId>;
136
+ hasJukeboxInvites!: Sequelize.HasManyHasAssociationsMixin<JukeboxInvite, JukeboxInviteId>;
137
+ countJukeboxInvites!: Sequelize.HasManyCountAssociationsMixin;
138
+ // AppUser hasMany JukeboxInvite via inviterUserId
139
+ inviterUserJukeboxInvites!: JukeboxInvite[];
140
+ getInviterUserJukeboxInvites!: Sequelize.HasManyGetAssociationsMixin<JukeboxInvite>;
141
+ setInviterUserJukeboxInvites!: Sequelize.HasManySetAssociationsMixin<JukeboxInvite, JukeboxInviteId>;
142
+ addInviterUserJukeboxInvite!: Sequelize.HasManyAddAssociationMixin<JukeboxInvite, JukeboxInviteId>;
143
+ addInviterUserJukeboxInvites!: Sequelize.HasManyAddAssociationsMixin<JukeboxInvite, JukeboxInviteId>;
144
+ createInviterUserJukeboxInvite!: Sequelize.HasManyCreateAssociationMixin<JukeboxInvite>;
145
+ removeInviterUserJukeboxInvite!: Sequelize.HasManyRemoveAssociationMixin<JukeboxInvite, JukeboxInviteId>;
146
+ removeInviterUserJukeboxInvites!: Sequelize.HasManyRemoveAssociationsMixin<JukeboxInvite, JukeboxInviteId>;
147
+ hasInviterUserJukeboxInvite!: Sequelize.HasManyHasAssociationMixin<JukeboxInvite, JukeboxInviteId>;
148
+ hasInviterUserJukeboxInvites!: Sequelize.HasManyHasAssociationsMixin<JukeboxInvite, JukeboxInviteId>;
149
+ countInviterUserJukeboxInvites!: Sequelize.HasManyCountAssociationsMixin;
150
+ // AppUser hasMany JukeboxQueueEntry via trackAddedUserId
151
+ jukeboxQueueEntries!: JukeboxQueueEntry[];
152
+ getJukeboxQueueEntries!: Sequelize.HasManyGetAssociationsMixin<JukeboxQueueEntry>;
153
+ setJukeboxQueueEntries!: Sequelize.HasManySetAssociationsMixin<JukeboxQueueEntry, JukeboxQueueEntryId>;
154
+ addJukeboxQueueEntry!: Sequelize.HasManyAddAssociationMixin<JukeboxQueueEntry, JukeboxQueueEntryId>;
155
+ addJukeboxQueueEntries!: Sequelize.HasManyAddAssociationsMixin<JukeboxQueueEntry, JukeboxQueueEntryId>;
156
+ createJukeboxQueueEntry!: Sequelize.HasManyCreateAssociationMixin<JukeboxQueueEntry>;
157
+ removeJukeboxQueueEntry!: Sequelize.HasManyRemoveAssociationMixin<JukeboxQueueEntry, JukeboxQueueEntryId>;
158
+ removeJukeboxQueueEntries!: Sequelize.HasManyRemoveAssociationsMixin<JukeboxQueueEntry, JukeboxQueueEntryId>;
159
+ hasJukeboxQueueEntry!: Sequelize.HasManyHasAssociationMixin<JukeboxQueueEntry, JukeboxQueueEntryId>;
160
+ hasJukeboxQueueEntries!: Sequelize.HasManyHasAssociationsMixin<JukeboxQueueEntry, JukeboxQueueEntryId>;
161
+ countJukeboxQueueEntries!: Sequelize.HasManyCountAssociationsMixin;
162
+ // AppUser hasMany JukeboxUser via appUserId
163
+ jukeboxUsers!: JukeboxUser[];
164
+ getJukeboxUsers!: Sequelize.HasManyGetAssociationsMixin<JukeboxUser>;
165
+ setJukeboxUsers!: Sequelize.HasManySetAssociationsMixin<JukeboxUser, JukeboxUserId>;
166
+ addJukeboxUser!: Sequelize.HasManyAddAssociationMixin<JukeboxUser, JukeboxUserId>;
167
+ addJukeboxUsers!: Sequelize.HasManyAddAssociationsMixin<JukeboxUser, JukeboxUserId>;
168
+ createJukeboxUser!: Sequelize.HasManyCreateAssociationMixin<JukeboxUser>;
169
+ removeJukeboxUser!: Sequelize.HasManyRemoveAssociationMixin<JukeboxUser, JukeboxUserId>;
170
+ removeJukeboxUsers!: Sequelize.HasManyRemoveAssociationsMixin<JukeboxUser, JukeboxUserId>;
171
+ hasJukeboxUser!: Sequelize.HasManyHasAssociationMixin<JukeboxUser, JukeboxUserId>;
172
+ hasJukeboxUsers!: Sequelize.HasManyHasAssociationsMixin<JukeboxUser, JukeboxUserId>;
173
+ countJukeboxUsers!: Sequelize.HasManyCountAssociationsMixin;
174
+ // AppUser hasMany Notification via sourceUserId
175
+ notifications!: Notification[];
176
+ getNotifications!: Sequelize.HasManyGetAssociationsMixin<Notification>;
177
+ setNotifications!: Sequelize.HasManySetAssociationsMixin<Notification, NotificationId>;
178
+ addNotification!: Sequelize.HasManyAddAssociationMixin<Notification, NotificationId>;
179
+ addNotifications!: Sequelize.HasManyAddAssociationsMixin<Notification, NotificationId>;
180
+ createNotification!: Sequelize.HasManyCreateAssociationMixin<Notification>;
181
+ removeNotification!: Sequelize.HasManyRemoveAssociationMixin<Notification, NotificationId>;
182
+ removeNotifications!: Sequelize.HasManyRemoveAssociationsMixin<Notification, NotificationId>;
183
+ hasNotification!: Sequelize.HasManyHasAssociationMixin<Notification, NotificationId>;
184
+ hasNotifications!: Sequelize.HasManyHasAssociationsMixin<Notification, NotificationId>;
185
+ countNotifications!: Sequelize.HasManyCountAssociationsMixin;
186
+ // AppUser hasMany Notification via targetUserId
187
+ targetUserNotifications!: Notification[];
188
+ getTargetUserNotifications!: Sequelize.HasManyGetAssociationsMixin<Notification>;
189
+ setTargetUserNotifications!: Sequelize.HasManySetAssociationsMixin<Notification, NotificationId>;
190
+ addTargetUserNotification!: Sequelize.HasManyAddAssociationMixin<Notification, NotificationId>;
191
+ addTargetUserNotifications!: Sequelize.HasManyAddAssociationsMixin<Notification, NotificationId>;
192
+ createTargetUserNotification!: Sequelize.HasManyCreateAssociationMixin<Notification>;
193
+ removeTargetUserNotification!: Sequelize.HasManyRemoveAssociationMixin<Notification, NotificationId>;
194
+ removeTargetUserNotifications!: Sequelize.HasManyRemoveAssociationsMixin<Notification, NotificationId>;
195
+ hasTargetUserNotification!: Sequelize.HasManyHasAssociationMixin<Notification, NotificationId>;
196
+ hasTargetUserNotifications!: Sequelize.HasManyHasAssociationsMixin<Notification, NotificationId>;
197
+ countTargetUserNotifications!: Sequelize.HasManyCountAssociationsMixin;
198
+ // AppUser hasMany PlatformUserAlbum via appUserId
199
+ platformUserAlbums!: PlatformUserAlbum[];
200
+ getPlatformUserAlbums!: Sequelize.HasManyGetAssociationsMixin<PlatformUserAlbum>;
201
+ setPlatformUserAlbums!: Sequelize.HasManySetAssociationsMixin<PlatformUserAlbum, PlatformUserAlbumId>;
202
+ addPlatformUserAlbum!: Sequelize.HasManyAddAssociationMixin<PlatformUserAlbum, PlatformUserAlbumId>;
203
+ addPlatformUserAlbums!: Sequelize.HasManyAddAssociationsMixin<PlatformUserAlbum, PlatformUserAlbumId>;
204
+ createPlatformUserAlbum!: Sequelize.HasManyCreateAssociationMixin<PlatformUserAlbum>;
205
+ removePlatformUserAlbum!: Sequelize.HasManyRemoveAssociationMixin<PlatformUserAlbum, PlatformUserAlbumId>;
206
+ removePlatformUserAlbums!: Sequelize.HasManyRemoveAssociationsMixin<PlatformUserAlbum, PlatformUserAlbumId>;
207
+ hasPlatformUserAlbum!: Sequelize.HasManyHasAssociationMixin<PlatformUserAlbum, PlatformUserAlbumId>;
208
+ hasPlatformUserAlbums!: Sequelize.HasManyHasAssociationsMixin<PlatformUserAlbum, PlatformUserAlbumId>;
209
+ countPlatformUserAlbums!: Sequelize.HasManyCountAssociationsMixin;
210
+ // AppUser hasMany PlatformUserPlaylist via appUserId
211
+ platformUserPlaylists!: PlatformUserPlaylist[];
212
+ getPlatformUserPlaylists!: Sequelize.HasManyGetAssociationsMixin<PlatformUserPlaylist>;
213
+ setPlatformUserPlaylists!: Sequelize.HasManySetAssociationsMixin<PlatformUserPlaylist, PlatformUserPlaylistId>;
214
+ addPlatformUserPlaylist!: Sequelize.HasManyAddAssociationMixin<PlatformUserPlaylist, PlatformUserPlaylistId>;
215
+ addPlatformUserPlaylists!: Sequelize.HasManyAddAssociationsMixin<PlatformUserPlaylist, PlatformUserPlaylistId>;
216
+ createPlatformUserPlaylist!: Sequelize.HasManyCreateAssociationMixin<PlatformUserPlaylist>;
217
+ removePlatformUserPlaylist!: Sequelize.HasManyRemoveAssociationMixin<PlatformUserPlaylist, PlatformUserPlaylistId>;
218
+ removePlatformUserPlaylists!: Sequelize.HasManyRemoveAssociationsMixin<PlatformUserPlaylist, PlatformUserPlaylistId>;
219
+ hasPlatformUserPlaylist!: Sequelize.HasManyHasAssociationMixin<PlatformUserPlaylist, PlatformUserPlaylistId>;
220
+ hasPlatformUserPlaylists!: Sequelize.HasManyHasAssociationsMixin<PlatformUserPlaylist, PlatformUserPlaylistId>;
221
+ countPlatformUserPlaylists!: Sequelize.HasManyCountAssociationsMixin;
222
+ // AppUser hasMany RadioShow via creatorUserId
223
+ radioShows!: RadioShow[];
224
+ getRadioShows!: Sequelize.HasManyGetAssociationsMixin<RadioShow>;
225
+ setRadioShows!: Sequelize.HasManySetAssociationsMixin<RadioShow, RadioShowId>;
226
+ addRadioShow!: Sequelize.HasManyAddAssociationMixin<RadioShow, RadioShowId>;
227
+ addRadioShows!: Sequelize.HasManyAddAssociationsMixin<RadioShow, RadioShowId>;
228
+ createRadioShow!: Sequelize.HasManyCreateAssociationMixin<RadioShow>;
229
+ removeRadioShow!: Sequelize.HasManyRemoveAssociationMixin<RadioShow, RadioShowId>;
230
+ removeRadioShows!: Sequelize.HasManyRemoveAssociationsMixin<RadioShow, RadioShowId>;
231
+ hasRadioShow!: Sequelize.HasManyHasAssociationMixin<RadioShow, RadioShowId>;
232
+ hasRadioShows!: Sequelize.HasManyHasAssociationsMixin<RadioShow, RadioShowId>;
233
+ countRadioShows!: Sequelize.HasManyCountAssociationsMixin;
234
+ // AppUser hasMany UserAbuseReports via reporterUserId
235
+ userAbuseReports!: UserAbuseReports[];
236
+ getUserAbuseReports!: Sequelize.HasManyGetAssociationsMixin<UserAbuseReports>;
237
+ setUserAbuseReports!: Sequelize.HasManySetAssociationsMixin<UserAbuseReports, UserAbuseReportsId>;
238
+ addUserAbuseReport!: Sequelize.HasManyAddAssociationMixin<UserAbuseReports, UserAbuseReportsId>;
239
+ addUserAbuseReports!: Sequelize.HasManyAddAssociationsMixin<UserAbuseReports, UserAbuseReportsId>;
240
+ createUserAbuseReport!: Sequelize.HasManyCreateAssociationMixin<UserAbuseReports>;
241
+ removeUserAbuseReport!: Sequelize.HasManyRemoveAssociationMixin<UserAbuseReports, UserAbuseReportsId>;
242
+ removeUserAbuseReports!: Sequelize.HasManyRemoveAssociationsMixin<UserAbuseReports, UserAbuseReportsId>;
243
+ hasUserAbuseReport!: Sequelize.HasManyHasAssociationMixin<UserAbuseReports, UserAbuseReportsId>;
244
+ hasUserAbuseReports!: Sequelize.HasManyHasAssociationsMixin<UserAbuseReports, UserAbuseReportsId>;
245
+ countUserAbuseReports!: Sequelize.HasManyCountAssociationsMixin;
246
+ // AppUser hasMany UserAffinity via userId
247
+ userAffinities!: UserAffinity[];
248
+ getUserAffinities!: Sequelize.HasManyGetAssociationsMixin<UserAffinity>;
249
+ setUserAffinities!: Sequelize.HasManySetAssociationsMixin<UserAffinity, UserAffinityId>;
250
+ addUserAffinity!: Sequelize.HasManyAddAssociationMixin<UserAffinity, UserAffinityId>;
251
+ addUserAffinities!: Sequelize.HasManyAddAssociationsMixin<UserAffinity, UserAffinityId>;
252
+ createUserAffinity!: Sequelize.HasManyCreateAssociationMixin<UserAffinity>;
253
+ removeUserAffinity!: Sequelize.HasManyRemoveAssociationMixin<UserAffinity, UserAffinityId>;
254
+ removeUserAffinities!: Sequelize.HasManyRemoveAssociationsMixin<UserAffinity, UserAffinityId>;
255
+ hasUserAffinity!: Sequelize.HasManyHasAssociationMixin<UserAffinity, UserAffinityId>;
256
+ hasUserAffinities!: Sequelize.HasManyHasAssociationsMixin<UserAffinity, UserAffinityId>;
257
+ countUserAffinities!: Sequelize.HasManyCountAssociationsMixin;
258
+ // AppUser hasMany UserArtistAffinity via userId
259
+ userArtistAffinities!: UserArtistAffinity[];
260
+ getUserArtistAffinities!: Sequelize.HasManyGetAssociationsMixin<UserArtistAffinity>;
261
+ setUserArtistAffinities!: Sequelize.HasManySetAssociationsMixin<UserArtistAffinity, UserArtistAffinityId>;
262
+ addUserArtistAffinity!: Sequelize.HasManyAddAssociationMixin<UserArtistAffinity, UserArtistAffinityId>;
263
+ addUserArtistAffinities!: Sequelize.HasManyAddAssociationsMixin<UserArtistAffinity, UserArtistAffinityId>;
264
+ createUserArtistAffinity!: Sequelize.HasManyCreateAssociationMixin<UserArtistAffinity>;
265
+ removeUserArtistAffinity!: Sequelize.HasManyRemoveAssociationMixin<UserArtistAffinity, UserArtistAffinityId>;
266
+ removeUserArtistAffinities!: Sequelize.HasManyRemoveAssociationsMixin<UserArtistAffinity, UserArtistAffinityId>;
267
+ hasUserArtistAffinity!: Sequelize.HasManyHasAssociationMixin<UserArtistAffinity, UserArtistAffinityId>;
268
+ hasUserArtistAffinities!: Sequelize.HasManyHasAssociationsMixin<UserArtistAffinity, UserArtistAffinityId>;
269
+ countUserArtistAffinities!: Sequelize.HasManyCountAssociationsMixin;
270
+ // AppUser hasMany UserBookmarks via appUserId
271
+ userBookmarks!: UserBookmarks[];
272
+ getUserBookmarks!: Sequelize.HasManyGetAssociationsMixin<UserBookmarks>;
273
+ setUserBookmarks!: Sequelize.HasManySetAssociationsMixin<UserBookmarks, UserBookmarksId>;
274
+ addUserBookmark!: Sequelize.HasManyAddAssociationMixin<UserBookmarks, UserBookmarksId>;
275
+ addUserBookmarks!: Sequelize.HasManyAddAssociationsMixin<UserBookmarks, UserBookmarksId>;
276
+ createUserBookmark!: Sequelize.HasManyCreateAssociationMixin<UserBookmarks>;
277
+ removeUserBookmark!: Sequelize.HasManyRemoveAssociationMixin<UserBookmarks, UserBookmarksId>;
278
+ removeUserBookmarks!: Sequelize.HasManyRemoveAssociationsMixin<UserBookmarks, UserBookmarksId>;
279
+ hasUserBookmark!: Sequelize.HasManyHasAssociationMixin<UserBookmarks, UserBookmarksId>;
280
+ hasUserBookmarks!: Sequelize.HasManyHasAssociationsMixin<UserBookmarks, UserBookmarksId>;
281
+ countUserBookmarks!: Sequelize.HasManyCountAssociationsMixin;
282
+ // AppUser hasMany UserComments via appUserId
283
+ userComments!: UserComments[];
284
+ getUserComments!: Sequelize.HasManyGetAssociationsMixin<UserComments>;
285
+ setUserComments!: Sequelize.HasManySetAssociationsMixin<UserComments, UserCommentsId>;
286
+ addUserComment!: Sequelize.HasManyAddAssociationMixin<UserComments, UserCommentsId>;
287
+ addUserComments!: Sequelize.HasManyAddAssociationsMixin<UserComments, UserCommentsId>;
288
+ createUserComment!: Sequelize.HasManyCreateAssociationMixin<UserComments>;
289
+ removeUserComment!: Sequelize.HasManyRemoveAssociationMixin<UserComments, UserCommentsId>;
290
+ removeUserComments!: Sequelize.HasManyRemoveAssociationsMixin<UserComments, UserCommentsId>;
291
+ hasUserComment!: Sequelize.HasManyHasAssociationMixin<UserComments, UserCommentsId>;
292
+ hasUserComments!: Sequelize.HasManyHasAssociationsMixin<UserComments, UserCommentsId>;
293
+ countUserComments!: Sequelize.HasManyCountAssociationsMixin;
294
+ // AppUser hasMany UserContacts via appUserId
295
+ userContacts!: UserContacts[];
296
+ getUserContacts!: Sequelize.HasManyGetAssociationsMixin<UserContacts>;
297
+ setUserContacts!: Sequelize.HasManySetAssociationsMixin<UserContacts, UserContactsId>;
298
+ addUserContact!: Sequelize.HasManyAddAssociationMixin<UserContacts, UserContactsId>;
299
+ addUserContacts!: Sequelize.HasManyAddAssociationsMixin<UserContacts, UserContactsId>;
300
+ createUserContact!: Sequelize.HasManyCreateAssociationMixin<UserContacts>;
301
+ removeUserContact!: Sequelize.HasManyRemoveAssociationMixin<UserContacts, UserContactsId>;
302
+ removeUserContacts!: Sequelize.HasManyRemoveAssociationsMixin<UserContacts, UserContactsId>;
303
+ hasUserContact!: Sequelize.HasManyHasAssociationMixin<UserContacts, UserContactsId>;
304
+ hasUserContacts!: Sequelize.HasManyHasAssociationsMixin<UserContacts, UserContactsId>;
305
+ countUserContacts!: Sequelize.HasManyCountAssociationsMixin;
306
+ // AppUser hasMany UserEngagementFactor via userId
307
+ userEngagementFactors!: UserEngagementFactor[];
308
+ getUserEngagementFactors!: Sequelize.HasManyGetAssociationsMixin<UserEngagementFactor>;
309
+ setUserEngagementFactors!: Sequelize.HasManySetAssociationsMixin<UserEngagementFactor, UserEngagementFactorId>;
310
+ addUserEngagementFactor!: Sequelize.HasManyAddAssociationMixin<UserEngagementFactor, UserEngagementFactorId>;
311
+ addUserEngagementFactors!: Sequelize.HasManyAddAssociationsMixin<UserEngagementFactor, UserEngagementFactorId>;
312
+ createUserEngagementFactor!: Sequelize.HasManyCreateAssociationMixin<UserEngagementFactor>;
313
+ removeUserEngagementFactor!: Sequelize.HasManyRemoveAssociationMixin<UserEngagementFactor, UserEngagementFactorId>;
314
+ removeUserEngagementFactors!: Sequelize.HasManyRemoveAssociationsMixin<UserEngagementFactor, UserEngagementFactorId>;
315
+ hasUserEngagementFactor!: Sequelize.HasManyHasAssociationMixin<UserEngagementFactor, UserEngagementFactorId>;
316
+ hasUserEngagementFactors!: Sequelize.HasManyHasAssociationsMixin<UserEngagementFactor, UserEngagementFactorId>;
317
+ countUserEngagementFactors!: Sequelize.HasManyCountAssociationsMixin;
318
+ // AppUser hasMany UserGenreAffinity via userId
319
+ userGenreAffinities!: UserGenreAffinity[];
320
+ getUserGenreAffinities!: Sequelize.HasManyGetAssociationsMixin<UserGenreAffinity>;
321
+ setUserGenreAffinities!: Sequelize.HasManySetAssociationsMixin<UserGenreAffinity, UserGenreAffinityId>;
322
+ addUserGenreAffinity!: Sequelize.HasManyAddAssociationMixin<UserGenreAffinity, UserGenreAffinityId>;
323
+ addUserGenreAffinities!: Sequelize.HasManyAddAssociationsMixin<UserGenreAffinity, UserGenreAffinityId>;
324
+ createUserGenreAffinity!: Sequelize.HasManyCreateAssociationMixin<UserGenreAffinity>;
325
+ removeUserGenreAffinity!: Sequelize.HasManyRemoveAssociationMixin<UserGenreAffinity, UserGenreAffinityId>;
326
+ removeUserGenreAffinities!: Sequelize.HasManyRemoveAssociationsMixin<UserGenreAffinity, UserGenreAffinityId>;
327
+ hasUserGenreAffinity!: Sequelize.HasManyHasAssociationMixin<UserGenreAffinity, UserGenreAffinityId>;
328
+ hasUserGenreAffinities!: Sequelize.HasManyHasAssociationsMixin<UserGenreAffinity, UserGenreAffinityId>;
329
+ countUserGenreAffinities!: Sequelize.HasManyCountAssociationsMixin;
330
+ // AppUser hasMany UserLikes via appUserId
331
+ userLikes!: UserLikes[];
332
+ getUserLikes!: Sequelize.HasManyGetAssociationsMixin<UserLikes>;
333
+ setUserLikes!: Sequelize.HasManySetAssociationsMixin<UserLikes, UserLikesId>;
334
+ addUserLike!: Sequelize.HasManyAddAssociationMixin<UserLikes, UserLikesId>;
335
+ addUserLikes!: Sequelize.HasManyAddAssociationsMixin<UserLikes, UserLikesId>;
336
+ createUserLike!: Sequelize.HasManyCreateAssociationMixin<UserLikes>;
337
+ removeUserLike!: Sequelize.HasManyRemoveAssociationMixin<UserLikes, UserLikesId>;
338
+ removeUserLikes!: Sequelize.HasManyRemoveAssociationsMixin<UserLikes, UserLikesId>;
339
+ hasUserLike!: Sequelize.HasManyHasAssociationMixin<UserLikes, UserLikesId>;
340
+ hasUserLikes!: Sequelize.HasManyHasAssociationsMixin<UserLikes, UserLikesId>;
341
+ countUserLikes!: Sequelize.HasManyCountAssociationsMixin;
342
+ // AppUser hasMany UserMessages via recipientId
343
+ userMessages!: UserMessages[];
344
+ getUserMessages!: Sequelize.HasManyGetAssociationsMixin<UserMessages>;
345
+ setUserMessages!: Sequelize.HasManySetAssociationsMixin<UserMessages, UserMessagesId>;
346
+ addUserMessage!: Sequelize.HasManyAddAssociationMixin<UserMessages, UserMessagesId>;
347
+ addUserMessages!: Sequelize.HasManyAddAssociationsMixin<UserMessages, UserMessagesId>;
348
+ createUserMessage!: Sequelize.HasManyCreateAssociationMixin<UserMessages>;
349
+ removeUserMessage!: Sequelize.HasManyRemoveAssociationMixin<UserMessages, UserMessagesId>;
350
+ removeUserMessages!: Sequelize.HasManyRemoveAssociationsMixin<UserMessages, UserMessagesId>;
351
+ hasUserMessage!: Sequelize.HasManyHasAssociationMixin<UserMessages, UserMessagesId>;
352
+ hasUserMessages!: Sequelize.HasManyHasAssociationsMixin<UserMessages, UserMessagesId>;
353
+ countUserMessages!: Sequelize.HasManyCountAssociationsMixin;
354
+ // AppUser hasMany UserMessages via senderId
355
+ senderUserMessages!: UserMessages[];
356
+ getSenderUserMessages!: Sequelize.HasManyGetAssociationsMixin<UserMessages>;
357
+ setSenderUserMessages!: Sequelize.HasManySetAssociationsMixin<UserMessages, UserMessagesId>;
358
+ addSenderUserMessage!: Sequelize.HasManyAddAssociationMixin<UserMessages, UserMessagesId>;
359
+ addSenderUserMessages!: Sequelize.HasManyAddAssociationsMixin<UserMessages, UserMessagesId>;
360
+ createSenderUserMessage!: Sequelize.HasManyCreateAssociationMixin<UserMessages>;
361
+ removeSenderUserMessage!: Sequelize.HasManyRemoveAssociationMixin<UserMessages, UserMessagesId>;
362
+ removeSenderUserMessages!: Sequelize.HasManyRemoveAssociationsMixin<UserMessages, UserMessagesId>;
363
+ hasSenderUserMessage!: Sequelize.HasManyHasAssociationMixin<UserMessages, UserMessagesId>;
364
+ hasSenderUserMessages!: Sequelize.HasManyHasAssociationsMixin<UserMessages, UserMessagesId>;
365
+ countSenderUserMessages!: Sequelize.HasManyCountAssociationsMixin;
366
+ // AppUser hasMany Versus via creatorUserId
367
+ versus!: Versus[];
368
+ getVersus!: Sequelize.HasManyGetAssociationsMixin<Versus>;
369
+ setVersus!: Sequelize.HasManySetAssociationsMixin<Versus, VersusId>;
370
+ addVersu!: Sequelize.HasManyAddAssociationMixin<Versus, VersusId>;
371
+ addVersus!: Sequelize.HasManyAddAssociationsMixin<Versus, VersusId>;
372
+ createVersu!: Sequelize.HasManyCreateAssociationMixin<Versus>;
373
+ removeVersu!: Sequelize.HasManyRemoveAssociationMixin<Versus, VersusId>;
374
+ removeVersus!: Sequelize.HasManyRemoveAssociationsMixin<Versus, VersusId>;
375
+ hasVersu!: Sequelize.HasManyHasAssociationMixin<Versus, VersusId>;
376
+ hasVersus!: Sequelize.HasManyHasAssociationsMixin<Versus, VersusId>;
377
+ countVersus!: Sequelize.HasManyCountAssociationsMixin;
378
+ // AppUser hasMany VersusCoCreator via appUserId
379
+ versusCoCreators!: VersusCoCreator[];
380
+ getVersusCoCreators!: Sequelize.HasManyGetAssociationsMixin<VersusCoCreator>;
381
+ setVersusCoCreators!: Sequelize.HasManySetAssociationsMixin<VersusCoCreator, VersusCoCreatorId>;
382
+ addVersusCoCreator!: Sequelize.HasManyAddAssociationMixin<VersusCoCreator, VersusCoCreatorId>;
383
+ addVersusCoCreators!: Sequelize.HasManyAddAssociationsMixin<VersusCoCreator, VersusCoCreatorId>;
384
+ createVersusCoCreator!: Sequelize.HasManyCreateAssociationMixin<VersusCoCreator>;
385
+ removeVersusCoCreator!: Sequelize.HasManyRemoveAssociationMixin<VersusCoCreator, VersusCoCreatorId>;
386
+ removeVersusCoCreators!: Sequelize.HasManyRemoveAssociationsMixin<VersusCoCreator, VersusCoCreatorId>;
387
+ hasVersusCoCreator!: Sequelize.HasManyHasAssociationMixin<VersusCoCreator, VersusCoCreatorId>;
388
+ hasVersusCoCreators!: Sequelize.HasManyHasAssociationsMixin<VersusCoCreator, VersusCoCreatorId>;
389
+ countVersusCoCreators!: Sequelize.HasManyCountAssociationsMixin;
390
+ // AppUser hasMany VersusOption via appUserId
391
+ versusOptions!: VersusOption[];
392
+ getVersusOptions!: Sequelize.HasManyGetAssociationsMixin<VersusOption>;
393
+ setVersusOptions!: Sequelize.HasManySetAssociationsMixin<VersusOption, VersusOptionId>;
394
+ addVersusOption!: Sequelize.HasManyAddAssociationMixin<VersusOption, VersusOptionId>;
395
+ addVersusOptions!: Sequelize.HasManyAddAssociationsMixin<VersusOption, VersusOptionId>;
396
+ createVersusOption!: Sequelize.HasManyCreateAssociationMixin<VersusOption>;
397
+ removeVersusOption!: Sequelize.HasManyRemoveAssociationMixin<VersusOption, VersusOptionId>;
398
+ removeVersusOptions!: Sequelize.HasManyRemoveAssociationsMixin<VersusOption, VersusOptionId>;
399
+ hasVersusOption!: Sequelize.HasManyHasAssociationMixin<VersusOption, VersusOptionId>;
400
+ hasVersusOptions!: Sequelize.HasManyHasAssociationsMixin<VersusOption, VersusOptionId>;
401
+ countVersusOptions!: Sequelize.HasManyCountAssociationsMixin;
402
+ // AppUser hasMany VersusVote via appUserId
403
+ versusVotes!: VersusVote[];
404
+ getVersusVotes!: Sequelize.HasManyGetAssociationsMixin<VersusVote>;
405
+ setVersusVotes!: Sequelize.HasManySetAssociationsMixin<VersusVote, VersusVoteId>;
406
+ addVersusVote!: Sequelize.HasManyAddAssociationMixin<VersusVote, VersusVoteId>;
407
+ addVersusVotes!: Sequelize.HasManyAddAssociationsMixin<VersusVote, VersusVoteId>;
408
+ createVersusVote!: Sequelize.HasManyCreateAssociationMixin<VersusVote>;
409
+ removeVersusVote!: Sequelize.HasManyRemoveAssociationMixin<VersusVote, VersusVoteId>;
410
+ removeVersusVotes!: Sequelize.HasManyRemoveAssociationsMixin<VersusVote, VersusVoteId>;
411
+ hasVersusVote!: Sequelize.HasManyHasAssociationMixin<VersusVote, VersusVoteId>;
412
+ hasVersusVotes!: Sequelize.HasManyHasAssociationsMixin<VersusVote, VersusVoteId>;
413
+ countVersusVotes!: Sequelize.HasManyCountAssociationsMixin;
414
+ // AppUser belongsTo State via stateId
415
+ state!: State;
416
+ getState!: Sequelize.BelongsToGetAssociationMixin<State>;
417
+ setState!: Sequelize.BelongsToSetAssociationMixin<State, StateId>;
418
+ createState!: Sequelize.BelongsToCreateAssociationMixin<State>;
419
+
420
+ static initModel(sequelize: Sequelize.Sequelize): typeof AppUser {
421
+ return AppUser.init({
422
+ id: {
423
+ type: DataTypes.UUID,
424
+ allowNull: false,
425
+ defaultValue: Sequelize.Sequelize.fn('uuid_generate_v1'),
426
+ primaryKey: true
427
+ },
428
+ email: {
429
+ type: DataTypes.TEXT,
430
+ allowNull: true,
431
+ unique: "uk_app_user_email"
432
+ },
433
+ firstName: {
434
+ type: DataTypes.TEXT,
435
+ allowNull: false,
436
+ field: 'first_name'
437
+ },
438
+ createDate: {
439
+ type: DataTypes.DATE,
440
+ allowNull: false,
441
+ defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
442
+ field: 'create_date'
443
+ },
444
+ updateDate: {
445
+ type: DataTypes.DATE,
446
+ allowNull: false,
447
+ defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
448
+ field: 'update_date'
449
+ },
450
+ syncContacts: {
451
+ type: DataTypes.BOOLEAN,
452
+ allowNull: true,
453
+ defaultValue: false,
454
+ field: 'sync_contacts'
455
+ },
456
+ stateId: {
457
+ type: DataTypes.SMALLINT,
458
+ allowNull: false,
459
+ defaultValue: 0,
460
+ references: {
461
+ model: 'state',
462
+ key: 'id'
463
+ },
464
+ field: 'state_id'
465
+ },
466
+ lastName: {
467
+ type: DataTypes.TEXT,
468
+ allowNull: true,
469
+ field: 'last_name'
470
+ },
471
+ autoApproveFollowers: {
472
+ type: DataTypes.BOOLEAN,
473
+ allowNull: false,
474
+ defaultValue: true,
475
+ field: 'auto_approve_followers'
476
+ },
477
+ lastHarvested: {
478
+ type: DataTypes.DATE,
479
+ allowNull: true,
480
+ field: 'last_harvested'
481
+ },
482
+ lastHarvestedError: {
483
+ type: DataTypes.STRING(512),
484
+ allowNull: true,
485
+ field: 'last_harvested_error'
486
+ },
487
+ earbugAccessControlPreference: {
488
+ type: DataTypes.TEXT,
489
+ allowNull: false,
490
+ defaultValue: "PUBLIC",
491
+ field: 'earbug_access_control_preference'
492
+ },
493
+ unsubscribeAll: {
494
+ type: DataTypes.DATE,
495
+ allowNull: true,
496
+ field: 'unsubscribe_all'
497
+ },
498
+ unsubscribeBiweeklyEmail: {
499
+ type: DataTypes.DATE,
500
+ allowNull: true,
501
+ field: 'unsubscribe_biweekly_email'
502
+ },
503
+ unsubscribeFollowingNotifications: {
504
+ type: DataTypes.DATE,
505
+ allowNull: true,
506
+ field: 'unsubscribe_following_notifications'
507
+ },
508
+ unsubscribeInterestNotifications: {
509
+ type: DataTypes.DATE,
510
+ allowNull: true,
511
+ field: 'unsubscribe_interest_notifications'
512
+ },
513
+ unsubscribeFunNotifications: {
514
+ type: DataTypes.DATE,
515
+ allowNull: true,
516
+ field: 'unsubscribe_fun_notifications'
517
+ },
518
+ hardBounce: {
519
+ type: DataTypes.DATE,
520
+ allowNull: true,
521
+ field: 'hard_bounce'
522
+ },
523
+ softBounce1: {
524
+ type: DataTypes.DATE,
525
+ allowNull: true,
526
+ field: 'soft_bounce_1'
527
+ },
528
+ softBounce2: {
529
+ type: DataTypes.DATE,
530
+ allowNull: true,
531
+ field: 'soft_bounce_2'
532
+ },
533
+ softBounce3: {
534
+ type: DataTypes.DATE,
535
+ allowNull: true,
536
+ field: 'soft_bounce_3'
537
+ },
538
+ isGuest: {
539
+ type: DataTypes.BOOLEAN,
540
+ allowNull: false,
541
+ defaultValue: false,
542
+ field: 'is_guest'
543
+ },
544
+ bio: {
545
+ type: DataTypes.TEXT,
546
+ allowNull: true
547
+ }
548
+ }, {
549
+ sequelize,
550
+ tableName: 'app_user',
551
+ schema: 'eb',
552
+ timestamps: false,
553
+ indexes: [
554
+ {
555
+ name: "app_user_pkey",
556
+ unique: true,
557
+ fields: [
558
+ { name: "id" },
559
+ ]
560
+ },
561
+ {
562
+ name: "idx_app_user_hard_bounce",
563
+ fields: [
564
+ { name: "hard_bounce" },
565
+ ]
566
+ },
567
+ {
568
+ name: "uk_app_user_email",
569
+ unique: true,
570
+ fields: [
571
+ { name: "email" },
572
+ ]
573
+ },
574
+ ]
575
+ });
576
+ }
577
+ }