import type { OrderStatus, StatusTransitionRef } from '../interface/order.interface';

export class OrderCreatedEvent {
  constructor(
    public readonly orderId: string,
    public readonly restaurantId: string,
    public readonly orderNumber: string,
    public readonly total: number,
  ) {}
}

export class OrderStatusChangedEvent {
  constructor(
    public readonly orderId: string,
    public readonly userId: string,
    public readonly orderNumber: string,
    public readonly restaurantId: string,
    public readonly previousStatus: OrderStatus,
    public readonly newStatus: OrderStatus,
    public readonly changedBy: StatusTransitionRef,
  ) {}
}
