File: /home/xedaptot/be.naniguide.com/app/ActivityLog/ActivityInterface.php
<?php
namespace App\ActivityLog;
use App\Model\ActivityLog;
use App\Model\Customer;
use App\Model\User;
interface ActivityInterface
{
/**
* The activity type key, e.g. 'campaign.created'.
*/
public static function type(): string;
/**
* The subject type for filtering, e.g. 'campaign'.
*/
public static function subjectType(): string;
/**
* Persist a new activity log row.
*/
public function record(): ActivityLog;
/**
* Render a human-readable HTML message from stored data.
*/
public static function toHtml(ActivityLog $log): string;
/**
* Render a plain-text version.
*/
public static function toPlainText(ActivityLog $log): string;
/**
* Material icon name for this activity type.
*/
public static function icon(): string;
}