* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/AFL-3.0 Academic Free License version 3.0 */ namespace PrestaShop\Module\PsAccounts\Account\Session; use PrestaShop\Module\PsAccounts\Account\Token\Token; use PrestaShop\Module\PsAccounts\Exception\RefreshTokenException; interface SessionInterface { /** * @return Token */ public function getToken(); /** * @param string $token * @param string $refreshToken * * @return void */ public function setToken($token, $refreshToken = null); /** * Refreshes and saves refreshed token * * @param string|null $refreshToken * * @return Token * * @throws RefreshTokenException */ public function refreshToken($refreshToken = null); /** * @deprecated use getValidToken instead * * Get or refreshes and saves token * * @param bool $forceRefresh * * @return Token */ public function getOrRefreshToken($forceRefresh = false); /** * Get or refreshes and saves token * * @param bool $forceRefresh * @param bool $throw * * @return Token * * @throws RefreshTokenException */ public function getValidToken($forceRefresh = false, $throw = true); /** * @return void */ public function cleanup(); }