<?php

declare(strict_types=1);

namespace Database\Factories;

use Illuminate\Database\Eloquent\Factories\Factory;
use ImovelZapAi\Owners\Domain\Enums\OwnerContactChannel;
use ImovelZapAi\Owners\Infrastructure\Persistence\Eloquent\OwnerContactModel;
use ImovelZapAi\Owners\Infrastructure\Persistence\Eloquent\OwnerModel;
use ImovelZapAi\Tenancy\Infrastructure\Persistence\Eloquent\TenantModel;

/** @extends Factory<OwnerContactModel> */
class OwnerContactFactory extends Factory
{
    protected $model = OwnerContactModel::class;

    public function definition(): array
    {
        return [
            'tenant_id' => TenantModel::factory(),
            'owner_id' => OwnerModel::factory(),
            'channel' => OwnerContactChannel::Phone,
            'value' => '5511'.fake()->numerify('########'),
            'is_primary' => true,
        ];
    }
}
