# polylang/3.8.6/src/Model/Languages_Proxy_Interface.php

Polylang, version 3.8.6. 39 lines.

- Page: https://pluginprobe.com/plugins/polylang/3.8.6/code/src/Model/Languages_Proxy_Interface.php
- Raw: https://pluginprobe.com/plugins/polylang/3.8.6/raw/src/Model/Languages_Proxy_Interface.php
- Modified: 2026-02-23T14:05:20+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/polylang/3.8.6/code/src/Model/Languages_Proxy_Interface.php#L10-L20`.

```php
<?php
/**
 * @package Polylang
 */

namespace WP_Syntex\Polylang\Model;

use PLL_Language;

defined( 'ABSPATH' ) || exit;

/**
 * Interface allowing to proxy the list of languages.
 *
 * @since 3.8
 */
interface Languages_Proxy_Interface {
	/**
	 * Returns the proxy's key.
	 *
	 * @since 3.8
	 *
	 * @return string
	 *
	 * @phpstan-return non-falsy-string
	 */
	public function key(): string;

	/**
	 * Returns the list of available languages after passing it through this proxy.
	 *
	 * @since 3.8
	 *
	 * @param PLL_Language[] $languages List of languages to filter.
	 * @return PLL_Language[]
	 */
	public function filter( array $languages ): array;
}

```
