@homeflare/distilled-unifi-network 0.2.0

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 (103) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +125 -0
  3. package/dist/credentials.d.ts +24 -0
  4. package/dist/credentials.d.ts.map +1 -0
  5. package/dist/credentials.js +78 -0
  6. package/dist/credentials.js.map +1 -0
  7. package/dist/errors.d.ts +74 -0
  8. package/dist/errors.d.ts.map +1 -0
  9. package/dist/errors.js +49 -0
  10. package/dist/errors.js.map +1 -0
  11. package/dist/index.d.ts +33 -0
  12. package/dist/index.d.ts.map +1 -0
  13. package/dist/index.js +33 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/protocol.d.ts +18 -0
  16. package/dist/protocol.d.ts.map +1 -0
  17. package/dist/protocol.js +59 -0
  18. package/dist/protocol.js.map +1 -0
  19. package/dist/retry.d.ts +57 -0
  20. package/dist/retry.d.ts.map +1 -0
  21. package/dist/retry.js +50 -0
  22. package/dist/retry.js.map +1 -0
  23. package/dist/services/access_control_acl_rules.d.ts +222 -0
  24. package/dist/services/access_control_acl_rules.d.ts.map +1 -0
  25. package/dist/services/access_control_acl_rules.js +225 -0
  26. package/dist/services/access_control_acl_rules.js.map +1 -0
  27. package/dist/services/application_info.d.ts +15 -0
  28. package/dist/services/application_info.d.ts.map +1 -0
  29. package/dist/services/application_info.js +22 -0
  30. package/dist/services/application_info.js.map +1 -0
  31. package/dist/services/clients.d.ts +108 -0
  32. package/dist/services/clients.d.ts.map +1 -0
  33. package/dist/services/clients.js +122 -0
  34. package/dist/services/clients.js.map +1 -0
  35. package/dist/services/dns_policies.d.ts +143 -0
  36. package/dist/services/dns_policies.d.ts.map +1 -0
  37. package/dist/services/dns_policies.js +171 -0
  38. package/dist/services/dns_policies.js.map +1 -0
  39. package/dist/services/firewall.d.ts +473 -0
  40. package/dist/services/firewall.d.ts.map +1 -0
  41. package/dist/services/firewall.js +521 -0
  42. package/dist/services/firewall.js.map +1 -0
  43. package/dist/services/hotspot.d.ts +107 -0
  44. package/dist/services/hotspot.d.ts.map +1 -0
  45. package/dist/services/hotspot.js +145 -0
  46. package/dist/services/hotspot.js.map +1 -0
  47. package/dist/services/index.d.ts +14 -0
  48. package/dist/services/index.d.ts.map +1 -0
  49. package/dist/services/index.js +15 -0
  50. package/dist/services/index.js.map +1 -0
  51. package/dist/services/networks.d.ts +251 -0
  52. package/dist/services/networks.d.ts.map +1 -0
  53. package/dist/services/networks.js +256 -0
  54. package/dist/services/networks.js.map +1 -0
  55. package/dist/services/sites.d.ts +31 -0
  56. package/dist/services/sites.d.ts.map +1 -0
  57. package/dist/services/sites.js +38 -0
  58. package/dist/services/sites.js.map +1 -0
  59. package/dist/services/supporting_resources.d.ts +238 -0
  60. package/dist/services/supporting_resources.d.ts.map +1 -0
  61. package/dist/services/supporting_resources.js +298 -0
  62. package/dist/services/supporting_resources.js.map +1 -0
  63. package/dist/services/switching.d.ts +168 -0
  64. package/dist/services/switching.d.ts.map +1 -0
  65. package/dist/services/switching.js +226 -0
  66. package/dist/services/switching.js.map +1 -0
  67. package/dist/services/traffic_matching_lists.d.ts +75 -0
  68. package/dist/services/traffic_matching_lists.d.ts.map +1 -0
  69. package/dist/services/traffic_matching_lists.js +126 -0
  70. package/dist/services/traffic_matching_lists.js.map +1 -0
  71. package/dist/services/unifi_devices.d.ts +280 -0
  72. package/dist/services/unifi_devices.d.ts.map +1 -0
  73. package/dist/services/unifi_devices.js +338 -0
  74. package/dist/services/unifi_devices.js.map +1 -0
  75. package/dist/services/wifi_broadcasts.d.ts +378 -0
  76. package/dist/services/wifi_broadcasts.d.ts.map +1 -0
  77. package/dist/services/wifi_broadcasts.js +396 -0
  78. package/dist/services/wifi_broadcasts.js.map +1 -0
  79. package/dist/traits.d.ts +11 -0
  80. package/dist/traits.d.ts.map +1 -0
  81. package/dist/traits.js +12 -0
  82. package/dist/traits.js.map +1 -0
  83. package/package.json +75 -0
  84. package/src/credentials.ts +112 -0
  85. package/src/errors.ts +103 -0
  86. package/src/index.ts +36 -0
  87. package/src/protocol.ts +86 -0
  88. package/src/retry.ts +83 -0
  89. package/src/services/access_control_acl_rules.ts +537 -0
  90. package/src/services/application_info.ts +44 -0
  91. package/src/services/clients.ts +272 -0
  92. package/src/services/dns_policies.ts +363 -0
  93. package/src/services/firewall.ts +1492 -0
  94. package/src/services/hotspot.ts +305 -0
  95. package/src/services/index.ts +14 -0
  96. package/src/services/networks.ts +613 -0
  97. package/src/services/sites.ts +81 -0
  98. package/src/services/supporting_resources.ts +650 -0
  99. package/src/services/switching.ts +496 -0
  100. package/src/services/traffic_matching_lists.ts +248 -0
  101. package/src/services/unifi_devices.ts +795 -0
  102. package/src/services/wifi_broadcasts.ts +992 -0
  103. package/src/traits.ts +45 -0
