Lines n/a 0 / 0
Functions and Methods n/a 0 / 0
Classes and Traits n/a 0 / 0
Name Lines Functions and Methods CRAP Classes and Traits
1<?php
2
3declare(strict_types=1);
4
5namespace Stewart\Runtime\Broker;
6
7use DateTimeZone;
8use Stewart\Contracts\Sun\GeoLocation;
9use Throwable;
10
11interface HaSession
12{
13    /** @throws Throwable */
14    public function open(HaSessionListener $listener): void;
15
16    public function close(): void;
17
18    public function isConnected(): bool;
19
20    public function snapshotStateCache(): StateCacheSnapshot;
21
22    public function snapshotRegistry(): RegistryCacheSnapshot;
23
24    public function refreshRegistry(): bool;
25
26    public function countEntities(): int;
27
28    public function getTimeZone(): DateTimeZone;
29
30    public function getHaVersion(): ?string;
31
32    public function getHaUserId(): ?string;
33
34    public function getLocation(): ?GeoLocation;
35
36    /** @return list<string> */
37    public function listEntityIds(): array;
38}