woocommerce-paypal-payments/lib/packages/Inpsyde/Modularity/Properties/Properties.php
2026-03-16 15:59:43 +00:00

105 lines
2.9 KiB
PHP

<?php
declare (strict_types=1);
namespace WooCommerce\PayPalCommerce\Vendor\Inpsyde\Modularity\Properties;
interface Properties
{
public const PROP_AUTHOR = 'author';
public const PROP_AUTHOR_URI = 'authorUri';
public const PROP_DESCRIPTION = 'description';
public const PROP_DOMAIN_PATH = 'domainPath';
public const PROP_NAME = 'name';
public const PROP_TEXTDOMAIN = 'textDomain';
public const PROP_URI = 'uri';
public const PROP_VERSION = 'version';
public const PROP_REQUIRES_WP = 'requiresWp';
public const PROP_REQUIRES_PHP = 'requiresPhp';
public const PROP_TAGS = 'tags';
public const DEFAULT_PROPERTIES = [self::PROP_AUTHOR => '', self::PROP_AUTHOR_URI => '', self::PROP_DESCRIPTION => '', self::PROP_DOMAIN_PATH => '', self::PROP_NAME => '', self::PROP_TEXTDOMAIN => '', self::PROP_URI => '', self::PROP_VERSION => '', self::PROP_REQUIRES_WP => null, self::PROP_REQUIRES_PHP => null, self::PROP_TAGS => []];
/**
* @param string $key
* @param mixed $default
* @return mixed
*/
public function get(string $key, $default = null);
/**
* @param string $key
* @return bool
*/
public function has(string $key): bool;
/**
* @return bool
*/
public function isDebug(): bool;
/**
* @return string
*/
public function baseName(): string;
/**
* @return string
*/
public function basePath(): string;
/**
* @return string|null
*/
public function baseUrl(): ?string;
/**
* @return string
*/
public function author(): string;
/**
* @return string
*/
public function authorUri(): string;
/**
* @return string
*/
public function description(): string;
/**
* @return string
*/
public function textDomain(): string;
/**
* @return string
*/
public function domainPath(): string;
/**
* The name of the plugin, theme or library.
*
* @return string
*/
public function name(): string;
/**
* The home page of the plugin, theme or library.
*
* @return string
*/
public function uri(): string;
/**
* @return string
*/
public function version(): string;
/**
* Optional. Specify the minimum required WordPress version.
*
* @return string|null
*/
public function requiresWp(): ?string;
/**
* Optional. Specify the minimum required PHP version.
*
* @return string|null
*/
public function requiresPhp(): ?string;
/**
* Optional. Currently, only available for Theme and Library.
* Plugins do not have support for "tags"/"keywords" in header.
*
* @return string[]
*
* @see https://developer.wordpress.org/reference/classes/wp_theme/#properties
* @see https://getcomposer.org/doc/04-schema.md#keywords
*/
public function tags(): array;
}