adrema/app/Setting/Contracts/Storeable.php

30 lines
568 B
PHP
Raw Normal View History

2023-06-01 12:04:31 +02:00
<?php
namespace App\Setting\Contracts;
2024-08-01 13:33:28 +02:00
use App\Setting\LocalSettings;
use Lorisleiva\Actions\ActionRequest;
use Spatie\LaravelSettings\Settings;
/**
* @mixin LocalSettings
*/
2023-06-01 12:04:31 +02:00
interface Storeable
{
2024-08-01 13:33:28 +02:00
public function url(): string;
/**
* @param array<string, mixed> $input
*/
public function fill(array $input): Settings;
2023-06-01 12:04:31 +02:00
/**
2024-08-01 13:33:28 +02:00
* @return array<string, mixed>
2023-06-01 12:04:31 +02:00
*/
2024-08-01 13:33:28 +02:00
public function rules(): array;
2024-08-01 11:32:14 +02:00
2024-08-01 13:33:28 +02:00
public function beforeSave(ActionRequest $request): void;
2024-08-01 17:30:55 +02:00
public function saveAttributes(ActionRequest $request): array;
2023-06-01 12:04:31 +02:00
}