* @license https://www.gnu.org/licenses/agpl-3.0.en.html/ GNU Affero General Public License v3.0 */ namespace App\Models; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsTo; use AllowDynamicProperties; /** * App\Models\Gift. * * @property int $id * @property ?int $sender_id * @property ?int $recipient_id * @property ?int $post_id * @property string $bon * @property \Illuminate\Support\Carbon $created_at */ #[AllowDynamicProperties] final class PostTip extends Model { protected $guarded = []; public $timestamps = false; /** * Get the attributes that should be cast. * * @return array{created_at: 'datetime'} */ protected function casts(): array { return [ 'created_at' => 'datetime', ]; } /** * Get the user that sent the post tip. * * @return BelongsTo */ public function sender(): BelongsTo { return $this->belongsTo(User::class)->withTrashed(); } /** * Get the user that received the post tip. * * @return BelongsTo */ public function recipient(): BelongsTo { return $this->belongsTo(User::class)->withTrashed(); } /** * Get the post associated with the post tip. * * @return BelongsTo */ public function post(): BelongsTo { return $this->belongsTo(Post::class); } }