<?php

namespace App\Observers;

use App\Models\User;

class UserObserver
{
    /**
     * Handle events after all transactions are committed.
     *
     * @package App\Observers\UserObserver
     * @since 1.0.0
     *
     * @var bool
     */
    public $afterCommit = true;

    /**
     * Handle the User "retrieve" event.
     *
     * @package App\Observers\UserObserver
     * @since 1.0.0
     *
     * @param  \App\Models\User  $user
     *
     * @return void
     */
    public function retrieved(User $user)
    {
        //
    }

    /**
     * Handle the User "saving" event.
     * This may apply as either a create
     * or an update event.
     *
     * @package App\Observers\UserObserver
     * @since 1.0.0
     *
     * @param  \App\Models\User  $user
     *
     * @return void
     */
    public function saving(User $user)
    {
        //
    }

    /**
     * Handle the User "created" event.
     *
     * @package App\Observers\UserObserver
     * @since 1.0.0
     *
     * @param  \App\Models\User  $user
     *
     * @return void
     */
    public function created(User $user)
    {
        //
    }
 
    /**
     * Handle the User "updated" event.
     *
     * @package App\Observers\UserObserver
     * @since 1.0.0
     *
     * @param  \App\Models\User  $user
     *
     * @return void
     */
    public function updated(User $user)
    {
        //
    }
 
    /**
     * Handle the User "deleted" event.
     *
     * @package App\Observers\UserObserver
     * @since 1.0.0
     *
     * @param  \App\Models\User  $user
     *
     * @return void
     */
    public function deleted(User $user)
    {
        //
    }
 
    /**
     * Handle the User "restored" event.
     *
     * @package App\Observers\UserObserver
     * @since 1.0.0
     *
     * @param  \App\Models\User  $user
     *
     * @return void
     */
    public function restored(User $user)
    {
        //
    }
 
    /**
     * Handle the User "forceDeleted" event.
     *
     * @package App\Observers\UserObserver
     * @since 1.0.0
     *
     * @param  \App\Models\User  $user
     *
     * @return void
     */
    public function forceDeleted(User $user)
    {
        //
    }
}
