<?php

namespace App\Models;

use App\Enums\ModerationDomainStatus;
use Illuminate\Database\Eloquent\Model;

class ContentModerationDomain extends Model
{
    protected $table = 'content_moderation_domains';

    protected $fillable = [
        'domain',
        'status',
        'times_seen',
        'times_flagged',
        'times_confirmed_spam',
        'linked_users_count',
        'linked_findings_count',
        'linked_clusters_count',
        'first_seen_at',
        'last_seen_at',
        'top_keywords_json',
        'top_content_types_json',
        'false_positive_count',
        'notes',
    ];

    protected $casts = [
        'status' => ModerationDomainStatus::class,
        'times_seen' => 'integer',
        'times_flagged' => 'integer',
        'times_confirmed_spam' => 'integer',
        'linked_users_count' => 'integer',
        'linked_findings_count' => 'integer',
        'linked_clusters_count' => 'integer',
        'first_seen_at' => 'datetime',
        'last_seen_at' => 'datetime',
        'top_keywords_json' => 'array',
        'top_content_types_json' => 'array',
        'false_positive_count' => 'integer',
    ];
}