@ixon-cdk/types 1.2.0-next.2 → 1.2.0-next.3

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 (73) hide show
  1. package/dist/component-devkit/src/types/src/index.d.ts +7 -0
  2. package/dist/types/backend-component/backend-component-call.d.ts +18 -0
  3. package/dist/types/backend-component/backend-component-client.d.ts +12 -0
  4. package/dist/types/backend-component/backend-component-result.d.ts +6 -0
  5. package/dist/types/backend-component/index.d.ts +3 -0
  6. package/dist/types/component-context/app-data.d.ts +32 -0
  7. package/dist/types/component-context/index.d.ts +169 -0
  8. package/dist/types/component-context/input.d.ts +19 -0
  9. package/dist/types/component-context/tooltip.d.ts +14 -0
  10. package/dist/types/ixapi/index.d.ts +12 -0
  11. package/dist/types/ixapi/resources/agent-config.d.ts +115 -0
  12. package/dist/types/ixapi/resources/agent-data-condition.d.ts +11 -0
  13. package/dist/types/ixapi/resources/agent-data-source.d.ts +14 -0
  14. package/dist/types/ixapi/resources/agent-data-tag.d.ts +22 -0
  15. package/dist/types/ixapi/resources/agent-data-variable.d.ts +24 -0
  16. package/dist/types/ixapi/resources/agent-device.d.ts +11 -0
  17. package/dist/types/ixapi/resources/agent-mdr-server.d.ts +4 -0
  18. package/dist/types/ixapi/resources/agent-membership.d.ts +6 -0
  19. package/dist/types/ixapi/resources/agent-network-value.d.ts +5 -0
  20. package/dist/types/ixapi/resources/agent-router-vpn-access-rule.d.ts +8 -0
  21. package/dist/types/ixapi/resources/agent-server.d.ts +22 -0
  22. package/dist/types/ixapi/resources/agent-template.d.ts +3 -0
  23. package/dist/types/ixapi/resources/agent-type.d.ts +24 -0
  24. package/dist/types/ixapi/resources/agent.d.ts +148 -0
  25. package/dist/types/ixapi/resources/alarming-app.d.ts +5 -0
  26. package/dist/types/ixapi/resources/asset-membership.d.ts +6 -0
  27. package/dist/types/ixapi/resources/asset-type.d.ts +5 -0
  28. package/dist/types/ixapi/resources/asset.d.ts +19 -0
  29. package/dist/types/ixapi/resources/audience.d.ts +6 -0
  30. package/dist/types/ixapi/resources/branding.d.ts +27 -0
  31. package/dist/types/ixapi/resources/company.d.ts +55 -0
  32. package/dist/types/ixapi/resources/custom-property.d.ts +47 -0
  33. package/dist/types/ixapi/resources/data-protocol-applied.d.ts +72 -0
  34. package/dist/types/ixapi/resources/demo-device.d.ts +8 -0
  35. package/dist/types/ixapi/resources/email-address-change.d.ts +9 -0
  36. package/dist/types/ixapi/resources/group-type.d.ts +6 -0
  37. package/dist/types/ixapi/resources/group.d.ts +10 -0
  38. package/dist/types/ixapi/resources/invite.d.ts +25 -0
  39. package/dist/types/ixapi/resources/licence-type.d.ts +13 -0
  40. package/dist/types/ixapi/resources/licence.d.ts +25 -0
  41. package/dist/types/ixapi/resources/location.d.ts +11 -0
  42. package/dist/types/ixapi/resources/logging-app.d.ts +5 -0
  43. package/dist/types/ixapi/resources/lsi-server.d.ts +4 -0
  44. package/dist/types/ixapi/resources/otp-auth.d.ts +13 -0
  45. package/dist/types/ixapi/resources/page-component.d.ts +44 -0
  46. package/dist/types/ixapi/resources/page-link-group.d.ts +7 -0
  47. package/dist/types/ixapi/resources/page-link.d.ts +12 -0
  48. package/dist/types/ixapi/resources/page-page.d.ts +6 -0
  49. package/dist/types/ixapi/resources/page-version.d.ts +22 -0
  50. package/dist/types/ixapi/resources/platform-server.d.ts +8 -0
  51. package/dist/types/ixapi/resources/policy.d.ts +23 -0
  52. package/dist/types/ixapi/resources/res-link.d.ts +6 -0
  53. package/dist/types/ixapi/resources/rsc-server.d.ts +6 -0
  54. package/dist/types/ixapi/resources/sector.d.ts +31 -0
  55. package/dist/types/ixapi/resources/user-membership.d.ts +11 -0
  56. package/dist/types/ixapi/resources/user.d.ts +55 -0
  57. package/dist/types/ixapi/resources/vpn-protocol.d.ts +1 -0
  58. package/dist/types/logging-data/index.d.ts +8 -0
  59. package/dist/types/logging-data/logging-data-blob.d.ts +9 -0
  60. package/dist/types/logging-data/logging-data-client.d.ts +30 -0
  61. package/dist/types/logging-data/logging-data-metric.d.ts +17 -0
  62. package/dist/types/logging-data/logging-data-query-options.d.ts +29 -0
  63. package/dist/types/logging-data/logging-data-query-ref.d.ts +10 -0
  64. package/dist/types/logging-data/logging-data-query.d.ts +103 -0
  65. package/dist/types/logging-data/logging-data-time-range.d.ts +7 -0
  66. package/dist/types/logging-data/logging-data-value.d.ts +9 -0
  67. package/dist/types/resource-data/index.d.ts +4 -0
  68. package/dist/types/resource-data/resource-data-client.d.ts +57 -0
  69. package/dist/types/resource-data/resource-data-query.d.ts +38 -0
  70. package/dist/types/resource-data/resource-data-result.d.ts +6 -0
  71. package/dist/types/resource-data/resource-data.d.ts +67 -0
  72. package/dist/types/vpn-client/index.d.ts +19 -0
  73. package/package.json +1 -1
