volleyballsimtypes 0.0.83 → 0.0.85

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 (65) hide show
  1. package/dist/cjs/src/api/player.d.ts +2 -7
  2. package/dist/cjs/src/api/player.js +0 -10
  3. package/dist/cjs/src/data/init-models.js +66 -0
  4. package/dist/cjs/src/data/models/block.d.ts +24 -2
  5. package/dist/cjs/src/data/models/event-trait.d.ts +23 -0
  6. package/dist/cjs/src/data/models/event-trait.js +42 -0
  7. package/dist/cjs/src/data/models/event.d.ts +12 -1
  8. package/dist/cjs/src/data/models/index.d.ts +3 -0
  9. package/dist/cjs/src/data/models/index.js +3 -0
  10. package/dist/cjs/src/data/models/match.d.ts +1 -1
  11. package/dist/cjs/src/data/models/player-trait.d.ts +23 -0
  12. package/dist/cjs/src/data/models/player-trait.js +42 -0
  13. package/dist/cjs/src/data/models/player.d.ts +14 -7
  14. package/dist/cjs/src/data/models/player.js +0 -4
  15. package/dist/cjs/src/data/models/reception.d.ts +24 -2
  16. package/dist/cjs/src/data/models/season-match.d.ts +1 -1
  17. package/dist/cjs/src/data/models/season.d.ts +3 -3
  18. package/dist/cjs/src/data/models/serve.d.ts +24 -2
  19. package/dist/cjs/src/data/models/set.d.ts +24 -2
  20. package/dist/cjs/src/data/models/spike.d.ts +24 -2
  21. package/dist/cjs/src/data/models/team.d.ts +1 -1
  22. package/dist/cjs/src/data/models/tournament.d.ts +1 -1
  23. package/dist/cjs/src/data/models/trait.d.ts +70 -0
  24. package/dist/cjs/src/data/models/trait.js +50 -0
  25. package/dist/cjs/src/data/transformers/player.js +2 -3
  26. package/dist/cjs/src/data/transformers/trait.d.ts +5 -5
  27. package/dist/cjs/src/data/transformers/trait.js +18 -26
  28. package/dist/cjs/src/service/match/match-set.d.ts +1 -1
  29. package/dist/cjs/src/service/match/rally.d.ts +1 -1
  30. package/dist/cjs/src/service/player/trait.d.ts +2 -3
  31. package/dist/cjs/src/service/player/trait.js +10 -12
  32. package/dist/cjs/src/service/team/team.d.ts +1 -1
  33. package/dist/esm/src/api/player.d.ts +2 -7
  34. package/dist/esm/src/api/player.js +1 -9
  35. package/dist/esm/src/data/init-models.js +67 -1
  36. package/dist/esm/src/data/models/block.d.ts +24 -2
  37. package/dist/esm/src/data/models/event-trait.d.ts +23 -0
  38. package/dist/esm/src/data/models/event-trait.js +38 -0
  39. package/dist/esm/src/data/models/event.d.ts +12 -1
  40. package/dist/esm/src/data/models/index.d.ts +3 -0
  41. package/dist/esm/src/data/models/index.js +3 -0
  42. package/dist/esm/src/data/models/match.d.ts +1 -1
  43. package/dist/esm/src/data/models/player-trait.d.ts +23 -0
  44. package/dist/esm/src/data/models/player-trait.js +38 -0
  45. package/dist/esm/src/data/models/player.d.ts +14 -7
  46. package/dist/esm/src/data/models/player.js +0 -4
  47. package/dist/esm/src/data/models/reception.d.ts +24 -2
  48. package/dist/esm/src/data/models/season-match.d.ts +1 -1
  49. package/dist/esm/src/data/models/season.d.ts +3 -3
  50. package/dist/esm/src/data/models/serve.d.ts +24 -2
  51. package/dist/esm/src/data/models/set.d.ts +24 -2
  52. package/dist/esm/src/data/models/spike.d.ts +24 -2
  53. package/dist/esm/src/data/models/team.d.ts +1 -1
  54. package/dist/esm/src/data/models/tournament.d.ts +1 -1
  55. package/dist/esm/src/data/models/trait.d.ts +70 -0
  56. package/dist/esm/src/data/models/trait.js +46 -0
  57. package/dist/esm/src/data/transformers/player.js +3 -4
  58. package/dist/esm/src/data/transformers/trait.d.ts +5 -5
  59. package/dist/esm/src/data/transformers/trait.js +15 -23
  60. package/dist/esm/src/service/match/match-set.d.ts +1 -1
  61. package/dist/esm/src/service/match/rally.d.ts +1 -1
  62. package/dist/esm/src/service/player/trait.d.ts +2 -3
  63. package/dist/esm/src/service/player/trait.js +10 -12
  64. package/dist/esm/src/service/team/team.d.ts +1 -1
  65. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { BlockModel, CoachModel, CountryModel, DraftModel, DraftPickModel, EventModel, IterationModel, LeagueModel, LiberoReplacementModel, MatchModel, MatchRatingModel, MatchSetModel, MatchSetStatsModel, PerformanceStatsModel, PlayerModel, PlayerTeamModel, RallyModel, RallyPositionModel, ReceptionModel, ScoreModel, SeasonMatchModel, SeasonModel, SeasonTeamsModel, ServeModel, SetModel, SpikeModel, SubstitutionModel, TeamModel, TournamentMatchModel, TournamentModel, TournamentTeamsModel, UserModel } from './models';
