. */ declare(strict_types=1); namespace Fisharebest\Webtrees\Module; use Symfony\Component\HttpFoundation\RedirectResponse; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; /** * Interface ModuleAnalyticsInterface - Classes and libraries for module system */ interface ModuleAnalyticsInterface extends ModuleInterface { /** * Should we add this tracker? * * @return bool */ public function analyticsCanShow(): bool; /** * Form fields to edit the parameters. * * @return string */ public function analyticsFormFields(): string; /** * The parameters that need to be embedded in the snippet. * * @return string[] */ public function analyticsParameters(): array; /** * Embed placeholders in the snippet. * * @param string[] $parameters * * @return string */ public function analyticsSnippet(array $parameters): string; /** * @return Response */ public function getAdminAction(): Response; /** * @param Request $request * * @return RedirectResponse */ public function postAdminAction(Request $request): RedirectResponse; }