@@ -0,0 +1,7 @@
1
+ export * from '../../../../types/component-context';
2
+ export * from '../../../../types/backend-component';
3
+ export * from '../../../../types/component-context';
4
+ export * from '../../../../types/ixapi';
5
+ export * from '../../../../types/logging-data';
6
+ export * from '../../../../types/resource-data';
7
+ export * from '../../../../types/vpn-client';
@@ -0,0 +1,18 @@
1
+ /** @module BackendComponentCall */
2
+ export interface BackendComponentCall {
3
+ /**
4
+ * String reference unique to the query call made by the client
5
+ * @ignore
6
+ */
7
+ _clientRef?: string;
8
+ /**
9
+ * The name of the function you want to call
10
+ */
11
+ functionName: string;
12
+ /**
13
+ * Arguments you want to pass to the function
14
+ */
15
+ functionArguments?: {
16
+ [key: string]: string;
17
+ };
18
+ }
@@ -0,0 +1,12 @@
1
+ /** @module BackendComponentClient */
2
+ import type { BackendComponentResult } from './backend-component-result';
3
+ export interface BackendComponentClient {
4
+ destroy(): void;
5
+ /**
6
+ * @param {string} functionName The name of the Custom Backend Component function you want to call
7
+ * @param {{ [key: string]: string}} functionArguments The arguments you want to pass to the Custom Backend Component function
8
+ */
9
+ call(functionName: string, functionArguments?: {
10
+ [key: string]: string;
11
+ }): Promise<BackendComponentResult>;
12
+ }
@@ -0,0 +1,6 @@
1
+ /** @module BackendComponentResult */
2
+ import type { BackendComponentCall } from './backend-component-call';
3
+ export interface BackendComponentResult {
4
+ call: BackendComponentCall;
5
+ data: any;
6
+ }
@@ -0,0 +1,3 @@
1
+ export * from './backend-component-call';
2
+ export * from './backend-component-client';
3
+ export * from './backend-component-result';
@@ -0,0 +1,32 @@
1
+ export interface ComponentContextAppData {
2
+ accessToken: {
3
+ publicId: string | null;
4
+ /**
5
+ * Used as a bearer token for authenticating API-requests
6
+ */
7
+ secretId: string | null;
8
+ };
9
+ /**
10
+ * The API ID of the application the component is used in
11
+ */
12
+ apiAppId: string;
13
+ /**
14
+ * The version of the IXON API used.
15
+ */
16
+ apiVersion: string;
17
+ company: {
18
+ publicId: string;
19
+ };
20
+ /**
21
+ * The language of the platform.
22
+ */
23
+ language: string;
24
+ /**
25
+ * The locale of the platform as an [IETF language tag](https://en.wikipedia.org/wiki/IETF_language_tag)
26
+ */
27
+ locale: string;
28
+ /**
29
+ * The time zone of the platform.
30
+ */
31
+ timeZone: string;
32
+ }
@@ -0,0 +1,169 @@
1
+ /** @module ComponentContext */
2
+ import type { BackendComponentClient } from '../backend-component';
3
+ import type { LoggingDataClient, LoggingDataTimeRange } from '../logging-data';
4
+ import type { ResourceDataClient } from '../resource-data';
5
+ import type { VpnClientStatus } from '../vpn-client';
6
+ import type { ComponentContextAppData } from './app-data';
7
+ import type { Tooltip, TooltipOptions } from './tooltip';
8
+ export type { ComponentContextAppData } from './app-data';
9
+ export type { Tooltip, TooltipOptions } from './tooltip';
10
+ export * from './input';
11
+ /**
12
+ * The Component Context provides access to the component's inputs, the page's time range, to the LoggingDataClient and ResourceDataClient and to other application data.
13
+ */
14
+ export interface ComponentContext<ComponentContextInputs extends object = {
15
+ [key: string]: any;
16
+ }> {
17
+ /**
18
+ * Application data.
19
+ */
20
+ appData: ComponentContextAppData;
21
+ /**
22
+ * True if `destroy` is called and has destroyed all clients.
23
+ */
24
+ destroyed: boolean;
25
+ /**
26
+ * 'edit' when the component is used in the Studio, else 'view'.
27
+ */
28
+ mode: 'edit' | 'view';
29
+ /**
30
+ * Values for the inputs declared in the components
31
+ * [manifest file](https://developer.ixon.cloud/docs/manifest-file)
32
+ */
33
+ inputs: ComponentContextInputs;
34
+ /**
35
+ * Values for the inputs declared in the components
36
+ * [manifest file](https://developer.ixon.cloud/docs/manifest-file) as a Javascript Map.
37
+ */
38
+ inputMap: Map<string, any>;
39
+ /**
40
+ * Snapshot of the current time range
41
+ */
42
+ timeRange: LoggingDataTimeRange;
43
+ /**
44
+ * If the time range is adjustable.
45
+ */
46
+ timeRangeIsAdjustable: boolean;
47
+ /**
48
+ * Snapshot of the current VPN client status.
49
+ */
50
+ vpnClientStatus: VpnClientStatus | null;
51
+ /**
52
+ * Called when the time range is changed
53
+ */
54
+ ontimerangechange: ((newTimeRange: LoggingDataTimeRange) => any) | null;
55
+ /**
56
+ * Called when the VPN client status changes
57
+ */
58
+ onvpnclientstatuschange: ((newStatus: VpnClientStatus | null) => any) | null;
59
+ /**
60
+ * Creates a client to call backend components.
61
+ *
62
+ * Every time this method is called, a new client is created.
63
+ *
64
+ * @experimental This feature is in development. It might not be supported in your environment
65
+ * and might also be removed without prior notice.
66
+ * @ignore
67
+ */
68
+ createBackendComponentClient(): BackendComponentClient;
69
+ /**
70
+ * Creates a client to retrieve logging data.
71
+ *
72
+ * Every time this method is called, a new client is created.
73
+ */
74
+ createLoggingDataClient(): LoggingDataClient;
75
+ /**
76
+ * Creates a client to retrieve resource data.
77
+ *
78
+ * Every time this method is called, a new client is created.
79
+ */
80
+ createResourceDataClient(): ResourceDataClient;
81
+ /**
82
+ * Attaches a tooltip on the target element.
83
+ *
84
+ * @param target the target element
85
+ * @param options configures the tooltip message and other (optional) properties
86
+ * @returns returns the tooltip instance
87
+ *
88
+ * @experimental
89
+ */
90
+ createTooltip(target: HTMLElement, options: TooltipOptions): Tooltip;
91
+ /**
92
+ * Destroy the clients associated to this context and destroy the context.
93
+ */
94
+ destroy(): void;
95
+ /**
96
+ * Get the endpoint for a resource, the rel.
97
+ *
98
+ * @param rel The name of the resource, see [the reference](https://developer.ixon.cloud/reference)
99
+ * for all resource relations.
100
+ * @param params Extra query parameters, see [the reference](https://developer.ixon.cloud/reference)
101
+ * for all the URL and query paramaters that can be used for a specific resource.
102
+ */
103
+ getApiUrl(rel: string, params?: {
104
+ [param: string]: string;
105
+ }): string;
106
+ /**
107
+ * Use this method to navigate to a specific page in the portal, for example the VNC-viewer.
108
+ * Don't use this method to navigate to navigate outside the Portal.
109
+ *
110
+ * @param url The URL to navigate to, don't include the host.
111
+ */
112
+ navigateByUrl(url: string): void;
113
+ /**
114
+ * Save a file.
115
+ *
116
+ * @param data the file data to save
117
+ * @param fileName the name of the file
118
+ */
119
+ saveAsFile(data: string | Blob, fileName: string): void;
120
+ /**
121
+ * Set a new time range. Check `timeRangeIsAdjustable` to verify the time range is adjustable
122
+ *
123
+ * @param timeRange The time range to change to
124
+ */
125
+ setTimeRange(timeRange: LoggingDataTimeRange): void;
126
+ /**
127
+ * Open a dialog with VPN status details for an agent.
128
+ *
129
+ * @param agentId The agent to show VPN status info for
130
+ */
131
+ showVpnStatusDetails(agentId: string): void;
132
+ /**
133
+ * Tests whether the currently logged in user has VPN access to the Agent with the given {@code agentId}.
134
+ * @param agentId the Agent ID
135
+ * @returns true if the user has access, false otherwise
136
+ */
137
+ testVpnAccess(agentId: string): boolean;
138
+ /**
139
+ * Connects or disconnects the VPN-client
140
+ *
141
+ * @param agentId The public ID of the agent to connect to or disconnect from.
142
+ */
143
+ toggleVpn(agentId: string): void;
144
+ /**
145
+ * Translate a key to the users language.
146
+ *
147
+ * @param key
148
+ * @param interpolateParams
149
+ */
150
+ translate(key: string | Array<string>, interpolateParams?: Object): string | any;
151
+ }
152
+ /**
153
+ * A ComponentContext factory is injected into each component. Through this factory, a ComponentContext instance can be constructed.
154
+ */
155
+ export type ComponentContextFactory = <T extends object = {
156
+ [key: string]: any;
157
+ }>(options?: ComponentContextOptions) => ComponentContext<T>;
158
+ export interface ComponentContextOptions {
159
+ /**
160
+ * Migrate the inputs from an earlier version to the current version of the component.
161
+ *
162
+ * @param inputs the inputs of this component for an earlier version of the component
163
+ * @param version the version of the component for which the inputs were for, or null if the version is unknown
164
+ * @returns the inputs for the current version of the component
165
+ */
166
+ migrateInputs?: (inputs: any, version: string | null) => {
167
+ [key: string]: any;
168
+ };
169
+ }
@@ -0,0 +1,19 @@
1
+ export interface ComponentContextAggregatedMetricInput {
2
+ aggregator: string;
3
+ decimals: number | null;
4
+ factor: number | null;
5
+ selector: string;
6
+ transform: null;
7
+ unit: string | null;
8
+ }
9
+ export interface ComponentContextLiveMetricInput {
10
+ decimals: number | null;
11
+ factor: number | null;
12
+ selector: string;
13
+ unit: string | null;
14
+ }
15
+ export type ComponentContextInput = ComponentContextInputGroup | string | number | ComponentContextAggregatedMetricInput | ComponentContextLiveMetricInput | null;
16
+ export type ComponentContextInputGroup = ComponentContextInputs;
17
+ export type ComponentContextInputs = {
18
+ [key: string]: ComponentContextInput | ComponentContextInputGroup;
19
+ };
@@ -0,0 +1,14 @@
1
+ /** @module Tooltip */
2
+ export interface Tooltip {
3
+ destroy(): void;
4
+ disable(): void;
5
+ enable(): void;
6
+ setMessage(message: string): void;
7
+ }
8
+ export interface TooltipOptions {
9
+ disabled?: boolean;
10
+ hideDelay?: number;
11
+ message: string;
12
+ position?: 'top' | 'bottom' | 'left' | 'right';
13
+ showDelay?: number;
14
+ }
@@ -0,0 +1,12 @@
1
+ export interface IxApiError {
2
+ listIndex?: number;
3
+ message: string;
4
+ propertyName?: string;
5
+ }
6
+ export type IxApiErrorResponse = IxApiResponse<IxApiError[]>;
7
+ export interface IxApiResponse<T> {
8
+ data: T;
9
+ moreAfter?: string | null;
10
+ status?: 'success' | 'error';
11
+ type?: string;
12
+ }
@@ -0,0 +1,115 @@
1
+ import type { ResLink } from './res-link';
2
+ export interface AgentConfig {
3
+ agent?: ResLink;
4
+ configFileReported?: string | null;
5
+ configFileReportedWlanKeyEnabled?: boolean;
6
+ configFileServer?: string | null;
7
+ configPushedOn?: string | null;
8
+ configReportedOn?: string | null;
9
+ /** @deprecated */
10
+ configsAreDifferent?: boolean;
11
+ differentConfigs?: boolean;
12
+ differentStewardConfigs?: boolean;
13
+ /** NOTE: This public ID is identical to the public ID of its linked agent. */
14
+ publicId: string;
15
+ routerAdditionalSubnets?: AgentRouterAdditionalSubnet[];
16
+ routerDisplay?: AgentConfigRouterDisplay | null;
17
+ routerLan?: AgentConfigRouterLan | null;
18
+ routerPortForwards?: AgentRouterPortForward[];
19
+ routerWan?: AgentConfigRouterWan | null;
20
+ stewardConfigFileReported?: string;
21
+ stewardConfigFileServer?: string;
22
+ stewardConfigReportedOn?: string | null;
23
+ /** @deprecated */
24
+ stewardConfigsAreDifferent?: boolean;
25
+ }
26
+ export interface AgentRouterAdditionalSubnet {
27
+ agent?: ResLink;
28
+ gatewayAddress?: string;
29
+ networkAddress?: string;
30
+ networkMask?: string;
31
+ publicId: string;
32
+ }
33
+ export interface AgentConfigRouterDisplay {
34
+ agent?: ResLink;
35
+ lockEnabled?: boolean;
36
+ lockCode?: string | null;
37
+ }
38
+ export interface AgentConfigRouterLan {
39
+ agent?: ResLink;
40
+ bacnetBbmd?: string[] | null;
41
+ dhcpServerEnabled?: boolean;
42
+ dhcpServerRangeFrom?: string;
43
+ dhcpServerRangeTo?: string;
44
+ forwardLanWan?: AgentConfigRouterForwardLanWan;
45
+ gatewayLessRouting?: boolean;
46
+ ipAddress?: string;
47
+ netMask?: string;
48
+ network?: string;
49
+ udpBroadcastRelayPort?: number[] | null;
50
+ wlanChannel?: number | null /** range between 1-14 */;
51
+ wlanEnable?: boolean | null;
52
+ wlanSsid?: string | null;
53
+ wlanKey?: string | null;
54
+ }
55
+ export type AgentConfigRouterForwardLanWan = 'both' | 'private' | 'public' | 'neither';
56
+ export interface AgentRouterPortForward {
57
+ agent?: ResLink;
58
+ externalPort?: number;
59
+ interface?: 'VPN' | 'WAN';
60
+ publicId: string;
61
+ targetIpAddress?: string;
62
+ targetPort?: number;
63
+ }
64
+ export interface AgentConfigRouterWan {
65
+ /** @deprecated */
66
+ '3gApn'?: string | null;
67
+ /** @deprecated */
68
+ '3gPincode'?: string | null;
69
+ /** @deprecated */
70
+ '3gTrackInterval'?: number;
71
+ /** @deprecated */
72
+ '3gTrackIps'?: string[];
73
+ agent?: ResLink;
74
+ cellularApn?: string | null;
75
+ cellularMtu?: number | null;
76
+ cellularPincode?: string | null;
77
+ cellularTrackInterval?: number;
78
+ cellularTrackIps?: string[];
79
+ digitalInputMode?: AgentConfigRouterWanDigitalInputMode;
80
+ dnsServer?: string | null /** @depricated */;
81
+ dnsServers?: string[] | null;
82
+ httpProxyAddress?: string | null;
83
+ httpProxyAuthentication?: 'none' | 'basic' | 'ntlm' | null;
84
+ httpProxyIsSocks5?: boolean | null;
85
+ httpProxyPassword?: string | null /** @hidden */;
86
+ httpProxyPort?: number | null;
87
+ httpProxyUsername?: string | null;
88
+ ipAddress?: string | null;
89
+ ipGateway?: string | null;
90
+ ipNetMask?: string | null;
91
+ ipUseDhcp?: boolean;
92
+ multiwanPolicy?: AgentConfigRouterMultiwanPolicy;
93
+ wanTrackInterval?: number;
94
+ wanTrackIps?: string[];
95
+ wlanDnsServers?: string[] | null;
96
+ wlanIpAddress?: string | null;
97
+ wlanIpGateway?: string | null;
98
+ wlanIpNetMask?: string | null;
99
+ wlanIpUseDhcp?: boolean | null;
100
+ wlanKey?: string | null /** @hidden */;
101
+ wlanSsid?: string | null;
102
+ wlanTrackInterval?: number;
103
+ wlanTrackIps?: string[];
104
+ }
105
+ export interface AgentConfigRouterWlan {
106
+ wlanKey?: string | null /** @hidden */;
107
+ wlanSsid?: string | null;
108
+ wlanDnsServers?: string[] | null;
109
+ wlanIpAddress?: string | null;
110
+ wlanIpGateway?: string | null;
111
+ wlanIpNetMask?: string | null;
112
+ wlanIpUseDhcp?: boolean | null;
113
+ }
114
+ export type AgentConfigRouterMultiwanPolicy = 'eth_cell_wifi' | 'cell_eth_wifi' | 'eth_wifi_cell' | 'wifi_eth_cell' | 'cell_wifi_eth' | 'wifi_cell_eth';
115
+ export type AgentConfigRouterWanDigitalInputMode = 'disable_vpn_high' | 'disable_vpn_low' | 'disable_wan_high' | 'disable_wan_low' | null;
@@ -0,0 +1,11 @@
1
+ import type { ResLink } from './res-link';
2
+ export interface AgentDataCondition {
3
+ agent?: ResLink;
4
+ description?: string | null;
5
+ device?: ResLink;
6
+ /** For example: "#2 8 >=" (when variable 2 is greater than or equal to 8) */
7
+ formula?: string;
8
+ name?: string;
9
+ publicId: string;
10
+ source?: ResLink;
11
+ }
@@ -0,0 +1,14 @@
1
+ import type { DataProtocolAppliedUnion } from './data-protocol-applied';
2
+ import type { ResLink } from './res-link';
3
+ export interface AgentDataSource {
4
+ agent?: ResLink;
5
+ device?: ResLink;
6
+ disabled?: boolean;
7
+ name?: string | null;
8
+ port?: number | null;
9
+ protocol?: DataProtocolAppliedUnion;
10
+ publicId: string;
11
+ pullDelay?: number | null;
12
+ slug?: string | null;
13
+ valuesPerHour?: number;
14
+ }
@@ -0,0 +1,22 @@
1
+ import type { AgentDataCondition } from './agent-data-condition';
2
+ import type { AgentDataVariable } from './agent-data-variable';
3
+ import type { ResLink } from './res-link';
4
+ export interface AgentDataTag {
5
+ agent?: ResLink;
6
+ aggregators?: string[];
7
+ device?: ResLink;
8
+ downsamplingInterval?: boolean;
9
+ /** When set to null will revert to "last", "shortest" and "longest". Only applicable to strings */
10
+ edgeAggregator?: 'min' | 'max' | 'shortest' | 'longest' | 'mean' | 'last' | 'increase' | null;
11
+ logEvent?: 'interval' | 'change' | 'trigger';
12
+ loggingInterval?: string;
13
+ logTrigger?: AgentDataCondition | null;
14
+ name?: string;
15
+ publicId: string;
16
+ retentionPolicy?: string;
17
+ slug?: string | null;
18
+ source?: ResLink;
19
+ onChangeExpiry?: string | null;
20
+ tagId?: number;
21
+ variable?: AgentDataVariable;
22
+ }
@@ -0,0 +1,24 @@
1
+ import type { ResLink } from './res-link';
2
+ export interface AgentDataVariable {
3
+ address?: string;
4
+ agent?: ResLink;
5
+ device?: ResLink;
6
+ extraData?: any;
7
+ factor?: number | null;
8
+ forAlarming?: boolean;
9
+ forLogging?: boolean;
10
+ internalUse?: boolean;
11
+ maxStringLength?: number | null;
12
+ name?: string;
13
+ publicId: string;
14
+ signed?: boolean | null;
15
+ slug?: string | null;
16
+ source?: ResLink;
17
+ type?: AgentDataVariableType;
18
+ unit?: string | null;
19
+ updateable?: boolean;
20
+ variableId?: number;
21
+ width?: AgentDataVariableWidth | null;
22
+ }
23
+ export type AgentDataVariableType = 'bool' | 'int' | 'float' | 'str';
24
+ export type AgentDataVariableWidth = '8' | '16' | '32' | '64';
@@ -0,0 +1,11 @@
1
+ import type { ResLink } from './res-link';
2
+ import type { AgentDataSource } from './agent-data-source';
3
+ export interface AgentDevice {
4
+ agent?: ResLink;
5
+ customAddress?: string | null;
6
+ dataSources?: AgentDataSource[];
7
+ ipAddress?: string | null;
8
+ macAddress?: string | null;
9
+ name?: string | null;
10
+ publicId: string;
11
+ }
@@ -0,0 +1,4 @@
1
+ export interface AgentMdrServer {
2
+ name?: string;
3
+ publicId: string;
4
+ }
@@ -0,0 +1,6 @@
1
+ import type { ResLink } from './res-link';
2
+ export interface AgentMembership {
3
+ agent?: ResLink;
4
+ group?: ResLink;
5
+ publicId: string;
6
+ }
@@ -0,0 +1,5 @@
1
+ export interface AgentNetworkValue {
2
+ interface?: string;
3
+ name: string;
4
+ value: string[];
5
+ }
@@ -0,0 +1,8 @@
1
+ import type { ResLink } from './res-link';
2
+ export interface AgentRouterVpnAccessRule {
3
+ agent?: ResLink;
4
+ audience?: ResLink;
5
+ ipAddress?: string;
6
+ netMask?: string;
7
+ publicId: string;
8
+ }
@@ -0,0 +1,22 @@
1
+ import type { ResLink } from './res-link';
2
+ export interface AgentServer {
3
+ agent?: ResLink;
4
+ audience?: ResLink | null;
5
+ connectionQuality?: 'high' | 'normal' | 'low' | null;
6
+ custom?: {};
7
+ device?: ResLink;
8
+ landingPage?: string;
9
+ name?: string;
10
+ password?: string | null;
11
+ port?: number;
12
+ publicId: string;
13
+ readOnly?: boolean | null;
14
+ serviceGroup?: string | null;
15
+ template?: {
16
+ publicId?: string;
17
+ };
18
+ type?: 'http' | 'rdp' | 'vnc' | 'websocket';
19
+ username?: string | null;
20
+ useSsl?: boolean;
21
+ vncEncoding?: string | null;
22
+ }
@@ -0,0 +1,3 @@
1
+ import type { AgentLike } from './agent';
2
+ export interface AgentTemplate extends AgentLike {
3
+ }
@@ -0,0 +1,24 @@
1
+ import type { AgentServer } from './agent-server';
2
+ export interface AgentType {
3
+ additionalSubnets?: boolean;
4
+ allowDataPublishing?: boolean;
5
+ allowDemoDevice?: boolean;
6
+ allowReboot?: boolean;
7
+ allowTemplating?: boolean;
8
+ configPush?: boolean;
9
+ configFileFormat?: number;
10
+ customServers?: boolean;
11
+ deviceIdFormat?: string;
12
+ httpProxyPort?: number;
13
+ latestFirmwareFile?: any;
14
+ name?: string;
15
+ offlineConfiguration?: boolean;
16
+ publicId: string;
17
+ purchasePrice?: {
18
+ gratis?: boolean;
19
+ };
20
+ router?: boolean;
21
+ servers?: AgentServer[];
22
+ stunnelSupport?: boolean;
23
+ wanPortForwardings?: boolean;
24
+ }