Files
vito/app/ServerProviders/ServerProvider.php
Saeed Vaziry 131b828807 Plugins base (#613)
* wip

* wip

* cleanup

* notification channels

* phpstan

* services

* remove server types

* refactoring

* refactoring
2025-06-14 14:35:18 +02:00

56 lines
1.2 KiB
PHP
Executable File

<?php
namespace App\ServerProviders;
interface ServerProvider
{
public static function id(): string;
/**
* @param array<string, mixed> $input
* @return array<string, mixed>
*/
public function createRules(array $input): array;
/**
* @param array<string, mixed> $input
* @return array<string, mixed>
*/
public function credentialValidationRules(array $input): array;
/**
* @param array<string, mixed> $input
* @return array<string, mixed>
*/
public function credentialData(array $input): array;
/**
* @param array<string, mixed> $input
* @return array<string, mixed>
*/
public function data(array $input): array;
/**
* @param array<string, mixed> $credentials
*/
public function connect(array $credentials): bool;
/**
* @return array<string, mixed>
*/
public function plans(?string $region): array;
/**
* @return array<string, mixed>
*/
public function regions(): array;
public function generateKeyPair(): void;
public function create(): void;
public function isRunning(): bool;
public function delete(): void;
}