<?php

namespace App\Events;

use Illuminate\Broadcasting\Channel;
use Illuminate\Broadcasting\InteractsWithSockets;
use Illuminate\Broadcasting\PresenceChannel;
use Illuminate\Broadcasting\PrivateChannel;
use Illuminate\Contracts\Broadcasting\ShouldBroadcast;
use Illuminate\Foundation\Events\Dispatchable;
use Illuminate\Queue\SerializesModels;

class NotificationEvent
{
    use Dispatchable, SerializesModels;

    public function __construct(
        public string $type,        // e.g. page_update, program_update
        public string $message,     // notification message
        public string $senderId,
        public string $receiverId,
        public ?string $franchiseeId = null,
        public array $data = [],     // extra payload like {page_id: 10}
        public string $status
    ) {
    }
}
