import { DomainEvent } from './domain-event.base';

export interface RewardAddedPayload {
  userId: string;
  walletId: string;
  usdtAmount: string;
  hashpowerAmount: string;
  expireAt: string;
  refOrderId?: string;
}

export class RewardAddedEvent extends DomainEvent {
  constructor(private readonly payload: RewardAddedPayload) {
    super({
      aggregateId: payload.walletId,
      aggregateType: 'WalletAccount',
    });
  }

  getPayload(): RewardAddedPayload {
    return this.payload;
  }
}
