@pelican.ts/sdk 0.2.2 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (200) hide show
  1. package/README.md +11 -8
  2. package/dist/index.d.mts +1502 -0
  3. package/dist/index.d.ts +1500 -7
  4. package/dist/index.js +1979 -19
  5. package/dist/index.js.map +1 -1
  6. package/dist/index.mjs +1943 -0
  7. package/dist/index.mjs.map +1 -0
  8. package/package.json +4 -3
  9. package/src/api/application/client.ts +40 -0
  10. package/src/api/application/database_hosts.ts +70 -0
  11. package/src/api/application/nodes.ts +72 -45
  12. package/src/api/application/nodes_allocations.ts +4 -6
  13. package/src/api/application/roles.ts +53 -0
  14. package/src/api/application/servers.ts +135 -0
  15. package/src/api/application/servers_databases.ts +49 -0
  16. package/src/api/application/types/container.ts +1 -3
  17. package/src/api/application/types/database_host.ts +11 -0
  18. package/src/api/application/types/node.ts +39 -4
  19. package/src/api/application/types/role.ts +8 -0
  20. package/src/api/application/types/server.ts +4 -4
  21. package/src/api/{common/types/server_allocations.ts → application/types/server_allocation.ts} +3 -2
  22. package/src/api/application/types/user.ts +4 -4
  23. package/src/api/application/users.ts +28 -18
  24. package/src/api/base/request.ts +3 -3
  25. package/src/api/client/server_allocations.ts +1 -1
  26. package/src/api/client/server_databases.ts +7 -7
  27. package/src/api/client/types/server.ts +1 -1
  28. package/src/api/client/types/server_allocation.ts +11 -0
  29. package/src/api/common/types/enums.ts +21 -0
  30. package/src/api/common/types/server_database.ts +1 -1
  31. package/src/index.ts +4 -4
  32. package/dist/api/application/client.d.ts +0 -8
  33. package/dist/api/application/client.d.ts.map +0 -1
  34. package/dist/api/application/client.js +0 -14
  35. package/dist/api/application/client.js.map +0 -1
  36. package/dist/api/application/nodes.d.ts +0 -36
  37. package/dist/api/application/nodes.d.ts.map +0 -1
  38. package/dist/api/application/nodes.js +0 -47
  39. package/dist/api/application/nodes.js.map +0 -1
  40. package/dist/api/application/nodes_allocations.d.ts +0 -11
  41. package/dist/api/application/nodes_allocations.d.ts.map +0 -1
  42. package/dist/api/application/nodes_allocations.js +0 -36
  43. package/dist/api/application/nodes_allocations.js.map +0 -1
  44. package/dist/api/application/types/container.d.ts +0 -12
  45. package/dist/api/application/types/container.d.ts.map +0 -1
  46. package/dist/api/application/types/container.js +0 -3
  47. package/dist/api/application/types/container.js.map +0 -1
  48. package/dist/api/application/types/location.d.ts +0 -8
  49. package/dist/api/application/types/location.d.ts.map +0 -1
  50. package/dist/api/application/types/location.js +0 -3
  51. package/dist/api/application/types/location.js.map +0 -1
  52. package/dist/api/application/types/node.d.ts +0 -32
  53. package/dist/api/application/types/node.d.ts.map +0 -1
  54. package/dist/api/application/types/node.js +0 -3
  55. package/dist/api/application/types/node.js.map +0 -1
  56. package/dist/api/application/types/server.d.ts +0 -23
  57. package/dist/api/application/types/server.d.ts.map +0 -1
  58. package/dist/api/application/types/server.js +0 -3
  59. package/dist/api/application/types/server.js.map +0 -1
  60. package/dist/api/application/types/user.d.ts +0 -20
  61. package/dist/api/application/types/user.d.ts.map +0 -1
  62. package/dist/api/application/types/user.js +0 -3
  63. package/dist/api/application/types/user.js.map +0 -1
  64. package/dist/api/application/users.d.ts +0 -38
  65. package/dist/api/application/users.d.ts.map +0 -1
  66. package/dist/api/application/users.js +0 -54
  67. package/dist/api/application/users.js.map +0 -1
  68. package/dist/api/base/request.d.ts +0 -8
  69. package/dist/api/base/request.d.ts.map +0 -1
  70. package/dist/api/base/request.js +0 -33
  71. package/dist/api/base/request.js.map +0 -1
  72. package/dist/api/base/types.d.ts +0 -40
  73. package/dist/api/base/types.d.ts.map +0 -1
  74. package/dist/api/base/types.js +0 -14
  75. package/dist/api/base/types.js.map +0 -1
  76. package/dist/api/client/account.d.ts +0 -31
  77. package/dist/api/client/account.d.ts.map +0 -1
  78. package/dist/api/client/account.js +0 -70
  79. package/dist/api/client/account.js.map +0 -1
  80. package/dist/api/client/client.d.ts +0 -14
  81. package/dist/api/client/client.d.ts.map +0 -1
  82. package/dist/api/client/client.js +0 -37
  83. package/dist/api/client/client.js.map +0 -1
  84. package/dist/api/client/server.d.ts +0 -33
  85. package/dist/api/client/server.d.ts.map +0 -1
  86. package/dist/api/client/server.js +0 -62
  87. package/dist/api/client/server.js.map +0 -1
  88. package/dist/api/client/server_activity.d.ts +0 -9
  89. package/dist/api/client/server_activity.d.ts.map +0 -1
  90. package/dist/api/client/server_activity.js +0 -22
  91. package/dist/api/client/server_activity.js.map +0 -1
  92. package/dist/api/client/server_allocations.d.ts +0 -13
  93. package/dist/api/client/server_allocations.d.ts.map +0 -1
  94. package/dist/api/client/server_allocations.js +0 -32
  95. package/dist/api/client/server_allocations.js.map +0 -1
  96. package/dist/api/client/server_backups.d.ts +0 -18
  97. package/dist/api/client/server_backups.d.ts.map +0 -1
  98. package/dist/api/client/server_backups.js +0 -50
  99. package/dist/api/client/server_backups.js.map +0 -1
  100. package/dist/api/client/server_databases.d.ts +0 -12
  101. package/dist/api/client/server_databases.d.ts.map +0 -1
  102. package/dist/api/client/server_databases.js +0 -36
  103. package/dist/api/client/server_databases.js.map +0 -1
  104. package/dist/api/client/server_files.d.ts +0 -34
  105. package/dist/api/client/server_files.d.ts.map +0 -1
  106. package/dist/api/client/server_files.js +0 -86
  107. package/dist/api/client/server_files.js.map +0 -1
  108. package/dist/api/client/server_schedules.d.ts +0 -38
  109. package/dist/api/client/server_schedules.d.ts.map +0 -1
  110. package/dist/api/client/server_schedules.js +0 -59
  111. package/dist/api/client/server_schedules.js.map +0 -1
  112. package/dist/api/client/server_settings.d.ts +0 -12
  113. package/dist/api/client/server_settings.d.ts.map +0 -1
  114. package/dist/api/client/server_settings.js +0 -30
  115. package/dist/api/client/server_settings.js.map +0 -1
  116. package/dist/api/client/server_startup.d.ts +0 -11
  117. package/dist/api/client/server_startup.d.ts.map +0 -1
  118. package/dist/api/client/server_startup.js +0 -25
  119. package/dist/api/client/server_startup.js.map +0 -1
  120. package/dist/api/client/server_users.d.ts +0 -13
  121. package/dist/api/client/server_users.d.ts.map +0 -1
  122. package/dist/api/client/server_users.js +0 -32
  123. package/dist/api/client/server_users.js.map +0 -1
  124. package/dist/api/client/server_websocket.d.ts +0 -60
  125. package/dist/api/client/server_websocket.d.ts.map +0 -1
  126. package/dist/api/client/server_websocket.js +0 -431
  127. package/dist/api/client/server_websocket.js.map +0 -1
  128. package/dist/api/client/types/server.d.ts +0 -64
  129. package/dist/api/client/types/server.d.ts.map +0 -1
  130. package/dist/api/client/types/server.js +0 -3
  131. package/dist/api/client/types/server.js.map +0 -1
  132. package/dist/api/client/types/server_subuser.d.ts +0 -14
  133. package/dist/api/client/types/server_subuser.d.ts.map +0 -1
  134. package/dist/api/client/types/server_subuser.js +0 -3
  135. package/dist/api/client/types/server_subuser.js.map +0 -1
  136. package/dist/api/client/types/user.d.ts +0 -31
  137. package/dist/api/client/types/user.d.ts.map +0 -1
  138. package/dist/api/client/types/user.js +0 -3
  139. package/dist/api/client/types/user.js.map +0 -1
  140. package/dist/api/client/types/websocket.d.ts +0 -116
  141. package/dist/api/client/types/websocket.d.ts.map +0 -1
  142. package/dist/api/client/types/websocket.js +0 -37
  143. package/dist/api/client/types/websocket.js.map +0 -1
  144. package/dist/api/client/websocket_old.d.ts +0 -171
  145. package/dist/api/client/websocket_old.d.ts.map +0 -1
  146. package/dist/api/client/websocket_old.js +0 -319
  147. package/dist/api/client/websocket_old.js.map +0 -1
  148. package/dist/api/common/types/egg.d.ts +0 -10
  149. package/dist/api/common/types/egg.d.ts.map +0 -1
  150. package/dist/api/common/types/egg.js +0 -3
  151. package/dist/api/common/types/egg.js.map +0 -1
  152. package/dist/api/common/types/server_allocations.d.ts +0 -18
  153. package/dist/api/common/types/server_allocations.d.ts.map +0 -1
  154. package/dist/api/common/types/server_allocations.js +0 -3
  155. package/dist/api/common/types/server_allocations.js.map +0 -1
  156. package/dist/api/common/types/server_backup.d.ts +0 -13
  157. package/dist/api/common/types/server_backup.d.ts.map +0 -1
  158. package/dist/api/common/types/server_backup.js +0 -3
  159. package/dist/api/common/types/server_backup.js.map +0 -1
  160. package/dist/api/common/types/server_database.d.ts +0 -18
  161. package/dist/api/common/types/server_database.d.ts.map +0 -1
  162. package/dist/api/common/types/server_database.js +0 -3
  163. package/dist/api/common/types/server_database.js.map +0 -1
  164. package/dist/api/common/types/server_files.d.ts +0 -12
  165. package/dist/api/common/types/server_files.d.ts.map +0 -1
  166. package/dist/api/common/types/server_files.js +0 -3
  167. package/dist/api/common/types/server_files.js.map +0 -1
  168. package/dist/api/common/types/server_limits.d.ts +0 -17
  169. package/dist/api/common/types/server_limits.d.ts.map +0 -1
  170. package/dist/api/common/types/server_limits.js +0 -3
  171. package/dist/api/common/types/server_limits.js.map +0 -1
  172. package/dist/api/common/types/server_power.d.ts +0 -2
  173. package/dist/api/common/types/server_power.d.ts.map +0 -1
  174. package/dist/api/common/types/server_power.js +0 -3
  175. package/dist/api/common/types/server_power.js.map +0 -1
  176. package/dist/api/common/types/server_schedule.d.ts +0 -34
  177. package/dist/api/common/types/server_schedule.d.ts.map +0 -1
  178. package/dist/api/common/types/server_schedule.js +0 -3
  179. package/dist/api/common/types/server_schedule.js.map +0 -1
  180. package/dist/api/common/types/server_startup.d.ts +0 -14
  181. package/dist/api/common/types/server_startup.d.ts.map +0 -1
  182. package/dist/api/common/types/server_startup.js +0 -3
  183. package/dist/api/common/types/server_startup.js.map +0 -1
  184. package/dist/index.d.ts.map +0 -1
  185. package/dist/pterodactyl.d.ts +0 -8
  186. package/dist/pterodactyl.d.ts.map +0 -1
  187. package/dist/pterodactyl.js +0 -20
  188. package/dist/pterodactyl.js.map +0 -1
  189. package/dist/utils/sized.d.ts +0 -10
  190. package/dist/utils/sized.d.ts.map +0 -1
  191. package/dist/utils/sized.js +0 -15
  192. package/dist/utils/sized.js.map +0 -1
  193. package/dist/utils/transform.d.ts +0 -9
  194. package/dist/utils/transform.d.ts.map +0 -1
  195. package/dist/utils/transform.js +0 -19
  196. package/dist/utils/transform.js.map +0 -1
  197. package/dist/utils/types.d.ts +0 -14
  198. package/dist/utils/types.d.ts.map +0 -1
  199. package/dist/utils/types.js +0 -3
  200. package/dist/utils/types.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -1,9 +1,1502 @@
