1<?php
2
3namespace OAuth\Common\Token;
4
5/**
6 * Base token interface for any OAuth version.
7 */
8interface TokenInterface
9{
10    /**
11     * Denotes an unknown end of life time.
12     */
13    const EOL_UNKNOWN = -9001;
14
15    /**
16     * Denotes a token which never expires, should only happen in OAuth1.
17     */
18    const EOL_NEVER_EXPIRES = -9002;
19
20    /**
21     * @return string
22     */
23    public function getAccessToken();
24
25    /**
26     * @return int
27     */
28    public function getEndOfLife();
29
30    /**
31     * @return array
32     */
33    public function getExtraParams();
34
35    /**
36     * @param string $accessToken
37     */
38    public function setAccessToken($accessToken);
39
40    /**
41     * @param int $endOfLife
42     */
43    public function setEndOfLife($endOfLife);
44
45    /**
46     * @param int $lifetime
47     */
48    public function setLifetime($lifetime);
49
50    /**
51     * @param array $extraParams
52     */
53    public function setExtraParams(array $extraParams);
54
55    /**
56     * @return string
57     */
58    public function getRefreshToken();
59
60    /**
61     * @param string $refreshToken
62     */
63    public function setRefreshToken($refreshToken);
64}
65