1<?php
2
3declare(strict_types=1);
4
5namespace Sabre\DAV;
6
7/**
8 * The INode interface is the base interface, and the parent class of both ICollection and IFile.
9 *
10 * @copyright Copyright (C) fruux GmbH (https://fruux.com/)
11 * @author Evert Pot (http://evertpot.com/)
12 * @license http://sabre.io/license/ Modified BSD License
13 */
14interface INode
15{
16    /**
17     * Deleted the current node.
18     */
19    public function delete();
20
21    /**
22     * Returns the name of the node.
23     *
24     * This is used to generate the url.
25     *
26     * @return string
27     */
28    public function getName();
29
30    /**
31     * Renames the node.
32     *
33     * @param string $name The new name
34     */
35    public function setName($name);
36
37    /**
38     * Returns the last modification time, as a unix timestamp. Return null
39     * if the information is not available.
40     *
41     * @return int|null
42     */
43    public function getLastModified();
44}
45