Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
n/a
0 / 0
n/a
0 / 0
CRAP
n/a
0 / 0
1<?php
2
3declare(strict_types=1);
4
5namespace Icawebdesign\Hibp\Breach;
6
7use Icawebdesign\Hibp\HibpHttp;
8use Illuminate\Support\Collection;
9
10interface BreachInterface
11{
12    public function __construct(HibpHttp $client);
13
14    /**
15     * @param string|null $domainFilter
16     * @param array<string, mixed> $options
17     *
18     * @return Collection<int, BreachSiteEntity>
19     */
20    public function getAllBreachSites(?string $domainFilter = null, array $options = []): Collection;
21
22    /**
23     * @param string $account
24     * @param array<string, mixed> $options
25     *
26     * @return BreachSiteEntity
27     */
28    public function getBreach(string $account, array $options = []): BreachSiteEntity;
29
30    /**
31     * @param array<string, mixed> $options
32     *
33     * @return Collection<int, string>
34     */
35    public function getAllDataClasses(array $options = []): Collection;
36
37    /**
38     * @param string $emailAddress
39     * @param bool $includeUnverified
40     * @param ?string $domainFilter
41     * @param array<string, mixed> $options
42     *
43     * @return Collection<int, BreachSiteEntity>
44     */
45    public function getBreachedAccount(
46        string $emailAddress,
47        bool $includeUnverified = false,
48        ?string $domainFilter = null,
49        array $options = [],
50    ): Collection;
51
52    /**
53     * @param string $emailAddress
54     * @param bool $includeUnverified
55     * @param string|null $domainFilter
56     * @param array<string, mixed> $options
57     *
58     * @return Collection<int, BreachSiteTruncatedEntity>
59     */
60    public function getBreachedAccountTruncated(
61        string $emailAddress,
62        bool $includeUnverified = false,
63        ?string $domainFilter = null,
64        array $options = [],
65    ): Collection;
66
67    /**
68     * @param array<string, mixed> $options
69     *
70     * @return BreachSiteEntity
71     */
72    public function getLatestBreach(array $options = []): BreachSiteEntity;
73}