<?php

namespace App\Api\Plugins;

interface ApiPluginInterface
{
    public function getIdentifier(): string;
    public function getName(): string;
    public function isEnabled(): bool;
    public function enable(): bool;
    public function disable(): bool;
    public function getStatus(string $imageUUID): array;
    public function getProgress(string $imageUUID): array;
    public function processImageStyleChange(\App\Models\Image $image, \App\Models\Style $style): array;
    public function getStyledImage(string $promptId): string;
    public function testConnection(array $data): bool;
    public function searchModels(string $searchTerm): array;
    public function checkAvailability(): array;
}