*/ use HasFactory, HasUlids; protected $fillable = [ 'user_id', 'amount', 'type', 'source_type', 'source_id', 'idempotency_key', 'daily_reward_key', 'metadata', ]; public function user(): BelongsTo { return $this->belongsTo(User::class); } public function source(): MorphTo { return $this->morphTo(); } protected function casts(): array { return [ 'amount' => 'integer', 'type' => GenerationCreditTransactionType::class, 'metadata' => 'array', ]; } }