Initial Version
This commit is contained in:
44
shared/lib/Resource/Provider/ProviderInterface.php
Normal file
44
shared/lib/Resource/Provider/ProviderInterface.php
Normal file
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace KTXF\Resource\Provider;
|
||||
|
||||
/**
|
||||
* Resource Provider Interface
|
||||
*/
|
||||
interface ProviderInterface
|
||||
{
|
||||
|
||||
public const TYPE_AUTHENTICATION = 'authentication';
|
||||
public const TYPE_PEOPLE = 'people';
|
||||
public const TYPE_CHRONO = 'chrono';
|
||||
public const TYPE_FILES = 'files';
|
||||
public const TYPE_MAIL = 'mail';
|
||||
|
||||
/**
|
||||
* Provider type (e.g., 'authentication', 'storage', 'notification')
|
||||
*/
|
||||
public function type(): string;
|
||||
|
||||
/**
|
||||
* Unique identifier for this provider instance (e.g., UUID or 'password-auth')
|
||||
*/
|
||||
public function identifier(): string;
|
||||
|
||||
/**
|
||||
* Human-friendly name (e.g., 'Password Authentication Provider', 'S3 Storage Provider')
|
||||
*/
|
||||
public function label(): string;
|
||||
|
||||
/**
|
||||
* human-friendly description of this provider's functionality
|
||||
*/
|
||||
public function description(): string;
|
||||
|
||||
/**
|
||||
* Icon representing this provider (e.g., FontAwesome class)
|
||||
*/
|
||||
public function icon(): string;
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user