1<?php
2/*
3 * vim:set softtabstop=4 shiftwidth=4 expandtab:
4 *
5 * LICENSE: GNU Affero General Public License, version 3 (AGPL-3.0-or-later)
6 * Copyright 2001 - 2020 Ampache.org
7 *
8 * This program is free software: you can redistribute it and/or modify
9 * it under the terms of the GNU Affero General Public License as published by
10 * the Free Software Foundation, either version 3 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 * GNU Affero General Public License for more details.
17 *
18 * You should have received a copy of the GNU Affero General Public License
19 * along with this program.  If not, see <https://www.gnu.org/licenses/>.
20 *
21 */
22
23namespace Ampache\Module\Application\Admin\Access\Lib;
24
25interface AccessListItemInterface
26{
27    /**
28     * take the int level and return a named level
29     */
30    public function getLevelName(): string;
31
32    /**
33     * Return a name for the users covered by this ACL.
34     */
35    public function getUserName(): string;
36
37    /**
38     * This function returns the pretty name for our current type.
39     */
40    public function getTypeName(): string;
41
42    /**
43     * Returns a human readable representation of the start ip
44     */
45    public function getStartIp(): string;
46
47    /**
48     * Returns a human readable representation of the end ip
49     */
50    public function getEndIp(): string;
51
52    /**
53     * Return the acl item name
54     */
55    public function getName(): string;
56
57    /**
58     * Return the acl item id
59     */
60    public function getId(): int;
61
62    /**
63     * Returns the acl item level
64     */
65    public function getLevel(): int;
66
67    /**
68     * Returns the acl item type
69     */
70    public function getType(): string;
71
72    /**
73     * Returns the acl item user id
74     */
75    public function getUserId(): int;
76}
77