1<?php
2/**
3 * Copyright © 2019-2026 Rhubarb Tech Inc. All Rights Reserved.
4 *
5 * The Object Cache Pro Software and its related materials are property and confidential
6 * information of Rhubarb Tech Inc. Any reproduction, use, distribution, or exploitation
7 * of the Object Cache Pro Software and its related materials, in whole or in part,
8 * is strictly forbidden unless prior permission is obtained from Rhubarb Tech Inc.
9 *
10 * In addition, any reproduction, use, distribution, or exploitation of the Object Cache Pro
11 * Software and its related materials, in whole or in part, is subject to the End-User License
12 * Agreement accessible in the included `LICENSE` file, or at: https://objectcache.pro/eula
13 */
14
15declare(strict_types=1);
16
17namespace RedisCachePro\Support;
18
19// phpcs:disable PSR1.Classes.ClassDeclaration.MultipleClasses
20class PluginApiResponse
21{
22 //
23}
24
25class PluginApiUpdateResponse extends PluginApiResponse
26{
27 /** @var string */
28 public $version;
29
30 /** @var string */
31 public $php;
32
33 /** @var string */
34 public $wp;
35
36 /** @var ?string */
37 public $package;
38
39 /** @var ?object */
40 public $license;
41}
42
43class PluginApiInfoResponse extends PluginApiResponse
44{
45 /** @var string */
46 public $slug;
47
48 /** @var string */
49 public $name;
50
51 /** @var string */
52 public $homepage;
53
54 /** @var ?string */
55 public $download_link;
56
57 /** @var string */
58 public $author;
59
60 /** @var string */
61 public $author_profile;
62
63 /** @var string */
64 public $requires;
65
66 /** @var string */
67 public $requires_php;
68
69 /** @var string */
70 public $tested;
71
72 /** @var string */
73 public $added;
74
75 /** @var string */
76 public $version;
77
78 /** @var string */
79 public $last_updated;
80
81 /** @var int */
82 public $active_installs;
83
84 /** @var object */
85 public $icons;
86
87 /** @var object */
88 public $banners;
89
90 /** @var object */
91 public $sections;
92
93 /** @var object */
94 public $contributors;
95}
96
97class PluginApiLicenseResponse extends PluginApiResponse
98{
99 /** @var ?string */
100 public $token;
101
102 /** @var string */
103 public $state;
104
105 /** @var string */
106 public $stability;
107
108 /** @var ?string */
109 public $plan;
110
111 /** @var object */
112 public $organization;
113}
114
115class ObjectCacheInfo
116{
117 /** @var bool */
118 public $status;
119
120 /** @var object */
121 public $groups;
122
123 /** @var array<string> */
124 public $errors;
125
126 /** @var array<string, string> */
127 public $meta;
128}
129
130class ObjectCacheMetricsGroup
131{
132 /** @var int */
133 public $keys = 0;
134
135 /** @var int */
136 public $memory = 0;
137
138 /** @var float */
139 public $wait = 0.0;
140}
141// phpcs:enable PSR1.Classes.ClassDeclaration.MultipleClasses
142