1
+ import { BlockModel, CoachModel, CountryModel, DraftModel, DraftPickModel, EventModel, EventTraitModel, IterationModel, LeagueModel, LiberoReplacementModel, MatchModel, MatchRatingModel, MatchSetModel, MatchSetStatsModel, PerformanceStatsModel, PlayerModel, PlayerTeamModel, PlayerTraitModel, RallyModel, RallyPositionModel, ReceptionModel, ScoreModel, SeasonMatchModel, SeasonModel, SeasonTeamsModel, ServeModel, SetModel, SpikeModel, SubstitutionModel, TeamModel, TournamentMatchModel, TournamentModel, TournamentTeamsModel, TraitModel, UserModel } from './models';
2
2
  export function initModels(sequelize) {
3
3
  const Block = BlockModel.initModel(sequelize);
4
4
  const Coach = CoachModel.initModel(sequelize);
@@ -6,6 +6,7 @@ export function initModels(sequelize) {
6
6
  const Draft = DraftModel.initModel(sequelize);
7
7
  const DraftPick = DraftPickModel.initModel(sequelize);
8
8
  const Event = EventModel.initModel(sequelize);
9
+ const EventTrait = EventTraitModel.initModel(sequelize);
9
10
  const Iteration = IterationModel.initModel(sequelize);
10
11
  const League = LeagueModel.initModel(sequelize);
11
12
  const LiberoReplacement = LiberoReplacementModel.initModel(sequelize);
@@ -16,6 +17,7 @@ export function initModels(sequelize) {
16
17
  const PerformanceStats = PerformanceStatsModel.initModel(sequelize);
17
18
  const Player = PlayerModel.initModel(sequelize);
18
19
  const PlayerTeam = PlayerTeamModel.initModel(sequelize);
20
+ const PlayerTrait = PlayerTraitModel.initModel(sequelize);
19
21
  const Rally = RallyModel.initModel(sequelize);
20
22
  const RallyPosition = RallyPositionModel.initModel(sequelize);
21
23
  const Reception = ReceptionModel.initModel(sequelize);
@@ -31,6 +33,7 @@ export function initModels(sequelize) {
31
33
  const Tournament = TournamentModel.initModel(sequelize);
32
34
  const TournamentMatch = TournamentMatchModel.initModel(sequelize);
33
35
  const TournamentTeams = TournamentTeamsModel.initModel(sequelize);
36
+ const Trait = TraitModel.initModel(sequelize);
34
37
  const User = UserModel.initModel(sequelize);
35
38
  Draft.hasMany(DraftPick, { as: 'DraftPicks', foreignKey: 'draft_id' });
36
39
  DraftPick.belongsTo(Draft, { as: 'draft', foreignKey: 'draft_id' });
@@ -41,6 +44,13 @@ export function initModels(sequelize) {
41
44
  Block.belongsTo(Player, { as: 'Blocker_3', foreignKey: 'blocker_3' });
42
45
  Block.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
43
46
  Block.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
47
+ Block.belongsToMany(Trait, {
48
+ as: 'Traits',
49
+ through: EventTrait,
50
+ foreignKey: 'event_id',
51
+ otherKey: 'trait_id'
52
+ });
53
+ Block.hasMany(EventTrait, { as: 'EventTraits', foreignKey: 'event_id' });
44
54
  Coach.belongsTo(Country, { as: 'country', foreignKey: 'country_id' });
45
55
  Coach.hasMany(Team, { as: 'Teams', foreignKey: 'coach_id' });
46
56
  Country.hasMany(Coach, { as: 'Coaches', foreignKey: 'country_id' });
@@ -49,6 +59,13 @@ export function initModels(sequelize) {
49
59
  Country.hasMany(Team, { as: 'Teams', foreignKey: 'country_id' });
50
60
  Event.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
51
61
  Event.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
62
+ Event.belongsToMany(Trait, {
63
+ as: 'Traits',
64
+ through: EventTrait,
65
+ foreignKey: 'event_id',
66
+ otherKey: 'trait_id'
67
+ });
68
+ EventTrait.belongsTo(Trait, { as: 'trait', foreignKey: 'trait_id' });
52
69
  Iteration.hasMany(Season, { as: 'Seasons', foreignKey: 'iteration' });
53
70
  Iteration.hasOne(Tournament, { as: 'Tournament', foreignKey: 'iteration' });
54
71
  League.belongsTo(Country, { as: 'country', foreignKey: 'country_id' });
@@ -119,8 +136,15 @@ export function initModels(sequelize) {
119
136
  foreignKey: 'player_id',
120
137
  otherKey: 'rally_id'
121
138
  });
139
+ Player.belongsToMany(Trait, {
140
+ as: 'Traits',
141
+ through: PlayerTrait,
142
+ foreignKey: 'player_id',
143
+ otherKey: 'trait_id'
144
+ });
122
145
  PlayerTeam.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
123
146
  PlayerTeam.belongsTo(Team, { as: 'team', foreignKey: 'team_id' });
147
+ PlayerTrait.belongsTo(Trait, { as: 'trait', foreignKey: 'trait_id' });
124
148
  Rally.belongsTo(MatchSet, { as: 'match_set', foreignKey: 'match_set_id' });
125
149
  Rally.belongsTo(Team, { as: 'servingTeam', foreignKey: 'serving_team' });
126
150
  Rally.hasMany(Block, { as: 'Blocks', foreignKey: 'rally_id' });
@@ -143,6 +167,13 @@ export function initModels(sequelize) {
143
167
  RallyPosition.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
144
168
  Reception.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
145
169
  Reception.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
170
+ Reception.belongsToMany(Trait, {
171
+ as: 'Traits',
172
+ through: EventTrait,
173
+ foreignKey: 'event_id',
174
+ otherKey: 'trait_id'
175
+ });
176
+ Reception.hasMany(EventTrait, { as: 'EventTraits', foreignKey: 'event_id' });
146
177
  Score.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
147
178
  Score.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
148
179
  Score.belongsTo(Team, { as: 'team', foreignKey: 'team_id' });
@@ -163,10 +194,31 @@ export function initModels(sequelize) {
163
194
  SeasonTeams.belongsTo(Team, { as: 'team', foreignKey: 'team_id' });
164
195
  Serve.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
165
196
  Serve.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
197
+ Serve.belongsToMany(Trait, {
198
+ as: 'Traits',
199
+ through: EventTrait,
200
+ foreignKey: 'event_id',
201
+ otherKey: 'trait_id'
202
+ });
203
+ Serve.hasMany(EventTrait, { as: 'EventTraits', foreignKey: 'event_id' });
166
204
  Set.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
167
205
  Set.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
206
+ Set.belongsToMany(Trait, {
207
+ as: 'Traits',
208
+ through: EventTrait,
209
+ foreignKey: 'event_id',
210
+ otherKey: 'trait_id'
211
+ });
212
+ Set.hasMany(EventTrait, { as: 'EventTraits', foreignKey: 'event_id' });
168
213
  Spike.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
169
214
  Spike.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
215
+ Spike.belongsToMany(Trait, {
216
+ as: 'Traits',
217
+ through: EventTrait,
218
+ foreignKey: 'event_id',
219
+ otherKey: 'trait_id'
220
+ });
221
+ Spike.hasMany(EventTrait, { as: 'EventTraits', foreignKey: 'event_id' });
170
222
  Substitution.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
171
223
  Substitution.belongsTo(Player, { as: 'playerOut', foreignKey: 'player_out' });
172
224
  Substitution.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
@@ -216,6 +268,20 @@ export function initModels(sequelize) {
216
268
  TournamentMatch.belongsTo(Tournament, { as: 'tournament', foreignKey: 'tournament_id' });
217
269
  TournamentTeams.belongsTo(Team, { as: 'team', foreignKey: 'team_id' });
218
270
  TournamentTeams.belongsTo(Tournament, { as: 'tournament', foreignKey: 'tournament_id' });
271
+ Trait.belongsToMany(Event, {
272
+ as: 'Events',
273
+ through: EventTrait,
274
+ foreignKey: 'trait_id',
275
+ otherKey: 'event_id'
276
+ });
277
+ Trait.belongsToMany(Player, {
278
+ as: 'Players',
279
+ through: PlayerTrait,
280
+ foreignKey: 'trait_id',
281
+ otherKey: 'player_id'
282
+ });
283
+ Trait.hasMany(PlayerTrait, { as: 'PlayerTraits', foreignKey: 'trait_id' });
284
+ Trait.hasMany(EventTrait, { as: 'EventTraits', foreignKey: 'trait_id' });
219
285
  return {
220
286
  Block,
221
287
  Coach,
@@ -1,6 +1,6 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model, Optional } from 'sequelize';
3
- import { CourtTarget, EventType, PlayerId, PlayerModel, RallyId, RallyModel, TraitType } from '.';
3
+ import { CourtTarget, EventTraitAttributes, EventTraitId, EventTraitModel, EventType, PlayerId, PlayerModel, RallyId, RallyModel, TraitId, TraitModel } from '.';
4
4
  export interface BlockAttributes {
5
5
  event_id: string;
6
6
  rally_id: string;
@@ -15,6 +15,7 @@ export interface BlockAttributes {
15
15
  blocker_3?: string;
16
16
  modifier: number;
17
17
  score: number;
18
+ EventTraits?: EventTraitAttributes[];
18
19
  }
19
20
  export type BlockType = 'NO_BLOCKER' | 'SINGLE' | 'DOUBLE' | 'TRIPLE';
20
21
  export type BlockFailure = 'NO_FAILURE' | 'FAULT' | 'MISS' | 'OUT_OF_BOUNDS' | 'WIPE' | 'TOOL';
@@ -36,7 +37,6 @@ export declare class BlockModel extends Model<BlockAttributes, BlockCreationAttr
36
37
  blocker_3?: string;
37
38
  modifier: number;
38
39
  score: number;
39
- active_traits: TraitType[];
40
40
  player: PlayerModel;
41
41
  getPlayer: Sequelize.BelongsToGetAssociationMixin<PlayerModel>;
42
42
  setPlayer: Sequelize.BelongsToSetAssociationMixin<PlayerModel, PlayerId>;
@@ -57,5 +57,27 @@ export declare class BlockModel extends Model<BlockAttributes, BlockCreationAttr
57
57
  getRally: Sequelize.BelongsToGetAssociationMixin<RallyModel>;
58
58
  setRally: Sequelize.BelongsToSetAssociationMixin<RallyModel, RallyId>;
59
59
  createRally: Sequelize.BelongsToCreateAssociationMixin<RallyModel>;
60
+ Traits: TraitModel[];
61
+ getTraits: Sequelize.BelongsToManyGetAssociationsMixin<TraitModel>;
62
+ setTraits: Sequelize.BelongsToManySetAssociationsMixin<TraitModel, TraitId>;
63
+ addTrait: Sequelize.BelongsToManyAddAssociationMixin<TraitModel, TraitId>;
64
+ addTraits: Sequelize.BelongsToManyAddAssociationsMixin<TraitModel, TraitId>;
65
+ createTrait: Sequelize.BelongsToManyCreateAssociationMixin<TraitModel>;
66
+ removeTrait: Sequelize.BelongsToManyRemoveAssociationMixin<TraitModel, TraitId>;
67
+ removeTraits: Sequelize.BelongsToManyRemoveAssociationsMixin<TraitModel, TraitId>;
68
+ hasTrait: Sequelize.BelongsToManyHasAssociationMixin<TraitModel, TraitId>;
69
+ hasTraits: Sequelize.BelongsToManyHasAssociationsMixin<TraitModel, TraitId>;
70
+ countTraits: Sequelize.BelongsToManyCountAssociationsMixin;
71
+ EventTraits: EventTraitModel[];
72
+ getEventTraits: Sequelize.HasManyGetAssociationsMixin<EventTraitModel>;
73
+ setEventTraits: Sequelize.HasManySetAssociationsMixin<EventTraitModel, EventTraitId>;
74
+ addEventTrait: Sequelize.HasManyAddAssociationMixin<EventTraitModel, EventTraitId>;
75
+ addEventTraits: Sequelize.HasManyAddAssociationsMixin<EventTraitModel, EventTraitId>;
76
+ createEventTrait: Sequelize.HasManyCreateAssociationMixin<EventTraitModel>;
77
+ removeEventTrait: Sequelize.HasManyRemoveAssociationMixin<EventTraitModel, EventTraitId>;
78
+ removeEventTraits: Sequelize.HasManyRemoveAssociationsMixin<EventTraitModel, EventTraitId>;
79
+ hasEventTrait: Sequelize.HasManyHasAssociationMixin<EventTraitModel, EventTraitId>;
80
+ hasEventTraits: Sequelize.HasManyHasAssociationsMixin<EventTraitModel, EventTraitId>;
81
+ countEventTraits: Sequelize.HasManyCountAssociationsMixin;
60
82
  static initModel(sequelize: Sequelize.Sequelize): typeof BlockModel;
61
83
  }
@@ -0,0 +1,23 @@
1
+ import * as Sequelize from 'sequelize';
2
+ import { Model } from 'sequelize';
3
+ import type { EventId, EventModel, TraitId, TraitModel } from '.';
4
+ export interface EventTraitAttributes {
5
+ event_id: string;
6
+ trait_id: string;
7
+ }
8
+ export type EventTraitPk = 'event_id' | 'trait_id';
9
+ export type EventTraitId = EventTraitModel[EventTraitPk];
10
+ export type EventTraitCreationAttributes = EventTraitAttributes;
11
+ export declare class EventTraitModel extends Model<EventTraitAttributes, EventTraitCreationAttributes> implements EventTraitAttributes {
12
+ event_id: string;
13
+ trait_id: string;
14
+ event: EventModel;
15
+ getEvent: Sequelize.BelongsToGetAssociationMixin<EventModel>;
16
+ setEvent: Sequelize.BelongsToSetAssociationMixin<EventModel, EventId>;
17
+ createEvent: Sequelize.BelongsToCreateAssociationMixin<EventModel>;
18
+ trait: TraitModel;
19
+ getTrait: Sequelize.BelongsToGetAssociationMixin<TraitModel>;
20
+ setTrait: Sequelize.BelongsToSetAssociationMixin<TraitModel, TraitId>;
21
+ createTrait: Sequelize.BelongsToCreateAssociationMixin<TraitModel>;
22
+ static initModel(sequelize: Sequelize.Sequelize): typeof EventTraitModel;
23
+ }
@@ -0,0 +1,38 @@
1
+ import { DataTypes, Model } from 'sequelize';
2
+ export class EventTraitModel extends Model {
3
+ static initModel(sequelize) {
4
+ return EventTraitModel.init({
5
+ event_id: {
6
+ type: DataTypes.UUID,
7
+ allowNull: false,
8
+ primaryKey: true,
9
+ references: {
10
+ model: 'Event',
11
+ key: 'event_id'
12
+ }
13
+ },
14
+ trait_id: {
15
+ type: DataTypes.UUID,
16
+ allowNull: false,
17
+ primaryKey: true,
18
+ references: {
19
+ model: 'Trait',
20
+ key: 'trait_id'
21
+ }
22
+ }
23
+ }, {
24
+ sequelize,
25
+ tableName: 'EventTrait',
26
+ schema: 'public',
27
+ timestamps: false,
28
+ indexes: [{
29
+ name: 'eventtrait_pk',
30
+ unique: true,
31
+ fields: [
32
+ { name: 'event_id' },
33
+ { name: 'trait_id' },
34
+ ]
35
+ }]
36
+ });
37
+ }
38
+ }
@@ -1,6 +1,6 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model } from 'sequelize';
3
- import { PlayerId, PlayerModel, RallyId, RallyModel } from '.';
3
+ import { PlayerId, PlayerModel, RallyId, RallyModel, TraitId, TraitModel } from '.';
4
4
  export interface EventAttributes {
5
5
  event_id: string;
6
6
  rally_id: string;
@@ -27,5 +27,16 @@ export declare class EventModel extends Model<EventAttributes, EventCreationAttr
27
27
  getRally: Sequelize.BelongsToGetAssociationMixin<RallyModel>;
28
28
  setRally: Sequelize.BelongsToSetAssociationMixin<RallyModel, RallyId>;
29
29
  createRally: Sequelize.BelongsToCreateAssociationMixin<RallyModel>;
30
+ Traits: TraitModel[];
31
+ getTraits: Sequelize.BelongsToManyGetAssociationsMixin<TraitModel>;
32
+ setTraits: Sequelize.BelongsToManySetAssociationsMixin<TraitModel, TraitId>;
33
+ addTrait: Sequelize.BelongsToManyAddAssociationMixin<TraitModel, TraitId>;
34
+ addTraits: Sequelize.BelongsToManyAddAssociationsMixin<TraitModel, TraitId>;
35
+ createTrait: Sequelize.BelongsToManyCreateAssociationMixin<TraitModel>;
36
+ removeTrait: Sequelize.BelongsToManyRemoveAssociationMixin<TraitModel, TraitId>;
37
+ removeTraits: Sequelize.BelongsToManyRemoveAssociationsMixin<TraitModel, TraitId>;
38
+ hasTrait: Sequelize.BelongsToManyHasAssociationMixin<TraitModel, TraitId>;
39
+ hasTraits: Sequelize.BelongsToManyHasAssociationsMixin<TraitModel, TraitId>;
40
+ countTraits: Sequelize.BelongsToManyCountAssociationsMixin;
30
41
  static initModel(sequelize: Sequelize.Sequelize): typeof EventModel;
31
42
  }
@@ -4,6 +4,7 @@ export * from './country';
4
4
  export * from './draft';
5
5
  export * from './draft-pick';
6
6
  export * from './event';
7
+ export * from './event-trait';
7
8
  export * from './iteration';
8
9
  export * from './league';
9
10
  export * from './libero-replacement';
@@ -14,6 +15,7 @@ export * from './match-set-stats';
14
15
  export * from './performance-stats';
15
16
  export * from './player';
16
17
  export * from './player-team';
18
+ export * from './player-trait';
17
19
  export * from './rally';
18
20
  export * from './rally-position';
19
21
  export * from './reception';
@@ -30,3 +32,4 @@ export * from './tournament';
30
32
  export * from './tournament-match';
31
33
  export * from './tournament-teams';
32
34
  export * from './user';
35
+ export * from './trait';
@@ -4,6 +4,7 @@ export * from './country';
4
4
  export * from './draft';
5
5
  export * from './draft-pick';
6
6
  export * from './event';
7
+ export * from './event-trait';
7
8
  export * from './iteration';
8
9
  export * from './league';
9
10
  export * from './libero-replacement';
@@ -14,6 +15,7 @@ export * from './match-set-stats';
14
15
  export * from './performance-stats';
15
16
  export * from './player';
16
17
  export * from './player-team';
18
+ export * from './player-trait';
17
19
  export * from './rally';
18
20
  export * from './rally-position';
19
21
  export * from './reception';
@@ -30,3 +32,4 @@ export * from './tournament';
30
32
  export * from './tournament-match';
31
33
  export * from './tournament-teams';
32
34
  export * from './user';
35
+ export * from './trait';
@@ -19,6 +19,7 @@ export declare class MatchModel extends Model<MatchAttributes, MatchCreationAttr
19
19
  away_team: string;
20
20
  scheduled_date: Date;
21
21
  is_simulated: boolean;
22
+ MatchSets: MatchSetModel[];
22
23
  MatchRatings: MatchRatingModel[];
23
24
  getMatchRatings: Sequelize.HasManyGetAssociationsMixin<MatchRatingModel>;
24
25
  setMatchRatings: Sequelize.HasManySetAssociationsMixin<MatchRatingModel, MatchRatingId>;
@@ -30,7 +31,6 @@ export declare class MatchModel extends Model<MatchAttributes, MatchCreationAttr
30
31
  hasMatchRating: Sequelize.HasManyHasAssociationMixin<MatchRatingModel, MatchRatingId>;
31
32
  hasMatchRatings: Sequelize.HasManyHasAssociationsMixin<MatchRatingModel, MatchRatingId>;
32
33
  countMatchRatings: Sequelize.HasManyCountAssociationsMixin;
33
- MatchSets: MatchSetModel[];
34
34
  getMatchSets: Sequelize.HasManyGetAssociationsMixin<MatchSetModel>;
35
35
  setMatchSets: Sequelize.HasManySetAssociationsMixin<MatchSetModel, MatchSetId>;
36
36
  addMatchSet: Sequelize.HasManyAddAssociationMixin<MatchSetModel, MatchSetId>;
@@ -0,0 +1,23 @@
1
+ import * as Sequelize from 'sequelize';
2
+ import { Model } from 'sequelize';
3
+ import type { PlayerId, PlayerModel, TraitId, TraitModel } from '.';
4
+ export interface PlayerTraitAttributes {
5
+ player_id: string;
6
+ trait_id: string;
7
+ }
8
+ export type PlayerTraitPk = 'player_id' | 'trait_id';
9
+ export type PlayerTraitId = PlayerTraitModel[PlayerTraitPk];
10
+ export type PlayerTraitCreationAttributes = PlayerTraitAttributes;
11
+ export declare class PlayerTraitModel extends Model<PlayerTraitAttributes, PlayerTraitCreationAttributes> implements PlayerTraitAttributes {
12
+ player_id: string;
13
+ trait_id: string;
14
+ player: PlayerModel;
15
+ getPlayer: Sequelize.BelongsToGetAssociationMixin<PlayerModel>;
16
+ setPlayer: Sequelize.BelongsToSetAssociationMixin<PlayerModel, PlayerId>;
17
+ createPlayer: Sequelize.BelongsToCreateAssociationMixin<PlayerModel>;
18
+ trait: TraitModel;
19
+ getTrait: Sequelize.BelongsToGetAssociationMixin<TraitModel>;
20
+ setTrait: Sequelize.BelongsToSetAssociationMixin<TraitModel, TraitId>;
21
+ createTrait: Sequelize.BelongsToCreateAssociationMixin<TraitModel>;
22
+ static initModel(sequelize: Sequelize.Sequelize): typeof PlayerTraitModel;
23
+ }
@@ -0,0 +1,38 @@
1
+ import { DataTypes, Model } from 'sequelize';
2
+ export class PlayerTraitModel extends Model {
3
+ static initModel(sequelize) {
4
+ return PlayerTraitModel.init({
5
+ player_id: {
6
+ type: DataTypes.UUID,
7
+ allowNull: false,
8
+ primaryKey: true,
9
+ references: {
10
+ model: 'Player',
11
+ key: 'player_id'
12
+ }
13
+ },
14
+ trait_id: {
15
+ type: DataTypes.UUID,
16
+ allowNull: false,
17
+ primaryKey: true,
18
+ references: {
19
+ model: 'Trait',
20
+ key: 'trait_id'
21
+ }
22
+ }
23
+ }, {
24
+ sequelize,
25
+ tableName: 'PlayerTrait',
26
+ schema: 'public',
27
+ timestamps: false,
28
+ indexes: [{
29
+ name: 'playertrait_pk',
30
+ unique: true,
31
+ fields: [
32
+ { name: 'trait_id' },
33
+ { name: 'player_id' },
34
+ ]
35
+ }]
36
+ });
37
+ }
38
+ }
@@ -1,19 +1,16 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model } from 'sequelize';
3
- import type { BlockId, CountryId, DraftPickId, EventId, LiberoReplacementId, MatchSetId, MatchSetStatsId, PerformanceStatsId, PlayerTeamId, RallyId, RallyPositionId, ReceptionId, ScoreId, ServeId, SetId, SpikeId, SubstitutionId } from '.';
4
- import { BlockModel, CountryModel, DraftPickModel, EventModel, LiberoReplacementModel, MatchSetModel, MatchSetStatsAttributes, MatchSetStatsModel, PerformanceStatsAttributes, PerformanceStatsModel, PlayerTeamModel, RallyModel, RallyPositionModel, ReceptionModel, ScoreModel, ServeModel, SetModel, SpikeModel, SubstitutionModel } from '.';
3
+ import { BlockId, BlockModel, CountryId, CountryModel, DraftPickId, DraftPickModel, EventId, EventModel, LiberoReplacementId, LiberoReplacementModel, MatchSetId, MatchSetModel, MatchSetStatsAttributes, MatchSetStatsId, MatchSetStatsModel, PerformanceStatsAttributes, PerformanceStatsId, PerformanceStatsModel, PlayerTeamId, PlayerTeamModel, RallyId, RallyModel, RallyPositionId, RallyPositionModel, ReceptionId, ReceptionModel, ScoreId, ScoreModel, ServeId, ServeModel, SetId, SetModel, SpikeId, SpikeModel, SubstitutionId, SubstitutionModel, TraitId, TraitModel } from '.';
5
4
  export interface PlayerAttributes {
6
5
  player_id: string;
7
6
  roles: RoleType[];
8
7
  first_name: string;
9
8
  last_name: string;
10
9
  country_id: string;
11
- traits: TraitType[];
12
10
  PerformanceStat?: PerformanceStatsAttributes;
13
11
  MatchSetStats?: MatchSetStatsAttributes[];
14
12
  }
15
13
  export type RoleType = 'SETTER' | 'LIBERO' | 'OUTSIDE_HITTER' | 'OPPOSITE_HITTER' | 'MIDDLE_BLOCKER' | 'DEFENSIVE_SPECIALIST';
16
- export type TraitType = 'MARKSMAN' | 'MOVING_WALL' | 'MASTER_MIND' | 'METEOR_SERVE' | 'VIGOROUS' | 'GUARDIAN';
17
14
  export type PlayerPk = 'player_id';
18
15
  export type PlayerId = PlayerModel[PlayerPk];
19
16
  export type PlayerCreationAttributes = PlayerAttributes;
@@ -23,7 +20,8 @@ export declare class PlayerModel extends Model<PlayerAttributes, PlayerCreationA
23
20
  first_name: string;
24
21
  last_name: string;
25
22
  country_id: string;
26
- traits: TraitType[];
23
+ PerformanceStat: PerformanceStatsModel;
24
+ MatchSetStats: MatchSetStatsModel[];
27
25
  country: CountryModel;
28
26
  getCountry: Sequelize.BelongsToGetAssociationMixin<CountryModel>;
29
27
  setCountry: Sequelize.BelongsToSetAssociationMixin<CountryModel, CountryId>;
@@ -142,7 +140,6 @@ export declare class PlayerModel extends Model<PlayerAttributes, PlayerCreationA
142
140
  hasMatchSet: Sequelize.BelongsToManyHasAssociationMixin<MatchSetModel, MatchSetId>;
143
141
  hasMatchSets: Sequelize.BelongsToManyHasAssociationsMixin<MatchSetModel, MatchSetId>;
144
142
  countMatchSets: Sequelize.BelongsToManyCountAssociationsMixin;
145
- MatchSetStats: MatchSetStatsModel[];
146
143
  getMatchSetStats: Sequelize.HasManyGetAssociationsMixin<MatchSetStatsModel>;
147
144
  setMatchSetStats: Sequelize.HasManySetAssociationsMixin<MatchSetStatsModel, MatchSetStatsId>;
148
145
  addMatchSetStat: Sequelize.HasManyAddAssociationMixin<MatchSetStatsModel, MatchSetStatsId>;
@@ -153,7 +150,6 @@ export declare class PlayerModel extends Model<PlayerAttributes, PlayerCreationA
153
150
  hasMatchSetStat: Sequelize.HasManyHasAssociationMixin<MatchSetStatsModel, MatchSetStatsId>;
154
151
  hasMatchSetStats: Sequelize.HasManyHasAssociationsMixin<MatchSetStatsModel, MatchSetStatsId>;
155
152
  countMatchSetStats: Sequelize.HasManyCountAssociationsMixin;
156
- PerformanceStat: PerformanceStatsModel;
157
153
  getPerformanceStat: Sequelize.HasOneGetAssociationMixin<PerformanceStatsModel>;
158
154
  setPerformanceStat: Sequelize.HasOneSetAssociationMixin<PerformanceStatsModel, PerformanceStatsId>;
159
155
  createPerformanceStat: Sequelize.HasOneCreateAssociationMixin<PerformanceStatsModel>;
@@ -260,5 +256,16 @@ export declare class PlayerModel extends Model<PlayerAttributes, PlayerCreationA
260
256
  hasInSubstitution: Sequelize.HasManyHasAssociationMixin<SubstitutionModel, SubstitutionId>;
261
257
  hasInSubstitutions: Sequelize.HasManyHasAssociationsMixin<SubstitutionModel, SubstitutionId>;
262
258
  countInSubstitutions: Sequelize.HasManyCountAssociationsMixin;
259
+ Traits: TraitModel[];
260
+ getTraits: Sequelize.BelongsToManyGetAssociationsMixin<TraitModel>;
261
+ setTraits: Sequelize.BelongsToManySetAssociationsMixin<TraitModel, TraitId>;
262
+ addTrait: Sequelize.BelongsToManyAddAssociationMixin<TraitModel, TraitId>;
263
+ addTraits: Sequelize.BelongsToManyAddAssociationsMixin<TraitModel, TraitId>;
264
+ createTrait: Sequelize.BelongsToManyCreateAssociationMixin<TraitModel>;
265
+ removeTrait: Sequelize.BelongsToManyRemoveAssociationMixin<TraitModel, TraitId>;
266
+ removeTraits: Sequelize.BelongsToManyRemoveAssociationsMixin<TraitModel, TraitId>;
267
+ hasTrait: Sequelize.BelongsToManyHasAssociationMixin<TraitModel, TraitId>;
268
+ hasTraits: Sequelize.BelongsToManyHasAssociationsMixin<TraitModel, TraitId>;
269
+ countTraits: Sequelize.BelongsToManyCountAssociationsMixin;
263
270
  static initModel(sequelize: Sequelize.Sequelize): typeof PlayerModel;
264
271
  }
@@ -26,10 +26,6 @@ export class PlayerModel extends Model {
26
26
  model: 'Country',
27
27
  key: 'country_id'
28
28
  }
29
- },
30
- traits: {
31
- type: DataTypes.ARRAY(DataTypes.ENUM('MARKSMAN', 'MOVING_WALL', 'MASTER_MIND', 'METEOR_SERVE', 'VIGOROUS', 'GUARDIAN')),
32
- allowNull: false
33
29
  }
34
30
  }, {
35
31
  sequelize,
@@ -1,6 +1,6 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model } from 'sequelize';
3
- import { CourtTarget, EventType, PlayerId, PlayerModel, RallyId, RallyModel, TraitType } from '.';
3
+ import { CourtTarget, EventTraitAttributes, EventTraitId, EventTraitModel, EventType, PlayerId, PlayerModel, RallyId, RallyModel, TraitId, TraitModel } from '.';
4
4
  export interface ReceptionAttributes {
5
5
  event_id: string;
6
6
  rally_id: string;
@@ -12,6 +12,7 @@ export interface ReceptionAttributes {
12
12
  player_id: string;
13
13
  modifier: number;
14
14
  score: number;
15
+ EventTraits?: EventTraitAttributes[];
15
16
  }
16
17
  export type ReceptionFailure = 'NO_FAILURE' | 'FAULT' | 'MISS' | 'OUT_OF_BOUNDS' | 'BAD_PASS';
17
18
  export type ReceptionType = 'DIG' | 'OVERHAND' | 'ONE_HAND' | 'OTHER_BODY_PART';
@@ -29,7 +30,6 @@ export declare class ReceptionModel extends Model<ReceptionAttributes, Reception
29
30
  player_id: string;
30
31
  modifier: number;
31
32
  score: number;
32
- active_traits: TraitType[];
33
33
  player: PlayerModel;
34
34
  getPlayer: Sequelize.BelongsToGetAssociationMixin<PlayerModel>;
35
35
  setPlayer: Sequelize.BelongsToSetAssociationMixin<PlayerModel, PlayerId>;
@@ -38,5 +38,27 @@ export declare class ReceptionModel extends Model<ReceptionAttributes, Reception
38
38
  getRally: Sequelize.BelongsToGetAssociationMixin<RallyModel>;
39
39
  setRally: Sequelize.BelongsToSetAssociationMixin<RallyModel, RallyId>;
40
40
  createRally: Sequelize.BelongsToCreateAssociationMixin<RallyModel>;
41
+ Traits: TraitModel[];
42
+ getTraits: Sequelize.BelongsToManyGetAssociationsMixin<TraitModel>;
43
+ setTraits: Sequelize.BelongsToManySetAssociationsMixin<TraitModel, TraitId>;
44
+ addTrait: Sequelize.BelongsToManyAddAssociationMixin<TraitModel, TraitId>;
45
+ addTraits: Sequelize.BelongsToManyAddAssociationsMixin<TraitModel, TraitId>;
46
+ createTrait: Sequelize.BelongsToManyCreateAssociationMixin<TraitModel>;
47
+ removeTrait: Sequelize.BelongsToManyRemoveAssociationMixin<TraitModel, TraitId>;
48
+ removeTraits: Sequelize.BelongsToManyRemoveAssociationsMixin<TraitModel, TraitId>;
49
+ hasTrait: Sequelize.BelongsToManyHasAssociationMixin<TraitModel, TraitId>;
50
+ hasTraits: Sequelize.BelongsToManyHasAssociationsMixin<TraitModel, TraitId>;
51
+ countTraits: Sequelize.BelongsToManyCountAssociationsMixin;
52
+ EventTraits: EventTraitModel[];
53
+ getEventTraits: Sequelize.HasManyGetAssociationsMixin<EventTraitModel>;
54
+ setEventTraits: Sequelize.HasManySetAssociationsMixin<EventTraitModel, EventTraitId>;
55
+ addEventTrait: Sequelize.HasManyAddAssociationMixin<EventTraitModel, EventTraitId>;
56
+ addEventTraits: Sequelize.HasManyAddAssociationsMixin<EventTraitModel, EventTraitId>;
57
+ createEventTrait: Sequelize.HasManyCreateAssociationMixin<EventTraitModel>;
58
+ removeEventTrait: Sequelize.HasManyRemoveAssociationMixin<EventTraitModel, EventTraitId>;
59
+ removeEventTraits: Sequelize.HasManyRemoveAssociationsMixin<EventTraitModel, EventTraitId>;
60
+ hasEventTrait: Sequelize.HasManyHasAssociationMixin<EventTraitModel, EventTraitId>;
61
+ hasEventTraits: Sequelize.HasManyHasAssociationsMixin<EventTraitModel, EventTraitId>;
62
+ countEventTraits: Sequelize.HasManyCountAssociationsMixin;
41
63
  static initModel(sequelize: Sequelize.Sequelize): typeof ReceptionModel;
42
64
  }
@@ -13,11 +13,11 @@ export type SeasonMatchCreationAttributes = SeasonMatchAttributes;
13
13
  export declare class SeasonMatchModel extends Model<SeasonMatchAttributes, SeasonMatchCreationAttributes> implements SeasonMatchAttributes {
14
14
  season_id: string;
15
15
  match_id: string;
16
+ match: MatchModel;
16
17
  season: SeasonModel;
17
18
  getSeason: Sequelize.BelongsToGetAssociationMixin<SeasonModel>;
18
19
  setSeason: Sequelize.BelongsToSetAssociationMixin<SeasonModel, SeasonId>;
19
20
  createSeason: Sequelize.BelongsToCreateAssociationMixin<SeasonModel>;
20
- match: MatchModel;
21
21
  getMatch: Sequelize.BelongsToGetAssociationMixin<MatchModel>;
22
22
  setMatch: Sequelize.BelongsToSetAssociationMixin<MatchModel, MatchId>;
23
23
  createMatch: Sequelize.BelongsToCreateAssociationMixin<MatchModel>;
@@ -18,11 +18,13 @@ export declare class SeasonModel extends Model<SeasonAttributes, SeasonCreationA
18
18
  season_id: string;
19
19
  iteration: number;
20
20
  league_id: string;
21
+ seasonTeams: TeamModel[];
22
+ SeasonMatches: SeasonMatchModel[];
23
+ league: LeagueModel;
21
24
  Iteration: IterationModel;
22
25
  getIteration: Sequelize.BelongsToGetAssociationMixin<IterationModel>;
23
26
  setIteration: Sequelize.BelongsToSetAssociationMixin<IterationModel, IterationId>;
24
27
  createIteration: Sequelize.BelongsToCreateAssociationMixin<IterationModel>;
25
- league: LeagueModel;
26
28
  getLeague: Sequelize.BelongsToGetAssociationMixin<LeagueModel>;
27
29
  setLeague: Sequelize.BelongsToSetAssociationMixin<LeagueModel, LeagueId>;
28
30
  createLeague: Sequelize.BelongsToCreateAssociationMixin<LeagueModel>;
@@ -37,7 +39,6 @@ export declare class SeasonModel extends Model<SeasonAttributes, SeasonCreationA
37
39
  hasSeasonTeam: Sequelize.HasManyHasAssociationMixin<SeasonTeamsModel, SeasonTeamsId>;
38
40
  hasSeasonTeams: Sequelize.HasManyHasAssociationsMixin<SeasonTeamsModel, SeasonTeamsId>;
39
41
  countSeasonTeams: Sequelize.HasManyCountAssociationsMixin;
40
- seasonTeams: TeamModel[];
41
42
  getseasonTeams: Sequelize.BelongsToManyGetAssociationsMixin<TeamModel>;
42
43
  setseasonTeams: Sequelize.BelongsToManySetAssociationsMixin<TeamModel, TeamId>;
43
44
  addTeam_id_Team: Sequelize.BelongsToManyAddAssociationMixin<TeamModel, TeamId>;
@@ -48,7 +49,6 @@ export declare class SeasonModel extends Model<SeasonAttributes, SeasonCreationA
48
49
  hasTeam_id_Team: Sequelize.BelongsToManyHasAssociationMixin<TeamModel, TeamId>;
49
50
  hasseasonTeams: Sequelize.BelongsToManyHasAssociationsMixin<TeamModel, TeamId>;
50
51
  countseasonTeams: Sequelize.BelongsToManyCountAssociationsMixin;
51
- SeasonMatches: SeasonMatchModel[];
52
52
  getSeasonMatches: Sequelize.HasManyGetAssociationsMixin<SeasonMatchModel>;
53
53
  setSeasonMatches: Sequelize.HasManySetAssociationsMixin<SeasonMatchModel, SeasonMatchId>;
54
54
  addSeasonMatch: Sequelize.HasManyAddAssociationMixin<SeasonMatchModel, SeasonMatchId>;
@@ -1,6 +1,6 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model } from 'sequelize';
3
- import { CourtTarget, EventType, PlayerId, PlayerModel, RallyId, RallyModel, TraitType } from '.';
3
+ import { CourtTarget, EventTraitAttributes, EventTraitId, EventTraitModel, EventType, PlayerId, PlayerModel, RallyId, RallyModel, TraitId, TraitModel } from '.';
4
4
  export interface ServeAttributes {
5
5
  event_id: string;
6
6
  rally_id: string;
@@ -12,6 +12,7 @@ export interface ServeAttributes {
12
12
  modifier: number;
13
13
  score: number;
14
14
  type: ServeType;
15
+ EventTraits?: EventTraitAttributes[];
15
16
  }
16
17
  export type ServeFailure = 'NO_FAILURE' | 'FAULT' | 'MISS' | 'NET' | 'OUT_OF_BOUNDS';
17
18
  export type ServeType = 'UNDERHAND' | 'OVERHAND_TOPSPIN' | 'OVERHAND_FLOAT' | 'JUMP_TOPSPIN' | 'JUMP_FLOAT';
@@ -29,7 +30,6 @@ export declare class ServeModel extends Model<ServeAttributes, ServeCreationAttr
29
30
  modifier: number;
30
31
  score: number;
31
32
  type: ServeType;
32
- active_traits: TraitType[];
33
33
  player: PlayerModel;
34
34
  getPlayer: Sequelize.BelongsToGetAssociationMixin<PlayerModel>;
35
35
  setPlayer: Sequelize.BelongsToSetAssociationMixin<PlayerModel, PlayerId>;
@@ -38,5 +38,27 @@ export declare class ServeModel extends Model<ServeAttributes, ServeCreationAttr
38
38
  getRally: Sequelize.BelongsToGetAssociationMixin<RallyModel>;
39
39
  setRally: Sequelize.BelongsToSetAssociationMixin<RallyModel, RallyId>;
40
40
  createRally: Sequelize.BelongsToCreateAssociationMixin<RallyModel>;
41
+ Traits: TraitModel[];
42
+ getTraits: Sequelize.BelongsToManyGetAssociationsMixin<TraitModel>;
43
+ setTraits: Sequelize.BelongsToManySetAssociationsMixin<TraitModel, TraitId>;
44
+ addTrait: Sequelize.BelongsToManyAddAssociationMixin<TraitModel, TraitId>;
45
+ addTraits: Sequelize.BelongsToManyAddAssociationsMixin<TraitModel, TraitId>;
46
+ createTrait: Sequelize.BelongsToManyCreateAssociationMixin<TraitModel>;
47
+ removeTrait: Sequelize.BelongsToManyRemoveAssociationMixin<TraitModel, TraitId>;
48
+ removeTraits: Sequelize.BelongsToManyRemoveAssociationsMixin<TraitModel, TraitId>;
49
+ hasTrait: Sequelize.BelongsToManyHasAssociationMixin<TraitModel, TraitId>;
50
+ hasTraits: Sequelize.BelongsToManyHasAssociationsMixin<TraitModel, TraitId>;
51
+ countTraits: Sequelize.BelongsToManyCountAssociationsMixin;
52
+ EventTraits: EventTraitModel[];
53
+ getEventTraits: Sequelize.HasManyGetAssociationsMixin<EventTraitModel>;
54
+ setEventTraits: Sequelize.HasManySetAssociationsMixin<EventTraitModel, EventTraitId>;
55
+ addEventTrait: Sequelize.HasManyAddAssociationMixin<EventTraitModel, EventTraitId>;
56
+ addEventTraits: Sequelize.HasManyAddAssociationsMixin<EventTraitModel, EventTraitId>;
57
+ createEventTrait: Sequelize.HasManyCreateAssociationMixin<EventTraitModel>;
58
+ removeEventTrait: Sequelize.HasManyRemoveAssociationMixin<EventTraitModel, EventTraitId>;
59
+ removeEventTraits: Sequelize.HasManyRemoveAssociationsMixin<EventTraitModel, EventTraitId>;
60
+ hasEventTrait: Sequelize.HasManyHasAssociationMixin<EventTraitModel, EventTraitId>;
61
+ hasEventTraits: Sequelize.HasManyHasAssociationsMixin<EventTraitModel, EventTraitId>;
62
+ countEventTraits: Sequelize.HasManyCountAssociationsMixin;
41
63
  static initModel(sequelize: Sequelize.Sequelize): typeof ServeModel;
42
64
  }