1
- import { Client as UserClient } from "./api/client/client";
2
- import { Client as AppClient } from "./api/application/client";
3
- export declare class PelicanClient extends UserClient {
4
- constructor(url: string, token: string);
1
+ import { AxiosInstance } from 'axios';
2
+ import WebSocket from 'isomorphic-ws';
3
+ import z from 'zod';
4
+
5
+ type ExactlyOneKey<K extends keyof any, V, KK extends keyof any = K> = {
6
+ [P in K]: {
7
+ [Q in P]: V;
8
+ } & {
9
+ [Q in Exclude<KK, P>]?: never;
10
+ } extends infer O ? {
11
+ [Q in keyof O]: O[Q];
12
+ } : never;
13
+ }[K];
14
+ type Omit<T, K extends keyof T> = Pick<T, Exclude<keyof T, K>>;
15
+ type PartialBy<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
16
+ type Nullable<T> = T | null;
17
+
18
+ type User$1 = {
19
+ uuid: string;
20
+ username: string;
21
+ email: string;
22
+ language: string;
23
+ image: string;
24
+ admin: boolean;
25
+ root_admin: boolean;
26
+ "2fa_enabled": number;
27
+ created_at: string;
28
+ updated_at: string;
29
+ };
30
+ type APIKey = {
31
+ identifier: string;
32
+ description: string;
33
+ allowed_ips: string[];
34
+ last_used_at: Nullable<string>;
35
+ created_at: string;
36
+ };
37
+ type SSHKey = {
38
+ name: string;
39
+ fingerprint: string;
40
+ pubic_key: string;
41
+ created_at: string;
42
+ };
43
+ type Permission = {
44
+ description: string;
45
+ keys: Record<string, string>;
46
+ };
47
+
48
+ declare class Account {
49
+ private readonly r;
50
+ constructor(requester: AxiosInstance);
51
+ info: () => Promise<User$1>;
52
+ updateEmail: (newEmail: string, password: string) => Promise<void>;
53
+ updatePassword: (newPassword: string) => Promise<void>;
54
+ apiKeys: {
55
+ list: () => Promise<APIKey[]>;
56
+ create: (description: string, allowed_ips?: string[]) => Promise<APIKey & {
57
+ secret_token: string;
58
+ }>;
59
+ delete: (identifier: string) => Promise<void>;
60
+ };
61
+ sshKeys: {
62
+ list: () => Promise<SSHKey[]>;
63
+ create: (name: string, public_key: string) => Promise<SSHKey>;
64
+ delete: (fingerprint: string) => Promise<void>;
65
+ };
66
+ twoFactor: {
67
+ info: () => Promise<{
68
+ image_url_data: string;
69
+ }>;
70
+ enable: (code: string) => Promise<{
71
+ tokens: string[];
72
+ }>;
73
+ disable: (password: string) => Promise<void>;
74
+ };
5
75
  }
6
- export declare class PelicanApplication extends AppClient {
7
- constructor(url: string, token: string);
76
+
77
+ type GenericResponse<T, N extends string = string, M = undefined> = {
78
+ object: N;
79
+ attributes: T;
80
+ meta?: M;
81
+ };
82
+ type PaginationMeta = {
83
+ total: number;
84
+ count: number;
85
+ per_page: number;
86
+ current_page: number;
87
+ total_pages: number;
88
+ links: any;
89
+ };
90
+ type GenericListResponse<T> = {
91
+ object: "list";
92
+ data: T[];
93
+ meta?: {
94
+ pagination: PaginationMeta;
95
+ };
96
+ };
97
+ type CustomListResponse<T, M> = {
98
+ object: "list";
99
+ data: T[];
100
+ meta?: M;
101
+ };
102
+
103
+ type EggVariable = {
104
+ name: string;
105
+ description: string;
106
+ env_variable: string;
107
+ default_value: string;
108
+ server_value: string;
109
+ is_editable: boolean;
110
+ rules: string;
111
+ };
112
+
113
+ type ServerSubuser = {
114
+ uuid: string;
115
+ username: string;
116
+ email: string;
117
+ language: string;
118
+ image: string;
119
+ admin: false;
120
+ root_admin: false;
121
+ "2fa_enabled": boolean;
122
+ created_at: string;
123
+ permissions: SubuserPermission[] | string[];
124
+ };
125
+ type SubuserPermission = "activity.read" | "allocation.create" | "allocation.delete" | "allocation.read" | "allocation.update" | "backup.create" | "backup.delete" | "backup.download" | "backup.read" | "backup.restore" | "control.console" | "control.restart" | "control.start" | "control.stop" | "database.create" | "database.delete" | "database.read" | "database.update" | "database.view-password" | "file.archive" | "file.create" | "file.delete" | "file.read" | "file.read-content" | "file.sftp" | "file.update" | "schedule.create" | "schedule.delete" | "schedule.read" | "schedule.update" | "settings.description" | "settings.reinstall" | "settings.rename" | "startup.docker-image" | "startup.read" | "startup.update" | "user.create" | "user.delete" | "user.read" | "user.update" | "websocket.connect";
126
+
127
+ type ServerLimits = {
128
+ memory: number;
129
+ swap: number;
130
+ disk: number;
131
+ io: number;
132
+ cpu: number;
133
+ threads: Nullable<number | string>;
134
+ oom_disabled: boolean;
135
+ oom_killer: boolean;
136
+ };
137
+ type FeatureLimits = {
138
+ databases: number;
139
+ allocations: number;
140
+ backups: number;
141
+ };
142
+
143
+ type Allocation$1 = {
144
+ id: number;
145
+ ip: string;
146
+ alias: Nullable<string>;
147
+ port: number;
148
+ notes: Nullable<string>;
149
+ is_default: boolean;
150
+ };
151
+
152
+ type Server$1 = {
153
+ server_owner: boolean;
154
+ identifier: string;
155
+ internal_id?: number;
156
+ uuid: string;
157
+ name: string;
158
+ node: string;
159
+ is_node_under_maintenance: boolean;
160
+ sftp_details: {
161
+ ip: string;
162
+ alias: Nullable<string>;
163
+ port: number;
164
+ };
165
+ description: string;
166
+ limits: ServerLimits;
167
+ invocation: string;
168
+ docker_image: string;
169
+ egg_features: string[] | null;
170
+ feature_limits: FeatureLimits;
171
+ status: Nullable<unknown>;
172
+ is_suspended: boolean;
173
+ is_installing: boolean;
174
+ is_transferring: boolean;
175
+ relationships: {
176
+ allocations: GenericListResponse<GenericResponse<Allocation$1, "allocation">>;
177
+ variables: GenericListResponse<GenericResponse<EggVariable, "egg_variable">>;
178
+ egg?: GenericResponse<{
179
+ uuid: string;
180
+ name: string;
181
+ }, "egg">;
182
+ subusers: GenericListResponse<GenericResponse<ServerSubuser, "server_subuser">>;
183
+ };
184
+ };
185
+ type ServerStats = {
186
+ current_state: "installing" | "install_failed" | "reinstall_failed" | "suspended" | "restoring_backup" | "running" | "stopped" | "offline";
187
+ is_suspended: boolean;
188
+ resources: ServerResources;
189
+ };
190
+ type ServerResources = {
191
+ memory_bytes: number;
192
+ cpu_absolute: number;
193
+ disk_bytes: number;
194
+ network_tx_bytes: number;
195
+ network_rx_bytes: number;
196
+ uptime: number;
197
+ };
198
+ type ServerActivityLog = {
199
+ id: string;
200
+ event: string;
201
+ is_api: boolean;
202
+ ip: string;
203
+ description: Nullable<string>;
204
+ properties: Record<string, string>;
205
+ has_additional_metadata: boolean;
206
+ timestamp: string;
207
+ };
208
+
209
+ type ServerDatabase = {
210
+ id: string;
211
+ host: {
212
+ address: string;
213
+ port: number;
214
+ };
215
+ name: string;
216
+ username: string;
217
+ connections_from: string;
218
+ max_connections: number;
219
+ relationships?: {
220
+ password: GenericResponse<{
221
+ password: string;
222
+ }, "database_password">;
223
+ };
224
+ };
225
+
226
+ declare class ServerDatabases {
227
+ private readonly r;
228
+ private readonly id;
229
+ constructor(requester: AxiosInstance, id: string);
230
+ list: (include?: ("password")[], page?: number) => Promise<ServerDatabase[]>;
231
+ create: (database: string, remote: string) => Promise<ServerDatabase>;
232
+ rotatePassword: (database_id: string) => Promise<ServerDatabase>;
233
+ delete: (database_id: string) => Promise<void>;
8
234
  }
9
- //# sourceMappingURL=index.d.ts.map
235
+
236
+ type FileObject = {
237
+ name: string;
238
+ mode: string;
239
+ mode_bits: string;
240
+ size: number;
241
+ is_file: boolean;
242
+ is_symlink: boolean;
243
+ mimetype: string;
244
+ created_at: string;
245
+ modified_at: string;
246
+ };
247
+
248
+ declare class ServerFiles {
249
+ private readonly r;
250
+ private readonly id;
251
+ constructor(requester: AxiosInstance, id: string);
252
+ list: (path?: string) => Promise<FileObject[]>;
253
+ /**
254
+ * Return the contents of a file. To read binary file (non-editable) use {@link download} instead
255
+ */
256
+ contents: (path: string) => Promise<string>;
257
+ downloadGetUrl: (path: string) => Promise<string>;
258
+ download: (path: string) => Promise<ArrayBuffer>;
259
+ rename: (root: string | undefined, files: {
260
+ from: string;
261
+ to: string;
262
+ }[]) => Promise<void>;
263
+ copy: (location: string) => Promise<void>;
264
+ write: (path: string, content: string) => Promise<void>;
265
+ compress: (root: string | undefined, files: string[], archive_name?: string, extension?: "zip" | "tgz" | "tar.gz" | "txz" | "tar.xz" | "tbz2" | "tar.bz2") => Promise<void>;
266
+ decompress: (root: string | undefined, file: string) => Promise<void>;
267
+ delete: (root: string | undefined, files: string[]) => Promise<void>;
268
+ createFolder: (root: string | undefined, name: string) => Promise<void>;
269
+ chmod: (root: string | undefined, files: Array<{
270
+ file: string;
271
+ mode: number;
272
+ }>) => Promise<void>;
273
+ pullFromRemote: (url: string, directory?: string, filename?: string, // Unused
274
+ use_header?: boolean, // Unused
275
+ foreground?: boolean) => Promise<void>;
276
+ uploadGetUrl: () => Promise<string>;
277
+ upload: (file: File, root?: string) => Promise<void>;
278
+ }
279
+
280
+ type Schedule = {
281
+ id: number;
282
+ name: string;
283
+ cron: {
284
+ day_of_week: string;
285
+ day_of_month: string;
286
+ hour: string;
287
+ minute: string;
288
+ };
289
+ is_active: boolean;
290
+ is_processing: boolean;
291
+ only_when_online: boolean;
292
+ last_run_at: Nullable<string>;
293
+ next_run_at: string;
294
+ created_at: string;
295
+ updated_at: string;
296
+ relationships: {
297
+ tasks: GenericListResponse<GenericResponse<ScheduleTask, "schedule_task">>;
298
+ };
299
+ };
300
+ type ScheduleTask = {
301
+ id: number;
302
+ sequence_id: number;
303
+ action: "command" | "power" | "backup" | "delete_files";
304
+ payload: string;
305
+ time_offset: number;
306
+ is_queued: boolean;
307
+ continue_on_failure: boolean;
308
+ created_at: string;
309
+ updated_at: Nullable<string>;
310
+ };
311
+
312
+ declare class ServerSchedules {
313
+ private readonly r;
314
+ private readonly id;
315
+ constructor(requester: AxiosInstance, id: string);
316
+ list: () => Promise<Schedule[]>;
317
+ create: (params: ScheduleCreateParams) => Promise<Schedule>;
318
+ control: (sched_id: number) => ScheduleControl;
319
+ }
320
+ type ScheduleCreateParams = {
321
+ name: string;
322
+ is_active?: boolean;
323
+ only_when_online?: boolean;
324
+ minute: string;
325
+ hour: string;
326
+ day_of_week: string;
327
+ month: string;
328
+ day_of_month: string;
329
+ };
330
+ declare class ScheduleControl {
331
+ private r;
332
+ private readonly id;
333
+ private readonly sched_id;
334
+ constructor(requester: AxiosInstance, id: string, sched_id: number);
335
+ info: () => Promise<Schedule>;
336
+ update: (params: ScheduleCreateParams) => Promise<Schedule>;
337
+ delete: () => Promise<void>;
338
+ execute: () => Promise<void>;
339
+ tasks: {
340
+ create: (opts: PartialBy<Pick<ScheduleTask, "action" | "payload" | "time_offset" | "sequence_id" | "continue_on_failure">, "payload" | "sequence_id" | "continue_on_failure">) => Promise<ScheduleTask>;
341
+ update: <T extends "command" | "power" | "backup" | "delete_files">(task_id: number, opts: PartialBy<Pick<ScheduleTask, "action" | "payload" | "time_offset" | "sequence_id" | "continue_on_failure">, "payload" | "sequence_id" | "continue_on_failure">) => Promise<ScheduleTask>;
342
+ delete: (task_id: number) => Promise<void>;
343
+ };
344
+ }
345
+
346
+ declare class ServerAllocations {
347
+ private readonly r;
348
+ private readonly id;
349
+ constructor(requester: AxiosInstance, id: string);
350
+ list: () => Promise<Allocation$1[]>;
351
+ autoAssign: () => Promise<Allocation$1>;
352
+ setNotes: (alloc_id: number, notes: string) => Promise<Allocation$1>;
353
+ setPrimary: (alloc_id: number) => Promise<Allocation$1>;
354
+ unassign: (alloc_id: number) => Promise<void>;
355
+ }
356
+
357
+ declare class ServerUsers {
358
+ private readonly r;
359
+ private readonly id;
360
+ constructor(requester: AxiosInstance, id: string);
361
+ list: () => Promise<ServerSubuser[]>;
362
+ create: (email: string, permissions: SubuserPermission[] | string[]) => Promise<ServerSubuser>;
363
+ info: (user_id: number) => Promise<ServerSubuser>;
364
+ update: (user_id: number, permissions: SubuserPermission[] | string[]) => Promise<ServerSubuser>;
365
+ delete: (user_id: number) => Promise<void>;
366
+ }
367
+
368
+ type Backup = {
369
+ uuid: string;
370
+ is_successful: boolean;
371
+ is_locked: boolean;
372
+ name: string;
373
+ ignored_files: string[];
374
+ checksum: Nullable<string>;
375
+ bytes: number;
376
+ created_at: string;
377
+ completed_at: Nullable<string>;
378
+ };
379
+
380
+ declare class ServerBackups {
381
+ private readonly r;
382
+ private readonly id;
383
+ constructor(requester: AxiosInstance, id: string);
384
+ list: (page?: number) => Promise<Backup[]>;
385
+ create: (args: {
386
+ name?: string;
387
+ is_locked: boolean;
388
+ ignored_files: string[];
389
+ }) => Promise<Backup>;
390
+ info: (backup_uuid: string) => Promise<Backup>;
391
+ downloadGetUrl: (backup_uuid: string) => Promise<string>;
392
+ download: (backup_uuid: string) => Promise<ArrayBuffer>;
393
+ delete: (backup_uuid: string) => Promise<void>;
394
+ }
395
+
396
+ type StartupParams = {
397
+ name: string;
398
+ description: string;
399
+ env_variables: string;
400
+ default_value: string;
401
+ server_value: string;
402
+ is_editable: boolean;
403
+ rules: string;
404
+ };
405
+ type StartupMeta = {
406
+ startup_command: string;
407
+ raw_startup_command: string;
408
+ };
409
+
410
+ declare class ServerStartup {
411
+ private readonly r;
412
+ private readonly id;
413
+ constructor(requester: AxiosInstance, id: string);
414
+ list: () => Promise<CustomListResponse<StartupParams, StartupMeta>>;
415
+ set: (key: string, value: string) => Promise<StartupParams>;
416
+ }
417
+
418
+ declare class ServerSettings {
419
+ private readonly r;
420
+ private readonly id;
421
+ constructor(requester: AxiosInstance, id: string);
422
+ rename: (name: string) => Promise<void>;
423
+ updateDescription: (description: Nullable<string>) => Promise<void>;
424
+ reinstall: () => Promise<void>;
425
+ changeDockerImage: (image: string) => Promise<void>;
426
+ }
427
+
428
+ /**
429
+ * Source: https://github.com/pterodactyl/panel/blob/1.0-develop/resources/scripts/components/server/events.ts
430
+ */
431
+ declare enum SOCKET_EVENT {
432
+ AUTH_SUCCESS = "auth success",
433
+ DAEMON_MESSAGE = "daemon message",
434
+ DAEMON_ERROR = "daemon error",
435
+ INSTALL_OUTPUT = "install output",
436
+ INSTALL_STARTED = "install started",
437
+ INSTALL_COMPLETED = "install completed",
438
+ CONSOLE_OUTPUT = "console output",
439
+ STATUS = "status",
440
+ STATS = "stats",
441
+ TRANSFER_LOGS = "transfer logs",
442
+ TRANSFER_STATUS = "transfer status",
443
+ BACKUP_COMPLETED = "backup completed",
444
+ BACKUP_RESTORE_COMPLETED = "backup restore completed",
445
+ TOKEN_EXPIRING = "token expiring",
446
+ TOKEN_EXPIRED = "token expired",
447
+ JWT_ERROR = "jwt error"
448
+ }
449
+ type BackupCompletedJson = {
450
+ checksum: string;
451
+ checksum_type: 'sha1';
452
+ file_size: number;
453
+ is_successful: boolean;
454
+ uuid: string;
455
+ };
456
+ type PowerState = 'starting' | 'stopping' | 'running' | 'offline';
457
+ type StatsWsJson = {
458
+ memory_bytes: number;
459
+ memory_limit_bytes: number;
460
+ cpu_absolute: number;
461
+ network: {
462
+ rx_bytes: number;
463
+ tx_bytes: number;
464
+ };
465
+ state: PowerState;
466
+ uptime: number;
467
+ disk_bytes: number;
468
+ };
469
+
470
+ type ServerSignalOption = 'start' | 'stop' | 'restart' | 'kill';
471
+
472
+ type SocketEventPayloadMap = {
473
+ [SOCKET_EVENT.AUTH_SUCCESS]: undefined;
474
+ [SOCKET_EVENT.STATUS]: PowerState;
475
+ [SOCKET_EVENT.CONSOLE_OUTPUT]: string;
476
+ [SOCKET_EVENT.STATS]: StatsWsJson;
477
+ [SOCKET_EVENT.DAEMON_ERROR]: undefined;
478
+ [SOCKET_EVENT.DAEMON_MESSAGE]: string;
479
+ [SOCKET_EVENT.INSTALL_OUTPUT]: string;
480
+ [SOCKET_EVENT.INSTALL_STARTED]: undefined;
481
+ [SOCKET_EVENT.INSTALL_COMPLETED]: undefined;
482
+ [SOCKET_EVENT.TRANSFER_LOGS]: string;
483
+ [SOCKET_EVENT.TRANSFER_STATUS]: string;
484
+ [SOCKET_EVENT.BACKUP_COMPLETED]: BackupCompletedJson;
485
+ [SOCKET_EVENT.BACKUP_RESTORE_COMPLETED]: undefined;
486
+ [SOCKET_EVENT.TOKEN_EXPIRING]: undefined;
487
+ [SOCKET_EVENT.TOKEN_EXPIRED]: undefined;
488
+ [SOCKET_EVENT.JWT_ERROR]: string;
489
+ };
490
+ type Listener<E extends SOCKET_EVENT> = SocketEventPayloadMap[E] extends undefined ? () => void : (payload: SocketEventPayloadMap[E]) => void;
491
+ type CloseEventLike = Parameters<NonNullable<WebSocket["onclose"]>>[0];
492
+ type ErrorEventLike = Parameters<NonNullable<WebSocket["onerror"]>>[0];
493
+ declare class ServerWebsocket {
494
+ private readonly r;
495
+ private readonly serverId;
496
+ private socket?;
497
+ private currentToken?;
498
+ private readonly bus;
499
+ private debugLogging;
500
+ private stripColors;
501
+ private detachMessageListener?;
502
+ constructor(requester: AxiosInstance, id: string, stripColors?: boolean);
503
+ on<E extends SOCKET_EVENT>(event: E, listener: Listener<E>): () => void;
504
+ deregister<E extends SOCKET_EVENT>(event: E, listener: Listener<E>): void;
505
+ private emit;
506
+ connect(resumable?: boolean, debugLogging?: boolean): Promise<void>;
507
+ onSocketDisconnect(handler: (event: CloseEventLike) => void): void;
508
+ onSocketError(handler: (event: ErrorEventLike) => void): void;
509
+ makeResumable(disconnectsToo: boolean): void;
510
+ private attachMessageListener;
511
+ private handleIncomingMessage;
512
+ private parseMessage;
513
+ private normalisePayload;
514
+ private dispatchMessage;
515
+ private refreshCredentials;
516
+ private authenticate;
517
+ disconnect(): void;
518
+ requestStats(): void;
519
+ requestLogs(): void;
520
+ private send;
521
+ getStats(): Promise<StatsWsJson>;
522
+ getLogs(): Promise<string[]>;
523
+ sendPoweraction(action: ServerSignalOption): void;
524
+ sendCommand(cmd: string): void;
525
+ }
526
+
527
+ declare class ServerActivity {
528
+ private readonly r;
529
+ private readonly id;
530
+ constructor(r: AxiosInstance, id: string);
531
+ list: (page?: number, per_page?: number) => Promise<ServerActivityLog[]>;
532
+ }
533
+
534
+ declare class ServerClient {
535
+ private readonly r;
536
+ private readonly id;
537
+ activity: ServerActivity;
538
+ databases: ServerDatabases;
539
+ files: ServerFiles;
540
+ schedules: ServerSchedules;
541
+ allocations: ServerAllocations;
542
+ users: ServerUsers;
543
+ backups: ServerBackups;
544
+ startup: ServerStartup;
545
+ variables: ServerStartup;
546
+ settings: ServerSettings;
547
+ constructor(requester: AxiosInstance, id: string);
548
+ info: (include?: ("egg" | "subusers")[]) => Promise<Server$1>;
549
+ websocket: (stripColors?: boolean) => ServerWebsocket;
550
+ resources: () => Promise<ServerStats>;
551
+ command: (command: string) => Promise<void>;
552
+ power: (signal: "start" | "stop" | "restart" | "kill") => Promise<void>;
553
+ }
554
+
555
+ declare class Client$1 {
556
+ account: Account;
557
+ private readonly r;
558
+ constructor(requester: AxiosInstance);
559
+ listPermissions: () => Promise<Record<string, Permission>>;
560
+ listServers: (type?: "accessible" | "mine" | "admin" | "admin-all", page?: number, per_page?: number, include?: ("egg" | "subusers")[]) => Promise<Server$1[]>;
561
+ server: (uuid: string) => ServerClient;
562
+ }
563
+
564
+ type Container = {
565
+ startup_command: string;
566
+ image: string;
567
+ installed: number;
568
+ environment: Record<string, string>;
569
+ ports: number[];
570
+ volumes: string[];
571
+ network_mode: string;
572
+ };
573
+
574
+ type Server = {
575
+ id: number;
576
+ external_id: Nullable<string>;
577
+ uuid: string;
578
+ identifier: string;
579
+ name: string;
580
+ description: string;
581
+ status: Nullable<unknown>;
582
+ suspended: boolean;
583
+ limits: ServerLimits;
584
+ feature_limits: FeatureLimits;
585
+ user: number;
586
+ node: number;
587
+ allocation: number;
588
+ egg: number;
589
+ container: Container;
590
+ created_at: string;
591
+ updated_at: Nullable<string>;
592
+ };
593
+
594
+ type User = {
595
+ id: number;
596
+ external_id: Nullable<string>;
597
+ uuid: string;
598
+ username: string;
599
+ email: string;
600
+ language: string;
601
+ root_admin: string;
602
+ "2fa_enabled": boolean;
603
+ "2fa": boolean;
604
+ created_at: string;
605
+ updated_at: Nullable<string>;
606
+ relationships?: {
607
+ servers: GenericListResponse<GenericResponse<Server>>;
608
+ };
609
+ };
610
+
611
+ declare class Users {
612
+ private readonly r;
613
+ constructor(requester: AxiosInstance);
614
+ list: (opts: ListType, page?: number) => Promise<User[]>;
615
+ info: (id: number, { include }: {
616
+ include?: ("servers")[];
617
+ }) => Promise<User>;
618
+ infoByExternal: (external_id: string, { include }: {
619
+ include?: ("servers")[];
620
+ }) => Promise<User>;
621
+ create: (user: z.infer<typeof CreateSchema>) => Promise<User>;
622
+ update: (id: number, user: z.infer<typeof CreateSchema>) => Promise<User>;
623
+ delete: (id: number) => Promise<void>;
624
+ addRoles: (id: number, roles: number[]) => Promise<void>;
625
+ removeRoles: (id: number, roles: number[]) => Promise<void>;
626
+ }
627
+ type ListType = {
628
+ include?: ("servers")[];
629
+ filters?: ListFilters;
630
+ sort?: ListSort;
631
+ };
632
+ type ListFilters = {
633
+ [key in "email" | "uuid" | "username" | "external_id"]: string;
634
+ };
635
+ type ListSort = ExactlyOneKey<"id" | "uuid", "asc" | "desc">;
636
+ declare const CreateSchema: z.ZodObject<{
637
+ email: z.ZodEmail;
638
+ external_id: z.ZodOptional<z.ZodString>;
639
+ username: z.ZodString;
640
+ password: z.ZodOptional<z.ZodString>;
641
+ language: z.ZodEnum<{
642
+ id: "id";
643
+ af: "af";
644
+ ak: "ak";
645
+ am: "am";
646
+ ar: "ar";
647
+ as: "as";
648
+ az: "az";
649
+ be: "be";
650
+ bg: "bg";
651
+ bm: "bm";
652
+ bn: "bn";
653
+ bo: "bo";
654
+ br: "br";
655
+ bs: "bs";
656
+ ca: "ca";
657
+ ce: "ce";
658
+ cs: "cs";
659
+ cv: "cv";
660
+ cy: "cy";
661
+ da: "da";
662
+ de: "de";
663
+ dz: "dz";
664
+ ee: "ee";
665
+ el: "el";
666
+ en: "en";
667
+ eo: "eo";
668
+ es: "es";
669
+ et: "et";
670
+ eu: "eu";
671
+ fa: "fa";
672
+ ff: "ff";
673
+ fi: "fi";
674
+ fo: "fo";
675
+ fr: "fr";
676
+ fy: "fy";
677
+ ga: "ga";
678
+ gd: "gd";
679
+ gl: "gl";
680
+ gu: "gu";
681
+ gv: "gv";
682
+ ha: "ha";
683
+ he: "he";
684
+ hi: "hi";
685
+ hr: "hr";
686
+ hu: "hu";
687
+ hy: "hy";
688
+ ia: "ia";
689
+ ig: "ig";
690
+ ii: "ii";
691
+ is: "is";
692
+ it: "it";
693
+ ja: "ja";
694
+ jv: "jv";
695
+ ka: "ka";
696
+ ki: "ki";
697
+ kk: "kk";
698
+ kl: "kl";
699
+ km: "km";
700
+ kn: "kn";
701
+ ko: "ko";
702
+ ks: "ks";
703
+ ku: "ku";
704
+ kw: "kw";
705
+ ky: "ky";
706
+ lb: "lb";
707
+ lg: "lg";
708
+ ln: "ln";
709
+ lo: "lo";
710
+ lt: "lt";
711
+ lu: "lu";
712
+ lv: "lv";
713
+ mg: "mg";
714
+ mi: "mi";
715
+ mk: "mk";
716
+ ml: "ml";
717
+ mn: "mn";
718
+ mr: "mr";
719
+ ms: "ms";
720
+ mt: "mt";
721
+ my: "my";
722
+ nb: "nb";
723
+ nd: "nd";
724
+ ne: "ne";
725
+ nl: "nl";
726
+ nn: "nn";
727
+ no: "no";
728
+ om: "om";
729
+ or: "or";
730
+ os: "os";
731
+ pa: "pa";
732
+ pl: "pl";
733
+ ps: "ps";
734
+ pt: "pt";
735
+ qu: "qu";
736
+ rm: "rm";
737
+ rn: "rn";
738
+ ro: "ro";
739
+ ru: "ru";
740
+ rw: "rw";
741
+ sa: "sa";
742
+ sc: "sc";
743
+ sd: "sd";
744
+ se: "se";
745
+ sg: "sg";
746
+ si: "si";
747
+ sk: "sk";
748
+ sl: "sl";
749
+ sn: "sn";
750
+ so: "so";
751
+ sq: "sq";
752
+ sr: "sr";
753
+ su: "su";
754
+ sv: "sv";
755
+ sw: "sw";
756
+ ta: "ta";
757
+ te: "te";
758
+ tg: "tg";
759
+ th: "th";
760
+ ti: "ti";
761
+ tk: "tk";
762
+ to: "to";
763
+ tr: "tr";
764
+ tt: "tt";
765
+ ug: "ug";
766
+ uk: "uk";
767
+ ur: "ur";
768
+ uz: "uz";
769
+ vi: "vi";
770
+ wo: "wo";
771
+ xh: "xh";
772
+ yi: "yi";
773
+ yo: "yo";
774
+ zh: "zh";
775
+ zu: "zu";
776
+ }>;
777
+ timezone: z.ZodEnum<{
778
+ "Africa/Abidjan": "Africa/Abidjan";
779
+ "Africa/Accra": "Africa/Accra";
780
+ "Africa/Addis_Ababa": "Africa/Addis_Ababa";
781
+ "Africa/Algiers": "Africa/Algiers";
782
+ "Africa/Asmara": "Africa/Asmara";
783
+ "Africa/Bamako": "Africa/Bamako";
784
+ "Africa/Bangui": "Africa/Bangui";
785
+ "Africa/Banjul": "Africa/Banjul";
786
+ "Africa/Bissau": "Africa/Bissau";
787
+ "Africa/Blantyre": "Africa/Blantyre";
788
+ "Africa/Brazzaville": "Africa/Brazzaville";
789
+ "Africa/Bujumbura": "Africa/Bujumbura";
790
+ "Africa/Cairo": "Africa/Cairo";
791
+ "Africa/Casablanca": "Africa/Casablanca";
792
+ "Africa/Ceuta": "Africa/Ceuta";
793
+ "Africa/Conakry": "Africa/Conakry";
794
+ "Africa/Dakar": "Africa/Dakar";
795
+ "Africa/Dar_es_Salaam": "Africa/Dar_es_Salaam";
796
+ "Africa/Djibouti": "Africa/Djibouti";
797
+ "Africa/Douala": "Africa/Douala";
798
+ "Africa/El_Aaiun": "Africa/El_Aaiun";
799
+ "Africa/Freetown": "Africa/Freetown";
800
+ "Africa/Gaborone": "Africa/Gaborone";
801
+ "Africa/Harare": "Africa/Harare";
802
+ "Africa/Johannesburg": "Africa/Johannesburg";
803
+ "Africa/Juba": "Africa/Juba";
804
+ "Africa/Kampala": "Africa/Kampala";
805
+ "Africa/Khartoum": "Africa/Khartoum";
806
+ "Africa/Kigali": "Africa/Kigali";
807
+ "Africa/Kinshasa": "Africa/Kinshasa";
808
+ "Africa/Lagos": "Africa/Lagos";
809
+ "Africa/Libreville": "Africa/Libreville";
810
+ "Africa/Lome": "Africa/Lome";
811
+ "Africa/Luanda": "Africa/Luanda";
812
+ "Africa/Lubumbashi": "Africa/Lubumbashi";
813
+ "Africa/Lusaka": "Africa/Lusaka";
814
+ "Africa/Malabo": "Africa/Malabo";
815
+ "Africa/Maputo": "Africa/Maputo";
816
+ "Africa/Maseru": "Africa/Maseru";
817
+ "Africa/Mbabane": "Africa/Mbabane";
818
+ "Africa/Mogadishu": "Africa/Mogadishu";
819
+ "Africa/Monrovia": "Africa/Monrovia";
820
+ "Africa/Nairobi": "Africa/Nairobi";
821
+ "Africa/Ndjamena": "Africa/Ndjamena";
822
+ "Africa/Niamey": "Africa/Niamey";
823
+ "Africa/Nouakchott": "Africa/Nouakchott";
824
+ "Africa/Ouagadougou": "Africa/Ouagadougou";
825
+ "Africa/Porto-Novo": "Africa/Porto-Novo";
826
+ "Africa/Sao_Tome": "Africa/Sao_Tome";
827
+ "Africa/Tripoli": "Africa/Tripoli";
828
+ "Africa/Tunis": "Africa/Tunis";
829
+ "Africa/Windhoek": "Africa/Windhoek";
830
+ "America/Adak": "America/Adak";
831
+ "America/Anchorage": "America/Anchorage";
832
+ "America/Anguilla": "America/Anguilla";
833
+ "America/Antigua": "America/Antigua";
834
+ "America/Araguaina": "America/Araguaina";
835
+ "America/Argentina/Buenos_Aires": "America/Argentina/Buenos_Aires";
836
+ "America/Argentina/Catamarca": "America/Argentina/Catamarca";
837
+ "America/Argentina/Cordoba": "America/Argentina/Cordoba";
838
+ "America/Argentina/Jujuy": "America/Argentina/Jujuy";
839
+ "America/Argentina/La_Rioja": "America/Argentina/La_Rioja";
840
+ "America/Argentina/Mendoza": "America/Argentina/Mendoza";
841
+ "America/Argentina/Rio_Gallegos": "America/Argentina/Rio_Gallegos";
842
+ "America/Argentina/Salta": "America/Argentina/Salta";
843
+ "America/Argentina/San_Juan": "America/Argentina/San_Juan";
844
+ "America/Argentina/San_Luis": "America/Argentina/San_Luis";
845
+ "America/Argentina/Tucuman": "America/Argentina/Tucuman";
846
+ "America/Argentina/Ushuaia": "America/Argentina/Ushuaia";
847
+ "America/Aruba": "America/Aruba";
848
+ "America/Asuncion": "America/Asuncion";
849
+ "America/Atikokan": "America/Atikokan";
850
+ "America/Bahia": "America/Bahia";
851
+ "America/Bahia_Banderas": "America/Bahia_Banderas";
852
+ "America/Barbados": "America/Barbados";
853
+ "America/Belem": "America/Belem";
854
+ "America/Belize": "America/Belize";
855
+ "America/Blanc-Sablon": "America/Blanc-Sablon";
856
+ "America/Boa_Vista": "America/Boa_Vista";
857
+ "America/Bogota": "America/Bogota";
858
+ "America/Boise": "America/Boise";
859
+ "America/Cambridge_Bay": "America/Cambridge_Bay";
860
+ "America/Campo_Grande": "America/Campo_Grande";
861
+ "America/Cancun": "America/Cancun";
862
+ "America/Caracas": "America/Caracas";
863
+ "America/Cayenne": "America/Cayenne";
864
+ "America/Cayman": "America/Cayman";
865
+ "America/Chicago": "America/Chicago";
866
+ "America/Chihuahua": "America/Chihuahua";
867
+ "America/Ciudad_Juarez": "America/Ciudad_Juarez";
868
+ "America/Costa_Rica": "America/Costa_Rica";
869
+ "America/Coyhaique": "America/Coyhaique";
870
+ "America/Creston": "America/Creston";
871
+ "America/Cuiaba": "America/Cuiaba";
872
+ "America/Curacao": "America/Curacao";
873
+ "America/Danmarkshavn": "America/Danmarkshavn";
874
+ "America/Dawson": "America/Dawson";
875
+ "America/Dawson_Creek": "America/Dawson_Creek";
876
+ "America/Denver": "America/Denver";
877
+ "America/Detroit": "America/Detroit";
878
+ "America/Dominica": "America/Dominica";
879
+ "America/Edmonton": "America/Edmonton";
880
+ "America/Eirunepe": "America/Eirunepe";
881
+ "America/El_Salvador": "America/El_Salvador";
882
+ "America/Fort_Nelson": "America/Fort_Nelson";
883
+ "America/Fortaleza": "America/Fortaleza";
884
+ "America/Glace_Bay": "America/Glace_Bay";
885
+ "America/Goose_Bay": "America/Goose_Bay";
886
+ "America/Grand_Turk": "America/Grand_Turk";
887
+ "America/Grenada": "America/Grenada";
888
+ "America/Guadeloupe": "America/Guadeloupe";
889
+ "America/Guatemala": "America/Guatemala";
890
+ "America/Guayaquil": "America/Guayaquil";
891
+ "America/Guyana": "America/Guyana";
892
+ "America/Halifax": "America/Halifax";
893
+ "America/Havana": "America/Havana";
894
+ "America/Hermosillo": "America/Hermosillo";
895
+ "America/Indiana/Indianapolis": "America/Indiana/Indianapolis";
896
+ "America/Indiana/Knox": "America/Indiana/Knox";
897
+ "America/Indiana/Marengo": "America/Indiana/Marengo";
898
+ "America/Indiana/Petersburg": "America/Indiana/Petersburg";
899
+ "America/Indiana/Tell_City": "America/Indiana/Tell_City";
900
+ "America/Indiana/Vevay": "America/Indiana/Vevay";
901
+ "America/Indiana/Vincennes": "America/Indiana/Vincennes";
902
+ "America/Indiana/Winamac": "America/Indiana/Winamac";
903
+ "America/Inuvik": "America/Inuvik";
904
+ "America/Iqaluit": "America/Iqaluit";
905
+ "America/Jamaica": "America/Jamaica";
906
+ "America/Juneau": "America/Juneau";
907
+ "America/Kentucky/Louisville": "America/Kentucky/Louisville";
908
+ "America/Kentucky/Monticello": "America/Kentucky/Monticello";
909
+ "America/Kralendijk": "America/Kralendijk";
910
+ "America/La_Paz": "America/La_Paz";
911
+ "America/Lima": "America/Lima";
912
+ "America/Los_Angeles": "America/Los_Angeles";
913
+ "America/Lower_Princes": "America/Lower_Princes";
914
+ "America/Maceio": "America/Maceio";
915
+ "America/Managua": "America/Managua";
916
+ "America/Manaus": "America/Manaus";
917
+ "America/Marigot": "America/Marigot";
918
+ "America/Martinique": "America/Martinique";
919
+ "America/Matamoros": "America/Matamoros";
920
+ "America/Mazatlan": "America/Mazatlan";
921
+ "America/Menominee": "America/Menominee";
922
+ "America/Merida": "America/Merida";
923
+ "America/Metlakatla": "America/Metlakatla";
924
+ "America/Mexico_City": "America/Mexico_City";
925
+ "America/Miquelon": "America/Miquelon";
926
+ "America/Moncton": "America/Moncton";
927
+ "America/Monterrey": "America/Monterrey";
928
+ "America/Montevideo": "America/Montevideo";
929
+ "America/Montserrat": "America/Montserrat";
930
+ "America/Nassau": "America/Nassau";
931
+ "America/New_York": "America/New_York";
932
+ "America/Nome": "America/Nome";
933
+ "America/Noronha": "America/Noronha";
934
+ "America/North_Dakota/Beulah": "America/North_Dakota/Beulah";
935
+ "America/North_Dakota/Center": "America/North_Dakota/Center";
936
+ "America/North_Dakota/New_Salem": "America/North_Dakota/New_Salem";
937
+ "America/Nuuk": "America/Nuuk";
938
+ "America/Ojinaga": "America/Ojinaga";
939
+ "America/Panama": "America/Panama";
940
+ "America/Paramaribo": "America/Paramaribo";
941
+ "America/Phoenix": "America/Phoenix";
942
+ "America/Port-au-Prince": "America/Port-au-Prince";
943
+ "America/Port_of_Spain": "America/Port_of_Spain";
944
+ "America/Porto_Velho": "America/Porto_Velho";
945
+ "America/Puerto_Rico": "America/Puerto_Rico";
946
+ "America/Punta_Arenas": "America/Punta_Arenas";
947
+ "America/Rankin_Inlet": "America/Rankin_Inlet";
948
+ "America/Recife": "America/Recife";
949
+ "America/Regina": "America/Regina";
950
+ "America/Resolute": "America/Resolute";
951
+ "America/Rio_Branco": "America/Rio_Branco";
952
+ "America/Santarem": "America/Santarem";
953
+ "America/Santiago": "America/Santiago";
954
+ "America/Santo_Domingo": "America/Santo_Domingo";
955
+ "America/Sao_Paulo": "America/Sao_Paulo";
956
+ "America/Scoresbysund": "America/Scoresbysund";
957
+ "America/Sitka": "America/Sitka";
958
+ "America/St_Barthelemy": "America/St_Barthelemy";
959
+ "America/St_Johns": "America/St_Johns";
960
+ "America/St_Kitts": "America/St_Kitts";
961
+ "America/St_Lucia": "America/St_Lucia";
962
+ "America/St_Thomas": "America/St_Thomas";
963
+ "America/St_Vincent": "America/St_Vincent";
964
+ "America/Swift_Current": "America/Swift_Current";
965
+ "America/Tegucigalpa": "America/Tegucigalpa";
966
+ "America/Thule": "America/Thule";
967
+ "America/Tijuana": "America/Tijuana";
968
+ "America/Toronto": "America/Toronto";
969
+ "America/Tortola": "America/Tortola";
970
+ "America/Vancouver": "America/Vancouver";
971
+ "America/Whitehorse": "America/Whitehorse";
972
+ "America/Winnipeg": "America/Winnipeg";
973
+ "America/Yakutat": "America/Yakutat";
974
+ "Antarctica/Casey": "Antarctica/Casey";
975
+ "Antarctica/Davis": "Antarctica/Davis";
976
+ "Antarctica/DumontDUrville": "Antarctica/DumontDUrville";
977
+ "Antarctica/Macquarie": "Antarctica/Macquarie";
978
+ "Antarctica/Mawson": "Antarctica/Mawson";
979
+ "Antarctica/McMurdo": "Antarctica/McMurdo";
980
+ "Antarctica/Palmer": "Antarctica/Palmer";
981
+ "Antarctica/Rothera": "Antarctica/Rothera";
982
+ "Antarctica/Syowa": "Antarctica/Syowa";
983
+ "Antarctica/Troll": "Antarctica/Troll";
984
+ "Antarctica/Vostok": "Antarctica/Vostok";
985
+ "Arctic/Longyearbyen": "Arctic/Longyearbyen";
986
+ "Asia/Aden": "Asia/Aden";
987
+ "Asia/Almaty": "Asia/Almaty";
988
+ "Asia/Amman": "Asia/Amman";
989
+ "Asia/Anadyr": "Asia/Anadyr";
990
+ "Asia/Aqtau": "Asia/Aqtau";
991
+ "Asia/Aqtobe": "Asia/Aqtobe";
992
+ "Asia/Ashgabat": "Asia/Ashgabat";
993
+ "Asia/Atyrau": "Asia/Atyrau";
994
+ "Asia/Baghdad": "Asia/Baghdad";
995
+ "Asia/Bahrain": "Asia/Bahrain";
996
+ "Asia/Baku": "Asia/Baku";
997
+ "Asia/Bangkok": "Asia/Bangkok";
998
+ "Asia/Barnaul": "Asia/Barnaul";
999
+ "Asia/Beirut": "Asia/Beirut";
1000
+ "Asia/Bishkek": "Asia/Bishkek";
1001
+ "Asia/Brunei": "Asia/Brunei";
1002
+ "Asia/Chita": "Asia/Chita";
1003
+ "Asia/Colombo": "Asia/Colombo";
1004
+ "Asia/Damascus": "Asia/Damascus";
1005
+ "Asia/Dhaka": "Asia/Dhaka";
1006
+ "Asia/Dili": "Asia/Dili";
1007
+ "Asia/Dubai": "Asia/Dubai";
1008
+ "Asia/Dushanbe": "Asia/Dushanbe";
1009
+ "Asia/Famagusta": "Asia/Famagusta";
1010
+ "Asia/Gaza": "Asia/Gaza";
1011
+ "Asia/Hebron": "Asia/Hebron";
1012
+ "Asia/Ho_Chi_Minh": "Asia/Ho_Chi_Minh";
1013
+ "Asia/Hong_Kong": "Asia/Hong_Kong";
1014
+ "Asia/Hovd": "Asia/Hovd";
1015
+ "Asia/Irkutsk": "Asia/Irkutsk";
1016
+ "Asia/Jakarta": "Asia/Jakarta";
1017
+ "Asia/Jayapura": "Asia/Jayapura";
1018
+ "Asia/Jerusalem": "Asia/Jerusalem";
1019
+ "Asia/Kabul": "Asia/Kabul";
1020
+ "Asia/Kamchatka": "Asia/Kamchatka";
1021
+ "Asia/Karachi": "Asia/Karachi";
1022
+ "Asia/Kathmandu": "Asia/Kathmandu";
1023
+ "Asia/Khandyga": "Asia/Khandyga";
1024
+ "Asia/Kolkata": "Asia/Kolkata";
1025
+ "Asia/Krasnoyarsk": "Asia/Krasnoyarsk";
1026
+ "Asia/Kuala_Lumpur": "Asia/Kuala_Lumpur";
1027
+ "Asia/Kuching": "Asia/Kuching";
1028
+ "Asia/Kuwait": "Asia/Kuwait";
1029
+ "Asia/Macau": "Asia/Macau";
1030
+ "Asia/Magadan": "Asia/Magadan";
1031
+ "Asia/Makassar": "Asia/Makassar";
1032
+ "Asia/Manila": "Asia/Manila";
1033
+ "Asia/Muscat": "Asia/Muscat";
1034
+ "Asia/Nicosia": "Asia/Nicosia";
1035
+ "Asia/Novokuznetsk": "Asia/Novokuznetsk";
1036
+ "Asia/Novosibirsk": "Asia/Novosibirsk";
1037
+ "Asia/Omsk": "Asia/Omsk";
1038
+ "Asia/Oral": "Asia/Oral";
1039
+ "Asia/Phnom_Penh": "Asia/Phnom_Penh";
1040
+ "Asia/Pontianak": "Asia/Pontianak";
1041
+ "Asia/Pyongyang": "Asia/Pyongyang";
1042
+ "Asia/Qatar": "Asia/Qatar";
1043
+ "Asia/Qostanay": "Asia/Qostanay";
1044
+ "Asia/Qyzylorda": "Asia/Qyzylorda";
1045
+ "Asia/Riyadh": "Asia/Riyadh";
1046
+ "Asia/Sakhalin": "Asia/Sakhalin";
1047
+ "Asia/Samarkand": "Asia/Samarkand";
1048
+ "Asia/Seoul": "Asia/Seoul";
1049
+ "Asia/Shanghai": "Asia/Shanghai";
1050
+ "Asia/Singapore": "Asia/Singapore";
1051
+ "Asia/Srednekolymsk": "Asia/Srednekolymsk";
1052
+ "Asia/Taipei": "Asia/Taipei";
1053
+ "Asia/Tashkent": "Asia/Tashkent";
1054
+ "Asia/Tbilisi": "Asia/Tbilisi";
1055
+ "Asia/Tehran": "Asia/Tehran";
1056
+ "Asia/Thimphu": "Asia/Thimphu";
1057
+ "Asia/Tokyo": "Asia/Tokyo";
1058
+ "Asia/Tomsk": "Asia/Tomsk";
1059
+ "Asia/Ulaanbaatar": "Asia/Ulaanbaatar";
1060
+ "Asia/Urumqi": "Asia/Urumqi";
1061
+ "Asia/Ust-Nera": "Asia/Ust-Nera";
1062
+ "Asia/Vientiane": "Asia/Vientiane";
1063
+ "Asia/Vladivostok": "Asia/Vladivostok";
1064
+ "Asia/Yakutsk": "Asia/Yakutsk";
1065
+ "Asia/Yangon": "Asia/Yangon";
1066
+ "Asia/Yekaterinburg": "Asia/Yekaterinburg";
1067
+ "Asia/Yerevan": "Asia/Yerevan";
1068
+ "Atlantic/Azores": "Atlantic/Azores";
1069
+ "Atlantic/Bermuda": "Atlantic/Bermuda";
1070
+ "Atlantic/Canary": "Atlantic/Canary";
1071
+ "Atlantic/Cape_Verde": "Atlantic/Cape_Verde";
1072
+ "Atlantic/Faroe": "Atlantic/Faroe";
1073
+ "Atlantic/Madeira": "Atlantic/Madeira";
1074
+ "Atlantic/Reykjavik": "Atlantic/Reykjavik";
1075
+ "Atlantic/South_Georgia": "Atlantic/South_Georgia";
1076
+ "Atlantic/St_Helena": "Atlantic/St_Helena";
1077
+ "Atlantic/Stanley": "Atlantic/Stanley";
1078
+ "Australia/Adelaide": "Australia/Adelaide";
1079
+ "Australia/Brisbane": "Australia/Brisbane";
1080
+ "Australia/Broken_Hill": "Australia/Broken_Hill";
1081
+ "Australia/Darwin": "Australia/Darwin";
1082
+ "Australia/Eucla": "Australia/Eucla";
1083
+ "Australia/Hobart": "Australia/Hobart";
1084
+ "Australia/Lindeman": "Australia/Lindeman";
1085
+ "Australia/Lord_Howe": "Australia/Lord_Howe";
1086
+ "Australia/Melbourne": "Australia/Melbourne";
1087
+ "Australia/Perth": "Australia/Perth";
1088
+ "Australia/Sydney": "Australia/Sydney";
1089
+ "Europe/Amsterdam": "Europe/Amsterdam";
1090
+ "Europe/Andorra": "Europe/Andorra";
1091
+ "Europe/Astrakhan": "Europe/Astrakhan";
1092
+ "Europe/Athens": "Europe/Athens";
1093
+ "Europe/Belgrade": "Europe/Belgrade";
1094
+ "Europe/Berlin": "Europe/Berlin";
1095
+ "Europe/Bratislava": "Europe/Bratislava";
1096
+ "Europe/Brussels": "Europe/Brussels";
1097
+ "Europe/Bucharest": "Europe/Bucharest";
1098
+ "Europe/Budapest": "Europe/Budapest";
1099
+ "Europe/Busingen": "Europe/Busingen";
1100
+ "Europe/Chisinau": "Europe/Chisinau";
1101
+ "Europe/Copenhagen": "Europe/Copenhagen";
1102
+ "Europe/Dublin": "Europe/Dublin";
1103
+ "Europe/Gibraltar": "Europe/Gibraltar";
1104
+ "Europe/Guernsey": "Europe/Guernsey";
1105
+ "Europe/Helsinki": "Europe/Helsinki";
1106
+ "Europe/Isle_of_Man": "Europe/Isle_of_Man";
1107
+ "Europe/Istanbul": "Europe/Istanbul";
1108
+ "Europe/Jersey": "Europe/Jersey";
1109
+ "Europe/Kaliningrad": "Europe/Kaliningrad";
1110
+ "Europe/Kirov": "Europe/Kirov";
1111
+ "Europe/Kyiv": "Europe/Kyiv";
1112
+ "Europe/Lisbon": "Europe/Lisbon";
1113
+ "Europe/Ljubljana": "Europe/Ljubljana";
1114
+ "Europe/London": "Europe/London";
1115
+ "Europe/Luxembourg": "Europe/Luxembourg";
1116
+ "Europe/Madrid": "Europe/Madrid";
1117
+ "Europe/Malta": "Europe/Malta";
1118
+ "Europe/Mariehamn": "Europe/Mariehamn";
1119
+ "Europe/Minsk": "Europe/Minsk";
1120
+ "Europe/Monaco": "Europe/Monaco";
1121
+ "Europe/Moscow": "Europe/Moscow";
1122
+ "Europe/Oslo": "Europe/Oslo";
1123
+ "Europe/Paris": "Europe/Paris";
1124
+ "Europe/Podgorica": "Europe/Podgorica";
1125
+ "Europe/Prague": "Europe/Prague";
1126
+ "Europe/Riga": "Europe/Riga";
1127
+ "Europe/Rome": "Europe/Rome";
1128
+ "Europe/Samara": "Europe/Samara";
1129
+ "Europe/San_Marino": "Europe/San_Marino";
1130
+ "Europe/Sarajevo": "Europe/Sarajevo";
1131
+ "Europe/Saratov": "Europe/Saratov";
1132
+ "Europe/Simferopol": "Europe/Simferopol";
1133
+ "Europe/Skopje": "Europe/Skopje";
1134
+ "Europe/Sofia": "Europe/Sofia";
1135
+ "Europe/Stockholm": "Europe/Stockholm";
1136
+ "Europe/Tallinn": "Europe/Tallinn";
1137
+ "Europe/Tirane": "Europe/Tirane";
1138
+ "Europe/Ulyanovsk": "Europe/Ulyanovsk";
1139
+ "Europe/Vaduz": "Europe/Vaduz";
1140
+ "Europe/Vatican": "Europe/Vatican";
1141
+ "Europe/Vienna": "Europe/Vienna";
1142
+ "Europe/Vilnius": "Europe/Vilnius";
1143
+ "Europe/Volgograd": "Europe/Volgograd";
1144
+ "Europe/Warsaw": "Europe/Warsaw";
1145
+ "Europe/Zagreb": "Europe/Zagreb";
1146
+ "Europe/Zurich": "Europe/Zurich";
1147
+ "Indian/Antananarivo": "Indian/Antananarivo";
1148
+ "Indian/Chagos": "Indian/Chagos";
1149
+ "Indian/Christmas": "Indian/Christmas";
1150
+ "Indian/Cocos": "Indian/Cocos";
1151
+ "Indian/Comoro": "Indian/Comoro";
1152
+ "Indian/Kerguelen": "Indian/Kerguelen";
1153
+ "Indian/Mahe": "Indian/Mahe";
1154
+ "Indian/Maldives": "Indian/Maldives";
1155
+ "Indian/Mauritius": "Indian/Mauritius";
1156
+ "Indian/Mayotte": "Indian/Mayotte";
1157
+ "Indian/Reunion": "Indian/Reunion";
1158
+ "Pacific/Apia": "Pacific/Apia";
1159
+ "Pacific/Auckland": "Pacific/Auckland";
1160
+ "Pacific/Bougainville": "Pacific/Bougainville";
1161
+ "Pacific/Chatham": "Pacific/Chatham";
1162
+ "Pacific/Chuuk": "Pacific/Chuuk";
1163
+ "Pacific/Easter": "Pacific/Easter";
1164
+ "Pacific/Efate": "Pacific/Efate";
1165
+ "Pacific/Fakaofo": "Pacific/Fakaofo";
1166
+ "Pacific/Fiji": "Pacific/Fiji";
1167
+ "Pacific/Funafuti": "Pacific/Funafuti";
1168
+ "Pacific/Galapagos": "Pacific/Galapagos";
1169
+ "Pacific/Gambier": "Pacific/Gambier";
1170
+ "Pacific/Guadalcanal": "Pacific/Guadalcanal";
1171
+ "Pacific/Guam": "Pacific/Guam";
1172
+ "Pacific/Honolulu": "Pacific/Honolulu";
1173
+ "Pacific/Kanton": "Pacific/Kanton";
1174
+ "Pacific/Kiritimati": "Pacific/Kiritimati";
1175
+ "Pacific/Kosrae": "Pacific/Kosrae";
1176
+ "Pacific/Kwajalein": "Pacific/Kwajalein";
1177
+ "Pacific/Majuro": "Pacific/Majuro";
1178
+ "Pacific/Marquesas": "Pacific/Marquesas";
1179
+ "Pacific/Midway": "Pacific/Midway";
1180
+ "Pacific/Nauru": "Pacific/Nauru";
1181
+ "Pacific/Niue": "Pacific/Niue";
1182
+ "Pacific/Norfolk": "Pacific/Norfolk";
1183
+ "Pacific/Noumea": "Pacific/Noumea";
1184
+ "Pacific/Pago_Pago": "Pacific/Pago_Pago";
1185
+ "Pacific/Palau": "Pacific/Palau";
1186
+ "Pacific/Pitcairn": "Pacific/Pitcairn";
1187
+ "Pacific/Pohnpei": "Pacific/Pohnpei";
1188
+ "Pacific/Port_Moresby": "Pacific/Port_Moresby";
1189
+ "Pacific/Rarotonga": "Pacific/Rarotonga";
1190
+ "Pacific/Saipan": "Pacific/Saipan";
1191
+ "Pacific/Tahiti": "Pacific/Tahiti";
1192
+ "Pacific/Tarawa": "Pacific/Tarawa";
1193
+ "Pacific/Tongatapu": "Pacific/Tongatapu";
1194
+ "Pacific/Wake": "Pacific/Wake";
1195
+ "Pacific/Wallis": "Pacific/Wallis";
1196
+ UTC: "UTC";
1197
+ }>;
1198
+ }, z.core.$strip>;
1199
+
1200
+ type Location = {
1201
+ id: number;
1202
+ short: string;
1203
+ long: string;
1204
+ created_at: string;
1205
+ updated_at: string | null;
1206
+ };
1207
+
1208
+ type Node = {
1209
+ id: number;
1210
+ uuid: string;
1211
+ public: boolean;
1212
+ name: string;
1213
+ description: Nullable<string>;
1214
+ fqdn: string;
1215
+ scheme: "https" | "http";
1216
+ behind_proxy: boolean;
1217
+ maintenance_mode: boolean;
1218
+ memory: number;
1219
+ memory_overallocate: number;
1220
+ disk: number;
1221
+ disk_overallocate: number;
1222
+ cpu: number;
1223
+ cpu_overallocate: number;
1224
+ upload_size: number;
1225
+ daemon_listen: number;
1226
+ daemon_sftp: number;
1227
+ daemon_sftp_alias: Nullable<string>;
1228
+ daemon_base: string;
1229
+ daemon_connect: number;
1230
+ created_at: string;
1231
+ updated_at: Nullable<string>;
1232
+ tags: string[];
1233
+ allocated_resources: {
1234
+ memory: number;
1235
+ disk: number;
1236
+ cpu: number;
1237
+ };
1238
+ relationships?: {
1239
+ allocations?: GenericListResponse<GenericResponse<Allocation, "allocation">>;
1240
+ location?: GenericResponse<Location, "location">;
1241
+ servers?: GenericListResponse<GenericResponse<Server, "server">>;
1242
+ };
1243
+ };
1244
+ type NodeConfiguration = {
1245
+ debug: boolean;
1246
+ uuid: string;
1247
+ token_id: string;
1248
+ token: string;
1249
+ api: {
1250
+ host: string;
1251
+ port: number;
1252
+ upload_limit: number;
1253
+ ssl: {
1254
+ enabled: boolean;
1255
+ cert: string;
1256
+ key: string;
1257
+ };
1258
+ };
1259
+ system: {
1260
+ data: string;
1261
+ sftp: {
1262
+ bind_port: number;
1263
+ };
1264
+ };
1265
+ allowed_mounts: string[];
1266
+ remote: string;
1267
+ };
1268
+
1269
+ type Allocation = {
1270
+ id: number;
1271
+ ip: string;
1272
+ alias: Nullable<string>;
1273
+ port: number;
1274
+ notes: Nullable<string>;
1275
+ assigned: boolean;
1276
+ };
1277
+ type AllocationRel = Allocation & {
1278
+ relationships?: {
1279
+ node?: GenericResponse<Node, "node">;
1280
+ server?: GenericResponse<Server, "server">;
1281
+ };
1282
+ };
1283
+
1284
+ declare class NodesAllocations {
1285
+ private readonly r;
1286
+ private readonly id;
1287
+ constructor(requester: AxiosInstance, id: number);
1288
+ list: (include?: ("node" | "server")[]) => Promise<AllocationRel[]>;
1289
+ create: (ip: string, ports: string[], alias?: string) => Promise<void>;
1290
+ delete: (alloc_id: number) => Promise<void>;
1291
+ }
1292
+
1293
+ declare class Nodes {
1294
+ private readonly r;
1295
+ constructor(requester: AxiosInstance);
1296
+ list: (include?: ("allocations" | "location" | "servers")[], page?: number) => Promise<Node[]>;
1297
+ listDeployable: (filters: {
1298
+ disk: number;
1299
+ memory: number;
1300
+ cpu?: number;
1301
+ location_ids?: string[];
1302
+ tags?: string[];
1303
+ }, include?: ("allocations" | "location" | "servers")[], page?: number) => Promise<Node[]>;
1304
+ info: (id: number, include?: ("allocations" | "location" | "servers")[]) => Promise<Node>;
1305
+ create: (node: z.infer<typeof NodeCreateSchema>) => Promise<Node>;
1306
+ get_configuration: (id: number) => Promise<NodeConfiguration>;
1307
+ update: (id: number, node: z.infer<typeof NodeCreateSchema>) => Promise<Node>;
1308
+ delete: (id: number) => Promise<void>;
1309
+ allocations: (server_id: number) => NodesAllocations;
1310
+ }
1311
+ declare const NodeCreateSchema: z.ZodObject<{
1312
+ name: z.ZodString;
1313
+ description: z.ZodOptional<z.ZodString>;
1314
+ public: z.ZodOptional<z.ZodBoolean>;
1315
+ fqdn: z.ZodString;
1316
+ scheme: z.ZodEnum<{
1317
+ https: "https";
1318
+ http: "http";
1319
+ }>;
1320
+ behind_proxy: z.ZodOptional<z.ZodBoolean>;
1321
+ memory: z.ZodNumber;
1322
+ memory_overallocate: z.ZodNumber;
1323
+ disk: z.ZodNumber;
1324
+ disk_overallocate: z.ZodNumber;
1325
+ cpu: z.ZodNumber;
1326
+ cpu_overallocate: z.ZodNumber;
1327
+ daemon_base: z.ZodOptional<z.ZodString>;
1328
+ daemon_sftp: z.ZodNumber;
1329
+ daemon_sftp_alias: z.ZodOptional<z.ZodString>;
1330
+ daemon_listen: z.ZodNumber;
1331
+ daemon_connect: z.ZodNumber;
1332
+ maintenance_mode: z.ZodOptional<z.ZodBoolean>;
1333
+ upload_size: z.ZodNumber;
1334
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
1335
+ }, z.core.$strip>;
1336
+
1337
+ declare class ServersDatabases {
1338
+ private readonly r;
1339
+ private readonly id;
1340
+ constructor(r: AxiosInstance, server_id: number);
1341
+ list: () => Promise<ServerDatabase[]>;
1342
+ create: (database: string, remote: string, host: string) => Promise<ServerDatabase>;
1343
+ info: (database_id: number) => Promise<ServerDatabase>;
1344
+ delete: (database_id: number) => Promise<void>;
1345
+ resetPassword: (database_id: number) => Promise<void>;
1346
+ }
1347
+
1348
+ declare class Servers {
1349
+ private readonly r;
1350
+ private readonly id;
1351
+ databases: ServersDatabases;
1352
+ constructor(r: AxiosInstance, server_id: number);
1353
+ info: (include?: ("egg" | "subusers")[]) => Promise<Server>;
1354
+ delete: (force?: boolean) => Promise<void>;
1355
+ updateDetails: (opts: z.infer<typeof UpdateDetailsSchema>) => Promise<void>;
1356
+ updateBuild: (opts: z.infer<typeof UpdateBuildSchema>) => Promise<void>;
1357
+ updateStartup: (opts: z.infer<typeof UpdateStartupSchema>) => Promise<void>;
1358
+ suspend: () => Promise<void>;
1359
+ unsuspend: () => Promise<void>;
1360
+ reinstall: () => Promise<void>;
1361
+ transferStart: (node_id: number, allocation_id: number, allocation_additional?: string[]) => Promise<void>;
1362
+ transferCancel: () => Promise<void>;
1363
+ }
1364
+ declare const CreateServerSchema: z.ZodObject<{
1365
+ external_id: z.ZodOptional<z.ZodString>;
1366
+ name: z.ZodString;
1367
+ description: z.ZodOptional<z.ZodString>;
1368
+ user: z.ZodNumber;
1369
+ egg: z.ZodNumber;
1370
+ docker_image: z.ZodOptional<z.ZodString>;
1371
+ startup: z.ZodOptional<z.ZodString>;
1372
+ environment: z.ZodArray<z.ZodString>;
1373
+ skip_scripts: z.ZodOptional<z.ZodBoolean>;
1374
+ oom_killer: z.ZodOptional<z.ZodBoolean>;
1375
+ start_on_completion: z.ZodOptional<z.ZodBoolean>;
1376
+ limits: z.ZodObject<{
1377
+ memory: z.ZodNumber;
1378
+ swap: z.ZodNumber;
1379
+ disk: z.ZodNumber;
1380
+ io: z.ZodNumber;
1381
+ threads: z.ZodOptional<z.ZodString>;
1382
+ cpu: z.ZodNumber;
1383
+ }, z.core.$strip>;
1384
+ feature_limits: z.ZodObject<{
1385
+ databases: z.ZodNumber;
1386
+ allocations: z.ZodNumber;
1387
+ backups: z.ZodNumber;
1388
+ }, z.core.$strip>;
1389
+ allocation: z.ZodOptional<z.ZodObject<{
1390
+ default: z.ZodString;
1391
+ additional: z.ZodOptional<z.ZodArray<z.ZodString>>;
1392
+ }, z.core.$strip>>;
1393
+ deploy: z.ZodOptional<z.ZodObject<{
1394
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
1395
+ dedicated_ip: z.ZodOptional<z.ZodBoolean>;
1396
+ port_range: z.ZodOptional<z.ZodArray<z.ZodString>>;
1397
+ }, z.core.$strip>>;
1398
+ }, z.core.$strip>;
1399
+ declare const UpdateDetailsSchema: z.ZodObject<{
1400
+ user: z.ZodNumber;
1401
+ description: z.ZodOptional<z.ZodString>;
1402
+ name: z.ZodString;
1403
+ external_id: z.ZodOptional<z.ZodString>;
1404
+ }, z.core.$strip>;
1405
+ declare const UpdateBuildSchema: z.ZodObject<{
1406
+ oom_killer: z.ZodOptional<z.ZodBoolean>;
1407
+ limits: z.ZodObject<{
1408
+ memory: z.ZodNumber;
1409
+ swap: z.ZodNumber;
1410
+ disk: z.ZodNumber;
1411
+ io: z.ZodNumber;
1412
+ threads: z.ZodOptional<z.ZodString>;
1413
+ cpu: z.ZodNumber;
1414
+ }, z.core.$strip>;
1415
+ feature_limits: z.ZodObject<{
1416
+ databases: z.ZodNumber;
1417
+ allocations: z.ZodNumber;
1418
+ backups: z.ZodNumber;
1419
+ }, z.core.$strip>;
1420
+ allocation: z.ZodOptional<z.ZodNumber>;
1421
+ add_allocations: z.ZodOptional<z.ZodArray<z.ZodString>>;
1422
+ remove_allocations: z.ZodOptional<z.ZodArray<z.ZodString>>;
1423
+ }, z.core.$strip>;
1424
+ declare const UpdateStartupSchema: z.ZodObject<{
1425
+ egg: z.ZodNumber;
1426
+ startup: z.ZodOptional<z.ZodString>;
1427
+ environment: z.ZodArray<z.ZodString>;
1428
+ skip_scripts: z.ZodOptional<z.ZodBoolean>;
1429
+ image: z.ZodOptional<z.ZodString>;
1430
+ }, z.core.$strip>;
1431
+
1432
+ type DatabaseHost = {
1433
+ id: number;
1434
+ name: string;
1435
+ host: string;
1436
+ port: number;
1437
+ username: string;
1438
+ created_at: string;
1439
+ updated_at: Nullable<string>;
1440
+ };
1441
+
1442
+ declare class DatabaseHosts {
1443
+ private readonly r;
1444
+ constructor(r: AxiosInstance);
1445
+ list: (page?: number) => Promise<DatabaseHost[]>;
1446
+ info: (id: string) => Promise<DatabaseHost>;
1447
+ create: (opts: z.infer<typeof CreateDBHostSchema>) => Promise<void>;
1448
+ update: (id: string, opts: z.infer<typeof CreateDBHostSchema>) => Promise<DatabaseHost>;
1449
+ delete: (id: string) => Promise<void>;
1450
+ }
1451
+ declare const CreateDBHostSchema: z.ZodObject<{
1452
+ name: z.ZodString;
1453
+ host: z.ZodString;
1454
+ port: z.ZodNumber;
1455
+ username: z.ZodString;
1456
+ password: z.ZodOptional<z.ZodString>;
1457
+ node_ids: z.ZodOptional<z.ZodArray<z.ZodString>>;
1458
+ max_databases: z.ZodOptional<z.ZodNumber>;
1459
+ }, z.core.$strip>;
1460
+
1461
+ type Role = {
1462
+ id: number;
1463
+ name: string;
1464
+ created_at: string;
1465
+ updated_at: string;
1466
+ };
1467
+
1468
+ declare class Roles {
1469
+ private readonly r;
1470
+ constructor(r: AxiosInstance);
1471
+ list: (page?: number) => Promise<Role[]>;
1472
+ info: (id: number) => Promise<Role>;
1473
+ create: (opts: {
1474
+ name: string;
1475
+ }) => Promise<void>;
1476
+ update: (id: number, opts: {
1477
+ name: string;
1478
+ }) => Promise<void>;
1479
+ delete: (id: number) => Promise<void>;
1480
+ }
1481
+
1482
+ declare class Client {
1483
+ private readonly r;
1484
+ users: Users;
1485
+ nodes: Nodes;
1486
+ databaseHosts: DatabaseHosts;
1487
+ roles: Roles;
1488
+ constructor(requester: AxiosInstance);
1489
+ listServers: (search?: string, page?: number) => Promise<Server[]>;
1490
+ createServer: (opts: z.infer<typeof CreateServerSchema>) => Promise<Server>;
1491
+ getServerByExternalId: (external_id: string, include?: ("egg" | "subusers")[]) => Promise<Server>;
1492
+ servers: (server_id: number) => Servers;
1493
+ }
1494
+
1495
+ declare class PelicanClient extends Client$1 {
1496
+ constructor(url: string, token: string, suffix?: string);
1497
+ }
1498
+ declare class PelicanApplication extends Client {
1499
+ constructor(url: string, token: string, suffix?: string);
1500
+ }
1501
+
1502
+ export { PelicanApplication, PelicanClient };