1
+ import { EventStoreAggregateRoot } from '../../../../src' ;
2
+ import { HeroDamagedEnemyEvent } from '../events/impl/hero-damaged-enemy.event' ;
3
+ import { HeroDropItemEvent } from '../events/impl/hero-drop-item.event' ;
1
4
import { HeroFoundItemEvent } from '../events/impl/hero-found-item.event' ;
2
5
import { HeroKilledDragonEvent } from '../events/impl/hero-killed-dragon.event' ;
3
- import { HeroDropItemEvent } from '../events/impl/hero-drop-item.event' ;
4
- import { HeroDamagedEnemyEvent } from '../events/impl/hero-damaged-enemy.event' ;
5
- import { EventStoreAggregateRoot } from '../../../../src' ;
6
6
7
7
export class Hero extends EventStoreAggregateRoot {
8
- constructor ( private readonly id ) {
8
+ constructor ( private readonly id : string ) {
9
9
super ( ) ;
10
10
// comment this line to test correlation-id auto-generated stream
11
11
this . streamName = `hero-${ id } ` ;
12
12
}
13
13
14
- damageEnemy ( dragonId : string , hitPoint : number ) {
14
+ damageEnemy ( dragonId : string , hitPoint : number ) : Promise < void > {
15
15
return this . apply (
16
16
new HeroDamagedEnemyEvent ( {
17
17
heroId : this . id ,
@@ -22,7 +22,7 @@ export class Hero extends EventStoreAggregateRoot {
22
22
) ;
23
23
}
24
24
25
- killEnemy ( dragonId : string ) {
25
+ killEnemy ( dragonId : string ) : Promise < void > {
26
26
// logic
27
27
return this . apply (
28
28
new HeroKilledDragonEvent ( {
@@ -32,7 +32,7 @@ export class Hero extends EventStoreAggregateRoot {
32
32
) ;
33
33
}
34
34
35
- addItem ( itemId : string ) {
35
+ addItem ( itemId : string ) : Promise < void > {
36
36
// logic
37
37
return this . apply (
38
38
new HeroFoundItemEvent ( {
@@ -42,7 +42,7 @@ export class Hero extends EventStoreAggregateRoot {
42
42
) ;
43
43
}
44
44
45
- dropItem ( itemId : string ) {
45
+ dropItem ( itemId : string ) : Promise < void > {
46
46
return this . apply (
47
47
new HeroDropItemEvent ( {
48
48
heroId : this . id ,
0 commit comments