@@ -0,0 +1,650 @@
1
+ // AUTO-GENERATED by scripts/generate.ts from .generated-specs (specs/spec-mirror-unifi-network/specs/openapi.json). Do not edit.
2
+ import * as S from "@distilled.cloud/core/schema";
3
+ import * as API from "@distilled.cloud/core/api";
4
+ import * as T from "../traits.ts";
5
+ import {
6
+ UnifiNetworkProtocol,
7
+ type UnifiNetworkOpError,
8
+ type UnifiNetworkOpContext,
9
+ } from "../protocol.ts";
10
+ import { UnknownUnifiNetworkError } from "../errors.ts";
11
+ import * as Retry from "../retry.ts";
12
+
13
+ export type { UnifiNetworkOpError, UnifiNetworkOpContext };
14
+
15
+ export interface GetCountriesRequest {
16
+ offset?: number;
17
+ limit?: number;
18
+ filter?: string;
19
+ }
20
+ export const GetCountriesRequest = /*@__PURE__*/ S.suspend(() =>
21
+ S.Struct({
22
+ offset: S.optional(S.Number.pipe(T.Query())),
23
+ limit: S.optional(S.Number.pipe(T.Query())),
24
+ filter: S.optional(S.String.pipe(T.Query())),
25
+ }).pipe(T.Http({ method: "GET", uri: "/v1/countries", code: 200 })),
26
+ ).annotate({
27
+ identifier: "GetCountriesRequest",
28
+ }) as any as S.Schema<GetCountriesRequest>;
29
+
30
+ export interface CountryDefinition {
31
+ /** The country code in ISO 3166-1 alpha-2 format. */
32
+ code: string;
33
+ /** The country name. */
34
+ name: string;
35
+ }
36
+ export const CountryDefinition = /*@__PURE__*/ S.suspend(() =>
37
+ S.Struct({
38
+ code: S.String,
39
+ name: S.String,
40
+ }),
41
+ ).annotate({
42
+ identifier: "CountryDefinition",
43
+ }) as any as S.Schema<CountryDefinition>;
44
+
45
+ export type CountryDefinitionPageDataList = Array<CountryDefinition>;
46
+ export const CountryDefinitionPageDataList = /*@__PURE__*/ S.Array(
47
+ CountryDefinition,
48
+ ) as any as S.Schema<CountryDefinitionPageDataList>;
49
+
50
+ export interface CountryDefinitionPage {
51
+ count: number;
52
+ data: CountryDefinitionPageDataList;
53
+ limit: number;
54
+ offset: number;
55
+ totalCount: number;
56
+ }
57
+ export const CountryDefinitionPage = /*@__PURE__*/ S.suspend(() =>
58
+ S.Struct({
59
+ count: S.Number,
60
+ data: CountryDefinitionPageDataList,
61
+ limit: S.Number,
62
+ offset: S.Number,
63
+ totalCount: S.Number,
64
+ }),
65
+ ).annotate({
66
+ identifier: "CountryDefinitionPage",
67
+ }) as any as S.Schema<CountryDefinitionPage>;
68
+
69
+ export interface GetDeviceTagPageRequest {
70
+ siteId: string;
71
+ offset?: number;
72
+ limit?: number;
73
+ filter?: unknown;
74
+ }
75
+ export const GetDeviceTagPageRequest = /*@__PURE__*/ S.suspend(() =>
76
+ S.Struct({
77
+ siteId: S.String.pipe(T.Label()),
78
+ offset: S.optional(S.Number.pipe(T.Query())),
79
+ limit: S.optional(S.Number.pipe(T.Query())),
80
+ filter: S.optional(S.Unknown.pipe(T.Query())),
81
+ }).pipe(
82
+ T.Http({ method: "GET", uri: "/v1/sites/{siteId}/device-tags", code: 200 }),
83
+ ),
84
+ ).annotate({
85
+ identifier: "GetDeviceTagPageRequest",
86
+ }) as any as S.Schema<GetDeviceTagPageRequest>;
87
+
88
+ export type DeviceTagDeviceIdsList = Array<string>;
89
+ export const DeviceTagDeviceIdsList = /*@__PURE__*/ S.Array(
90
+ S.String,
91
+ ) as any as S.Schema<DeviceTagDeviceIdsList>;
92
+
93
+ export type UserOrOrchestratedEntityMetadataSource = "SDWAN";
94
+ export const UserOrOrchestratedEntityMetadataSource = S.String;
95
+
96
+ export interface UserOrOrchestratedEntityMetadata {
97
+ origin: string;
98
+ source?: UserOrOrchestratedEntityMetadataSource;
99
+ }
100
+ export const UserOrOrchestratedEntityMetadata = /*@__PURE__*/ S.suspend(() =>
101
+ S.Struct({
102
+ origin: S.String,
103
+ source: S.optional(UserOrOrchestratedEntityMetadataSource),
104
+ }),
105
+ ).annotate({
106
+ identifier: "UserOrOrchestratedEntityMetadata",
107
+ }) as any as S.Schema<UserOrOrchestratedEntityMetadata>;
108
+
109
+ export interface DeviceTag {
110
+ deviceIds: DeviceTagDeviceIdsList;
111
+ id: string;
112
+ metadata: UserOrOrchestratedEntityMetadata;
113
+ name: string;
114
+ }
115
+ export const DeviceTag = /*@__PURE__*/ S.suspend(() =>
116
+ S.Struct({
117
+ deviceIds: DeviceTagDeviceIdsList,
118
+ id: S.String,
119
+ metadata: UserOrOrchestratedEntityMetadata,
120
+ name: S.String,
121
+ }),
122
+ ).annotate({ identifier: "DeviceTag" }) as any as S.Schema<DeviceTag>;
123
+
124
+ export type IntegrationDeviceTagPageDtoDataList = Array<DeviceTag>;
125
+ export const IntegrationDeviceTagPageDtoDataList = /*@__PURE__*/ S.Array(
126
+ DeviceTag,
127
+ ) as any as S.Schema<IntegrationDeviceTagPageDtoDataList>;
128
+
129
+ export interface IntegrationDeviceTagPageDto {
130
+ count: number;
131
+ data: IntegrationDeviceTagPageDtoDataList;
132
+ limit: number;
133
+ offset: number;
134
+ totalCount: number;
135
+ }
136
+ export const IntegrationDeviceTagPageDto = /*@__PURE__*/ S.suspend(() =>
137
+ S.Struct({
138
+ count: S.Number,
139
+ data: IntegrationDeviceTagPageDtoDataList,
140
+ limit: S.Number,
141
+ offset: S.Number,
142
+ totalCount: S.Number,
143
+ }),
144
+ ).annotate({
145
+ identifier: "IntegrationDeviceTagPageDto",
146
+ }) as any as S.Schema<IntegrationDeviceTagPageDto>;
147
+
148
+ export interface GetDpiApplicationCategoriesRequest {
149
+ offset?: number;
150
+ limit?: number;
151
+ filter?: string;
152
+ }
153
+ export const GetDpiApplicationCategoriesRequest = /*@__PURE__*/ S.suspend(() =>
154
+ S.Struct({
155
+ offset: S.optional(S.Number.pipe(T.Query())),
156
+ limit: S.optional(S.Number.pipe(T.Query())),
157
+ filter: S.optional(S.String.pipe(T.Query())),
158
+ }).pipe(T.Http({ method: "GET", uri: "/v1/dpi/categories", code: 200 })),
159
+ ).annotate({
160
+ identifier: "GetDpiApplicationCategoriesRequest",
161
+ }) as any as S.Schema<GetDpiApplicationCategoriesRequest>;
162
+
163
+ export interface DPICategory {
164
+ id: number;
165
+ name: string;
166
+ }
167
+ export const DPICategory = /*@__PURE__*/ S.suspend(() =>
168
+ S.Struct({
169
+ id: S.Number,
170
+ name: S.String,
171
+ }),
172
+ ).annotate({ identifier: "DPICategory" }) as any as S.Schema<DPICategory>;
173
+
174
+ export type DPICategoryPageDataList = Array<DPICategory>;
175
+ export const DPICategoryPageDataList = /*@__PURE__*/ S.Array(
176
+ DPICategory,
177
+ ) as any as S.Schema<DPICategoryPageDataList>;
178
+
179
+ export interface DPICategoryPage {
180
+ count: number;
181
+ data: DPICategoryPageDataList;
182
+ limit: number;
183
+ offset: number;
184
+ totalCount: number;
185
+ }
186
+ export const DPICategoryPage = /*@__PURE__*/ S.suspend(() =>
187
+ S.Struct({
188
+ count: S.Number,
189
+ data: DPICategoryPageDataList,
190
+ limit: S.Number,
191
+ offset: S.Number,
192
+ totalCount: S.Number,
193
+ }),
194
+ ).annotate({
195
+ identifier: "DPICategoryPage",
196
+ }) as any as S.Schema<DPICategoryPage>;
197
+
198
+ export interface GetDpiApplicationsRequest {
199
+ offset?: number;
200
+ limit?: number;
201
+ filter?: string;
202
+ }
203
+ export const GetDpiApplicationsRequest = /*@__PURE__*/ S.suspend(() =>
204
+ S.Struct({
205
+ offset: S.optional(S.Number.pipe(T.Query())),
206
+ limit: S.optional(S.Number.pipe(T.Query())),
207
+ filter: S.optional(S.String.pipe(T.Query())),
208
+ }).pipe(T.Http({ method: "GET", uri: "/v1/dpi/applications", code: 200 })),
209
+ ).annotate({
210
+ identifier: "GetDpiApplicationsRequest",
211
+ }) as any as S.Schema<GetDpiApplicationsRequest>;
212
+
213
+ export type DPIApplication = DPICategory;
214
+ export const DPIApplication = DPICategory;
215
+
216
+ export type DPIApplicationPageDataList = Array<DPICategory>;
217
+ export const DPIApplicationPageDataList = /*@__PURE__*/ S.Array(
218
+ DPICategory,
219
+ ) as any as S.Schema<DPIApplicationPageDataList>;
220
+
221
+ export interface DPIApplicationPage {
222
+ count: number;
223
+ data: DPIApplicationPageDataList;
224
+ limit: number;
225
+ offset: number;
226
+ totalCount: number;
227
+ }
228
+ export const DPIApplicationPage = /*@__PURE__*/ S.suspend(() =>
229
+ S.Struct({
230
+ count: S.Number,
231
+ data: DPIApplicationPageDataList,
232
+ limit: S.Number,
233
+ offset: S.Number,
234
+ totalCount: S.Number,
235
+ }),
236
+ ).annotate({
237
+ identifier: "DPIApplicationPage",
238
+ }) as any as S.Schema<DPIApplicationPage>;
239
+
240
+ export interface GetRadiusProfileOverviewPageRequest {
241
+ siteId: string;
242
+ offset?: number;
243
+ limit?: number;
244
+ filter?: string;
245
+ }
246
+ export const GetRadiusProfileOverviewPageRequest = /*@__PURE__*/ S.suspend(() =>
247
+ S.Struct({
248
+ siteId: S.String.pipe(T.Label()),
249
+ offset: S.optional(S.Number.pipe(T.Query())),
250
+ limit: S.optional(S.Number.pipe(T.Query())),
251
+ filter: S.optional(S.String.pipe(T.Query())),
252
+ }).pipe(
253
+ T.Http({
254
+ method: "GET",
255
+ uri: "/v1/sites/{siteId}/radius/profiles",
256
+ code: 200,
257
+ }),
258
+ ),
259
+ ).annotate({
260
+ identifier: "GetRadiusProfileOverviewPageRequest",
261
+ }) as any as S.Schema<GetRadiusProfileOverviewPageRequest>;
262
+
263
+ export type UserOrSystemDefinedOrDerivedEntityMetadataSource = "SDWAN";
264
+ export const UserOrSystemDefinedOrDerivedEntityMetadataSource = S.String;
265
+
266
+ export interface UserOrSystemDefinedOrDerivedEntityMetadata {
267
+ origin: string;
268
+ source?: UserOrSystemDefinedOrDerivedEntityMetadataSource;
269
+ }
270
+ export const UserOrSystemDefinedOrDerivedEntityMetadata =
271
+ /*@__PURE__*/ S.suspend(() =>
272
+ S.Struct({
273
+ origin: S.String,
274
+ source: S.optional(UserOrSystemDefinedOrDerivedEntityMetadataSource),
275
+ }),
276
+ ).annotate({
277
+ identifier: "UserOrSystemDefinedOrDerivedEntityMetadata",
278
+ }) as any as S.Schema<UserOrSystemDefinedOrDerivedEntityMetadata>;
279
+
280
+ export interface RadiusProfileOverview {
281
+ id: string;
282
+ metadata: UserOrSystemDefinedOrDerivedEntityMetadata;
283
+ name: string;
284
+ }
285
+ export const RadiusProfileOverview = /*@__PURE__*/ S.suspend(() =>
286
+ S.Struct({
287
+ id: S.String,
288
+ metadata: UserOrSystemDefinedOrDerivedEntityMetadata,
289
+ name: S.String,
290
+ }),
291
+ ).annotate({
292
+ identifier: "RadiusProfileOverview",
293
+ }) as any as S.Schema<RadiusProfileOverview>;
294
+
295
+ export type RadiusProfileOverviewPageDataList = Array<RadiusProfileOverview>;
296
+ export const RadiusProfileOverviewPageDataList = /*@__PURE__*/ S.Array(
297
+ RadiusProfileOverview,
298
+ ) as any as S.Schema<RadiusProfileOverviewPageDataList>;
299
+
300
+ export interface RadiusProfileOverviewPage {
301
+ count: number;
302
+ data: RadiusProfileOverviewPageDataList;
303
+ limit: number;
304
+ offset: number;
305
+ totalCount: number;
306
+ }
307
+ export const RadiusProfileOverviewPage = /*@__PURE__*/ S.suspend(() =>
308
+ S.Struct({
309
+ count: S.Number,
310
+ data: RadiusProfileOverviewPageDataList,
311
+ limit: S.Number,
312
+ offset: S.Number,
313
+ totalCount: S.Number,
314
+ }),
315
+ ).annotate({
316
+ identifier: "RadiusProfileOverviewPage",
317
+ }) as any as S.Schema<RadiusProfileOverviewPage>;
318
+
319
+ export interface GetSiteToSiteVpnTunnelPageRequest {
320
+ siteId: string;
321
+ offset?: number;
322
+ limit?: number;
323
+ filter?: string;
324
+ }
325
+ export const GetSiteToSiteVpnTunnelPageRequest = /*@__PURE__*/ S.suspend(() =>
326
+ S.Struct({
327
+ siteId: S.String.pipe(T.Label()),
328
+ offset: S.optional(S.Number.pipe(T.Query())),
329
+ limit: S.optional(S.Number.pipe(T.Query())),
330
+ filter: S.optional(S.String.pipe(T.Query())),
331
+ }).pipe(
332
+ T.Http({
333
+ method: "GET",
334
+ uri: "/v1/sites/{siteId}/vpn/site-to-site-tunnels",
335
+ code: 200,
336
+ }),
337
+ ),
338
+ ).annotate({
339
+ identifier: "GetSiteToSiteVpnTunnelPageRequest",
340
+ }) as any as S.Schema<GetSiteToSiteVpnTunnelPageRequest>;
341
+
342
+ export type SiteToSiteVPNTunnelMetadataSource = "SDWAN";
343
+ export const SiteToSiteVPNTunnelMetadataSource = S.String;
344
+
345
+ export interface SiteToSiteVPNTunnelMetadata {
346
+ origin: string;
347
+ source?: SiteToSiteVPNTunnelMetadataSource;
348
+ }
349
+ export const SiteToSiteVPNTunnelMetadata = /*@__PURE__*/ S.suspend(() =>
350
+ S.Struct({
351
+ origin: S.String,
352
+ source: S.optional(SiteToSiteVPNTunnelMetadataSource),
353
+ }),
354
+ ).annotate({
355
+ identifier: "SiteToSiteVPNTunnelMetadata",
356
+ }) as any as S.Schema<SiteToSiteVPNTunnelMetadata>;
357
+
358
+ export interface SiteToSiteVPNTunnelOverview {
359
+ id: string;
360
+ metadata: SiteToSiteVPNTunnelMetadata;
361
+ name: string;
362
+ type: string;
363
+ }
364
+ export const SiteToSiteVPNTunnelOverview = /*@__PURE__*/ S.suspend(() =>
365
+ S.Struct({
366
+ id: S.String,
367
+ metadata: SiteToSiteVPNTunnelMetadata,
368
+ name: S.String,
369
+ type: S.String,
370
+ }),
371
+ ).annotate({
372
+ identifier: "SiteToSiteVPNTunnelOverview",
373
+ }) as any as S.Schema<SiteToSiteVPNTunnelOverview>;
374
+
375
+ export type IntegrationSiteToSiteVpnTunnelOverviewPageDtoDataList =
376
+ Array<SiteToSiteVPNTunnelOverview>;
377
+ export const IntegrationSiteToSiteVpnTunnelOverviewPageDtoDataList =
378
+ /*@__PURE__*/ S.Array(
379
+ SiteToSiteVPNTunnelOverview,
380
+ ) as any as S.Schema<IntegrationSiteToSiteVpnTunnelOverviewPageDtoDataList>;
381
+
382
+ export interface IntegrationSiteToSiteVpnTunnelOverviewPageDto {
383
+ count: number;
384
+ data: IntegrationSiteToSiteVpnTunnelOverviewPageDtoDataList;
385
+ limit: number;
386
+ offset: number;
387
+ totalCount: number;
388
+ }
389
+ export const IntegrationSiteToSiteVpnTunnelOverviewPageDto =
390
+ /*@__PURE__*/ S.suspend(() =>
391
+ S.Struct({
392
+ count: S.Number,
393
+ data: IntegrationSiteToSiteVpnTunnelOverviewPageDtoDataList,
394
+ limit: S.Number,
395
+ offset: S.Number,
396
+ totalCount: S.Number,
397
+ }),
398
+ ).annotate({
399
+ identifier: "IntegrationSiteToSiteVpnTunnelOverviewPageDto",
400
+ }) as any as S.Schema<IntegrationSiteToSiteVpnTunnelOverviewPageDto>;
401
+
402
+ export interface GetVpnServerPageRequest {
403
+ siteId: string;
404
+ offset?: number;
405
+ limit?: number;
406
+ filter?: string;
407
+ }
408
+ export const GetVpnServerPageRequest = /*@__PURE__*/ S.suspend(() =>
409
+ S.Struct({
410
+ siteId: S.String.pipe(T.Label()),
411
+ offset: S.optional(S.Number.pipe(T.Query())),
412
+ limit: S.optional(S.Number.pipe(T.Query())),
413
+ filter: S.optional(S.String.pipe(T.Query())),
414
+ }).pipe(
415
+ T.Http({ method: "GET", uri: "/v1/sites/{siteId}/vpn/servers", code: 200 }),
416
+ ),
417
+ ).annotate({
418
+ identifier: "GetVpnServerPageRequest",
419
+ }) as any as S.Schema<GetVpnServerPageRequest>;
420
+
421
+ export type UserDefinedOrDerivedEntityMetadataSource = "SDWAN";
422
+ export const UserDefinedOrDerivedEntityMetadataSource = S.String;
423
+
424
+ export interface UserDefinedOrDerivedEntityMetadata {
425
+ origin: string;
426
+ source?: UserDefinedOrDerivedEntityMetadataSource;
427
+ }
428
+ export const UserDefinedOrDerivedEntityMetadata = /*@__PURE__*/ S.suspend(() =>
429
+ S.Struct({
430
+ origin: S.String,
431
+ source: S.optional(UserDefinedOrDerivedEntityMetadataSource),
432
+ }),
433
+ ).annotate({
434
+ identifier: "UserDefinedOrDerivedEntityMetadata",
435
+ }) as any as S.Schema<UserDefinedOrDerivedEntityMetadata>;
436
+
437
+ export interface VPNServerOverview {
438
+ enabled: boolean;
439
+ id: string;
440
+ metadata: UserDefinedOrDerivedEntityMetadata;
441
+ name: string;
442
+ type: string;
443
+ }
444
+ export const VPNServerOverview = /*@__PURE__*/ S.suspend(() =>
445
+ S.Struct({
446
+ enabled: S.Boolean,
447
+ id: S.String,
448
+ metadata: UserDefinedOrDerivedEntityMetadata,
449
+ name: S.String,
450
+ type: S.String,
451
+ }),
452
+ ).annotate({
453
+ identifier: "VPNServerOverview",
454
+ }) as any as S.Schema<VPNServerOverview>;
455
+
456
+ export type IntegrationVpnServerOverviewPageDtoDataList =
457
+ Array<VPNServerOverview>;
458
+ export const IntegrationVpnServerOverviewPageDtoDataList =
459
+ /*@__PURE__*/ S.Array(
460
+ VPNServerOverview,
461
+ ) as any as S.Schema<IntegrationVpnServerOverviewPageDtoDataList>;
462
+
463
+ export interface IntegrationVpnServerOverviewPageDto {
464
+ count: number;
465
+ data: IntegrationVpnServerOverviewPageDtoDataList;
466
+ limit: number;
467
+ offset: number;
468
+ totalCount: number;
469
+ }
470
+ export const IntegrationVpnServerOverviewPageDto = /*@__PURE__*/ S.suspend(() =>
471
+ S.Struct({
472
+ count: S.Number,
473
+ data: IntegrationVpnServerOverviewPageDtoDataList,
474
+ limit: S.Number,
475
+ offset: S.Number,
476
+ totalCount: S.Number,
477
+ }),
478
+ ).annotate({
479
+ identifier: "IntegrationVpnServerOverviewPageDto",
480
+ }) as any as S.Schema<IntegrationVpnServerOverviewPageDto>;
481
+
482
+ export interface GetWansOverviewPageRequest {
483
+ siteId: string;
484
+ offset?: number;
485
+ limit?: number;
486
+ }
487
+ export const GetWansOverviewPageRequest = /*@__PURE__*/ S.suspend(() =>
488
+ S.Struct({
489
+ siteId: S.String.pipe(T.Label()),
490
+ offset: S.optional(S.Number.pipe(T.Query())),
491
+ limit: S.optional(S.Number.pipe(T.Query())),
492
+ }).pipe(T.Http({ method: "GET", uri: "/v1/sites/{siteId}/wans", code: 200 })),
493
+ ).annotate({
494
+ identifier: "GetWansOverviewPageRequest",
495
+ }) as any as S.Schema<GetWansOverviewPageRequest>;
496
+
497
+ export interface WANOverview {
498
+ id: string;
499
+ name: string;
500
+ }
501
+ export const WANOverview = /*@__PURE__*/ S.suspend(() =>
502
+ S.Struct({
503
+ id: S.String,
504
+ name: S.String,
505
+ }),
506
+ ).annotate({ identifier: "WANOverview" }) as any as S.Schema<WANOverview>;
507
+
508
+ export type WANOverviewPageDataList = Array<WANOverview>;
509
+ export const WANOverviewPageDataList = /*@__PURE__*/ S.Array(
510
+ WANOverview,
511
+ ) as any as S.Schema<WANOverviewPageDataList>;
512
+
513
+ export interface WANOverviewPage {
514
+ count: number;
515
+ data: WANOverviewPageDataList;
516
+ limit: number;
517
+ offset: number;
518
+ totalCount: number;
519
+ }
520
+ export const WANOverviewPage = /*@__PURE__*/ S.suspend(() =>
521
+ S.Struct({
522
+ count: S.Number,
523
+ data: WANOverviewPageDataList,
524
+ limit: S.Number,
525
+ offset: S.Number,
526
+ totalCount: S.Number,
527
+ }),
528
+ ).annotate({
529
+ identifier: "WANOverviewPage",
530
+ }) as any as S.Schema<WANOverviewPage>;
531
+
532
+ export type GetCountriesError = UnifiNetworkOpError;
533
+ /** List Countries Returns ISO-standard country codes and names, used for region-based configuration or regulatory compliance. <details> <summary>Filterable properties (click to expand)</summary> </details> */
534
+ export const getCountries: API.OperationMethod<
535
+ GetCountriesRequest,
536
+ CountryDefinitionPage,
537
+ GetCountriesError,
538
+ UnifiNetworkOpContext
539
+ > = /*@__PURE__*/ API.make(() => ({
540
+ input: GetCountriesRequest,
541
+ output: CountryDefinitionPage,
542
+ errors: [UnknownUnifiNetworkError],
543
+ protocol: UnifiNetworkProtocol,
544
+ retry: Retry.Retry,
545
+ }));
546
+
547
+ export type GetDeviceTagPageError = UnifiNetworkOpError;
548
+ /** List Device Tags Returns all device tags defined within a site, which can be used for WiFi Broadcast assignments. <details> <summary>Filterable properties (click to expand)</summary> </details> */
549
+ export const getDeviceTagPage: API.OperationMethod<
550
+ GetDeviceTagPageRequest,
551
+ IntegrationDeviceTagPageDto,
552
+ GetDeviceTagPageError,
553
+ UnifiNetworkOpContext
554
+ > = /*@__PURE__*/ API.make(() => ({
555
+ input: GetDeviceTagPageRequest,
556
+ output: IntegrationDeviceTagPageDto,
557
+ errors: [UnknownUnifiNetworkError],
558
+ protocol: UnifiNetworkProtocol,
559
+ retry: Retry.Retry,
560
+ }));
561
+
562
+ export type GetDpiApplicationCategoriesError = UnifiNetworkOpError;
563
+ /** List DPI Application Categories Returns predefined Deep Packet Inspection (DPI) application categories used for traffic identification and filtering. <details> <summary>Filterable properties (click to expand)</summary> </details> */
564
+ export const getDpiApplicationCategories: API.OperationMethod<
565
+ GetDpiApplicationCategoriesRequest,
566
+ DPICategoryPage,
567
+ GetDpiApplicationCategoriesError,
568
+ UnifiNetworkOpContext
569
+ > = /*@__PURE__*/ API.make(() => ({
570
+ input: GetDpiApplicationCategoriesRequest,
571
+ output: DPICategoryPage,
572
+ errors: [UnknownUnifiNetworkError],
573
+ protocol: UnifiNetworkProtocol,
574
+ retry: Retry.Retry,
575
+ }));
576
+
577
+ export type GetDpiApplicationsError = UnifiNetworkOpError;
578
+ /** List DPI Applications Lists DPI-recognized applications grouped under categories. Useful for firewall or traffic analytics integration. <details> <summary>Filterable properties (click to expand)</summary> </details> */
579
+ export const getDpiApplications: API.OperationMethod<
580
+ GetDpiApplicationsRequest,
581
+ DPIApplicationPage,
582
+ GetDpiApplicationsError,
583
+ UnifiNetworkOpContext
584
+ > = /*@__PURE__*/ API.make(() => ({
585
+ input: GetDpiApplicationsRequest,
586
+ output: DPIApplicationPage,
587
+ errors: [UnknownUnifiNetworkError],
588
+ protocol: UnifiNetworkProtocol,
589
+ retry: Retry.Retry,
590
+ }));
591
+
592
+ export type GetRadiusProfileOverviewPageError = UnifiNetworkOpError;
593
+ /** List Radius Profiles Returns available RADIUS authentication profiles, including configuration origin metadata. <details> <summary>Filterable properties (click to expand)</summary> </details> */
594
+ export const getRadiusProfileOverviewPage: API.OperationMethod<
595
+ GetRadiusProfileOverviewPageRequest,
596
+ RadiusProfileOverviewPage,
597
+ GetRadiusProfileOverviewPageError,
598
+ UnifiNetworkOpContext
599
+ > = /*@__PURE__*/ API.make(() => ({
600
+ input: GetRadiusProfileOverviewPageRequest,
601
+ output: RadiusProfileOverviewPage,
602
+ errors: [UnknownUnifiNetworkError],
603
+ protocol: UnifiNetworkProtocol,
604
+ retry: Retry.Retry,
605
+ }));
606
+
607
+ export type GetSiteToSiteVpnTunnelPageError = UnifiNetworkOpError;
608
+ /** List Site-To-Site VPN Tunnels Retrieve a paginated list of all site-to-site VPN tunnels on a site. <details> <summary>Filterable properties (click to expand)</summary> </details> */
609
+ export const getSiteToSiteVpnTunnelPage: API.OperationMethod<
610
+ GetSiteToSiteVpnTunnelPageRequest,
611
+ IntegrationSiteToSiteVpnTunnelOverviewPageDto,
612
+ GetSiteToSiteVpnTunnelPageError,
613
+ UnifiNetworkOpContext
614
+ > = /*@__PURE__*/ API.make(() => ({
615
+ input: GetSiteToSiteVpnTunnelPageRequest,
616
+ output: IntegrationSiteToSiteVpnTunnelOverviewPageDto,
617
+ errors: [UnknownUnifiNetworkError],
618
+ protocol: UnifiNetworkProtocol,
619
+ retry: Retry.Retry,
620
+ }));
621
+
622
+ export type GetVpnServerPageError = UnifiNetworkOpError;
623
+ /** List VPN Servers Retrieve a paginated list of all VPN servers on a site. <details> <summary>Filterable properties (click to expand)</summary> </details> */
624
+ export const getVpnServerPage: API.OperationMethod<
625
+ GetVpnServerPageRequest,
626
+ IntegrationVpnServerOverviewPageDto,
627
+ GetVpnServerPageError,
628
+ UnifiNetworkOpContext
629
+ > = /*@__PURE__*/ API.make(() => ({
630
+ input: GetVpnServerPageRequest,
631
+ output: IntegrationVpnServerOverviewPageDto,
632
+ errors: [UnknownUnifiNetworkError],
633
+ protocol: UnifiNetworkProtocol,
634
+ retry: Retry.Retry,
635
+ }));
636
+
637
+ export type GetWansOverviewPageError = UnifiNetworkOpError;
638
+ /** List WAN Interfaces Returns available WAN interface definitions for a given site, including identifiers and names. Useful for network and NAT configuration. */
639
+ export const getWansOverviewPage: API.OperationMethod<
640
+ GetWansOverviewPageRequest,
641
+ WANOverviewPage,
642
+ GetWansOverviewPageError,
643
+ UnifiNetworkOpContext
644
+ > = /*@__PURE__*/ API.make(() => ({
645
+ input: GetWansOverviewPageRequest,
646
+ output: WANOverviewPage,
647
+ errors: [UnknownUnifiNetworkError],
648
+ protocol: UnifiNetworkProtocol,
649
+ retry: Retry.Retry,
650
+ }));