<?php

namespace Database\Factories;

use App\Enums\BookingDocumentType;
use App\Models\Booking;
use App\Models\BookingDocument;
use App\Models\User;
use Illuminate\Database\Eloquent\Factories\Factory;

/**
 * @extends Factory<BookingDocument>
 */
class BookingDocumentFactory extends Factory
{
    /**
     * @return array<string, mixed>
     */
    public function definition(): array
    {
        return [
            'booking_id' => Booking::factory(),
            'type' => BookingDocumentType::PaymentProof,
            'path' => 'bookings/documents/'.fake()->uuid().'.jpg',
            'original_name' => 'proof.jpg',
            'mime_type' => 'image/jpeg',
            'size' => fake()->numberBetween(10_000, 500_000),
            'uploaded_by' => User::factory(),
            'created_at' => now(),
        ];
    }
}
