<?php

namespace App\GooglePlugins\Contracts;

use App\Models\GooglePlugin;

interface GooglePluginInterface
{
    public function getCode(): string;
    public function getName(): string;
    public function getDescription(): string;
    public function getVersion(): string;
    public function getAuthor(): string;

    public function getConfigFields(): array;
    public function validateConfig(array $config): array;
    public function isConfigured(GooglePlugin $plugin): bool;

    public function renderHead(GooglePlugin $plugin): string;
    public function renderBody(GooglePlugin $plugin): string;
}
