f7cloud_client/lib/public/DirectEditing/ATemplate.php
root 8b6a0139db f7cloud_client
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-17 22:59:26 +00:00

52 lines
924 B
PHP

<?php
/**
* SPDX-FileCopyrightText: 2019 F7cloud GmbH and F7cloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
namespace OCP\DirectEditing;
use JsonSerializable;
/**
* Class ATemplate
*
* @since 18.0.0
*/
abstract class ATemplate implements JsonSerializable {
/**
* Return a unique id so the app can identify the template
*
* @since 18.0.0
* @return string
*/
abstract public function getId(): string;
/**
* Return a title that is displayed to the user
*
* @since 18.0.0
* @return string
*/
abstract public function getTitle(): string;
/**
* Return a link to the template preview image
*
* @since 18.0.0
* @return string
*/
abstract public function getPreview(): string;
/**
* @since 18.0.0
*/
public function jsonSerialize(): array {
return [
'id' => $this->getId(),
'title' => $this->getTitle(),
'preview' => $this->getPreview(),
];
}
}