@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,23 @@
1
+ import type { ResLink } from './res-link';
2
+ import type { Sector } from './sector';
3
+ export interface PolicyLanguage {
4
+ body?: string;
5
+ languageCode?: string;
6
+ publicId: string;
7
+ policy?: ResLink;
8
+ }
9
+ export interface PolicyBase {
10
+ company?: ResLink | null;
11
+ createdOn?: string;
12
+ downloadUrl?: string;
13
+ latest?: boolean;
14
+ languages?: PolicyLanguage[];
15
+ publicId: string;
16
+ publishedOn?: string | null;
17
+ sector?: Sector;
18
+ version?: string;
19
+ }
20
+ export interface TermsOfUsePolicy extends PolicyBase {
21
+ }
22
+ export interface PrivacyStatement extends PolicyBase {
23
+ }
@@ -0,0 +1,6 @@
1
+ export interface ResLink {
2
+ publicId: string;
3
+ reference?: {
4
+ name: string;
5
+ };
6
+ }
@@ -0,0 +1,6 @@
1
+ import type { PlatformServer } from './platform-server';
2
+ export interface RscServer extends PlatformServer {
3
+ entryPoint?: string;
4
+ supportedLayers?: NetworkLayer[];
5
+ }
6
+ export type NetworkLayer = 'tap' | 'tun';
@@ -0,0 +1,31 @@
1
+ import type { Branding } from './branding';
2
+ import type { PrivacyStatement } from './policy';
3
+ export interface Sector {
4
+ allowCustomPrivacyStatement?: boolean;
5
+ allowCustomTermsOfUse?: boolean;
6
+ branding?: Branding | null;
7
+ corporateWebsite?: string | null;
8
+ custom?: {
9
+ glbRouterConfigName?: string;
10
+ glbShowCustomComponents?: boolean;
11
+ /** @deprecated */
12
+ glbSlaDownloadUrl?: string;
13
+ glbSupportedPlatforms?: string;
14
+ glbVpnClientReleaseNotesUrl?: string;
15
+ };
16
+ defaultCountry?: string;
17
+ emailFromAddress?: string;
18
+ feedbackTo?: string;
19
+ latestPrivacyStatement?: PrivacyStatement;
20
+ name?: string;
21
+ poweredBy?: SectorPoweredBy;
22
+ premiumBrandingDomain?: string;
23
+ publicId: string;
24
+ supportEmailAddress?: string | null;
25
+ }
26
+ export interface SectorPoweredBy {
27
+ hide?: boolean;
28
+ logo?: string;
29
+ name?: string;
30
+ url?: string;
31
+ }
@@ -0,0 +1,11 @@
1
+ import type { ResLink } from './res-link';
2
+ export interface UserMembership {
3
+ expiresOn?: string | null;
4
+ group?: ResLink;
5
+ /** null for users */
6
+ invite?: ResLink | null;
7
+ publicId: string;
8
+ role?: ResLink | null;
9
+ /** null for invites */
10
+ user?: ResLink | null;
11
+ }
@@ -0,0 +1,55 @@
1
+ import type { EmailAddressChange } from './email-address-change';
2
+ import type { Invite } from './invite';
3
+ import type { OtpAuth } from './otp-auth';
4
+ import type { TermsOfUsePolicy } from './policy';
5
+ import type { UserMembership } from './user-membership';
6
+ export interface User {
7
+ /** @changeNotification taint */
8
+ emailAddress?: string;
9
+ /** For example 2019-01-01T12:00:00Z */
10
+ lastSeenOn?: string;
11
+ memberships?: UserMembership[];
12
+ /** @changeNotification taint */
13
+ name?: string;
14
+ /** Whether the user has two-factor authentication activated for their account. */
15
+ otpauthRequired?: boolean;
16
+ publicId: string;
17
+ support?: boolean;
18
+ }
19
+ export interface MyUser {
20
+ custom?: {
21
+ /** JSON Object with user colomns per company, For example: { "1111-2222-3333-4444-5555": ["status", "name", "lastOnline"]} */
22
+ glbFltDeviceTableCols?: string;
23
+ /** JSON Object with user colomns per company, For example: { "1111-2222-3333-4444-5555": ["status", "name", "lastOnline"]} */
24
+ glbPrtDeviceTableCols?: string;
25
+ /** JSON Object with view settings per company,
26
+ * For example:
27
+ * {
28
+ * "1111-2222-3333-4444-5555": {
29
+ * "type": { "gtSm": "list", "ltSm": "card"}, cardSortBy: { "gtSm": "name;asc", "ltSm": "groupType.AAAAAAAAAAAA;desc" }, deviceMapState: { "gtSm": "closed", "ltSm": "open" }, deviceMapHeight: { "gtSm": "100" }
30
+ * }
31
+ * }
32
+ */
33
+ glbPrtDeviceViewSettings?: string;
34
+ /** JSON Object with starred agents per company, For example: { "1111-2222-3333-4444-5555": ["ixagent00001", "ixagent00003"]} */
35
+ glbStarred?: string;
36
+ };
37
+ emailAddress?: string;
38
+ emailAddressChanges?: EmailAddressChange[];
39
+ invites?: Invite[];
40
+ language?: string;
41
+ /** For example 2019-01-01T12:00:00Z */
42
+ lastSeenOn?: string;
43
+ localisation?: string | null;
44
+ name?: string;
45
+ otpAuth?: OtpAuth | null;
46
+ publicId: string;
47
+ /** For example 2019-01-01T12:00:00Z */
48
+ registeredOn?: string;
49
+ support?: boolean;
50
+ termsOfUsePolicy?: TermsOfUsePolicy | null;
51
+ /** For example 2019-01-01T12:00:00Z */
52
+ termsOfUsePolicyAcceptedOn?: string | null;
53
+ timeZone?: string | null;
54
+ unreadMessagesCount?: number;
55
+ }
@@ -0,0 +1 @@
1
+ export type VpnProtocol = 'tcp' | 'udp';
@@ -0,0 +1,8 @@
1
+ export * from './logging-data-blob';
2
+ export * from './logging-data-client';
3
+ export * from './logging-data-metric';
4
+ export * from './logging-data-query-options';
5
+ export * from './logging-data-query';
6
+ export * from './logging-data-query';
7
+ export * from './logging-data-time-range';
8
+ export * from './logging-data-value';
@@ -0,0 +1,9 @@
1
+ /** @module LoggingDataBlob */
2
+ import type { LoggingDataQueryRef } from './logging-data-query-ref';
3
+ /** The result of a single export request. */
4
+ export interface LoggingDataBlob {
5
+ /** Indicates the queries that are included in the blob. */
6
+ queryRefs: LoggingDataQueryRef[];
7
+ /** Contents of the export response. */
8
+ blob: Blob;
9
+ }
@@ -0,0 +1,30 @@
1
+ /** @module LoggingDataClient */
2
+ import type { LoggingDataBlob } from './logging-data-blob';
3
+ import type { LoggingDataMetric } from './logging-data-metric';
4
+ import type { LoggingDataQuery } from './logging-data-query';
5
+ import type { LoggingDataQueryOptions } from './logging-data-query-options';
6
+ export interface LoggingDataClient {
7
+ /**
8
+ * Destroy the client. Always call this when the client is not used anymore. When the context is
9
+ * destroyed, this is called automatically
10
+ */
11
+ destroy(): void;
12
+ /**
13
+ * Starts a query for logging data. This method can be used for historic and live data depending
14
+ * on the selector.
15
+ *
16
+ * @returns {function()} Returns a deregistration function for the listener.
17
+ */
18
+ query(query: LoggingDataQuery, listener: (result: LoggingDataMetric[]) => any): () => void;
19
+ query(queries: LoggingDataQuery[], listener: (results: LoggingDataMetric[][]) => any): () => void;
20
+ query<T extends LoggingDataQueryOptions>(queryOptions: T,
21
+ /**
22
+ * Depending on the `format` in the query options, the query listener result has a specific type.
23
+ *
24
+ * - If `format` is `'csv'`, the result type is `LoggingDataBlob`
25
+ * - Otherwise, the result type is `LoggingDataMetric[][]`
26
+ */
27
+ listener: (results: T extends {
28
+ format: 'csv';
29
+ } ? LoggingDataBlob : LoggingDataMetric[][]) => void): () => void;
30
+ }
@@ -0,0 +1,17 @@
1
+ /** @module LoggingDataMetric */
2
+ import type { LoggingDataQueryRef } from './logging-data-query-ref';
3
+ import type { LoggingDataValue } from './logging-data-value';
4
+ export interface LoggingDataMetric {
5
+ /**
6
+ * The ref provided in the query, else this is generated
7
+ */
8
+ queryRef: LoggingDataQueryRef;
9
+ /**
10
+ * The time the value was logged
11
+ */
12
+ time: number;
13
+ /**
14
+ * The queries result value
15
+ */
16
+ value: LoggingDataValue;
17
+ }
@@ -0,0 +1,29 @@
1
+ /** @module LoggingDataQueryOptions */
2
+ import type { LoggingDataQuery } from './logging-data-query';
3
+ export interface LoggingDataQueryOptions {
4
+ /**
5
+ * Specifies the delimiter used to separate columns in the returned CSV data.
6
+ *
7
+ * Only applicable for format `'csv'`
8
+ *
9
+ * Defaults to `'comma'`
10
+ * */
11
+ csvDelimiter?: 'comma' | 'tab' | 'semicolon';
12
+ queries: LoggingDataQuery[];
13
+ /**
14
+ * Specifies the format of the returned metrics.
15
+ * - If `format` is `'metrics'`, the listener is called with `LoggingDataMetric[][]`.
16
+ * - If `format` is `'csv'`, the listener is called at most once with `LoggingDataBlob`.
17
+ *
18
+ * Defaults to `'metrics'`
19
+ */
20
+ format?: 'csv' | 'metrics';
21
+ /**
22
+ * Specifies whether the query listener should be automatically removed after it gets invoked.
23
+ *
24
+ * Not applicable for format `'csv'`, because this format implies the automatic listener removal after invocation behaviour.
25
+ *
26
+ * Defaults to `false`
27
+ */
28
+ once?: boolean;
29
+ }
@@ -0,0 +1,10 @@
1
+ /** @module LoggingDataQueryRef */
2
+ import type { AgentDataTag } from '../ixapi/resources/agent-data-tag';
3
+ import type { AgentDataVariable } from '../ixapi/resources/agent-data-variable';
4
+ import type { LoggingDataQuery } from './logging-data-query';
5
+ export interface LoggingDataQueryRef {
6
+ query: LoggingDataQuery;
7
+ variable?: AgentDataVariable;
8
+ tag?: AgentDataTag;
9
+ cancel(): void;
10
+ }
@@ -0,0 +1,103 @@
1
+ /** @module LoggingDataQuery */
2
+ export interface LoggingDataQuery {
3
+ /**
4
+ * String reference unique to the query call made by the client
5
+ * @ignore
6
+ */
7
+ _clientRef?: string;
8
+ /**
9
+ * Timestamp for when the query was dispatched by the client
10
+ * @ignore
11
+ */
12
+ _timeStamp?: number;
13
+ /**
14
+ * Number of decimals to be returned
15
+ */
16
+ decimals?: number;
17
+ /**
18
+ * Whether or not you want to query for extra data-points, one before the start date and one beyond the end date (if they exist).
19
+ */
20
+ extendedBoundary?: boolean;
21
+ /**
22
+ * The factor to multiply the value by
23
+ */
24
+ factor?: number;
25
+ /**
26
+ * Used to override the global time-range for this specific query
27
+ *
28
+ * For example 2019-01-01T00:00:00Z
29
+ */
30
+ from?: string;
31
+ /**
32
+ * How many values should be fetched. The postAggr is applied to reduce the set of points to the limit.
33
+ */
34
+ limit?: number;
35
+ /**
36
+ * Starting point for returned values
37
+ *
38
+ * Must be null if postAggr is set
39
+ */
40
+ offset?: number;
41
+ /**
42
+ * The order to order datapoints by
43
+ */
44
+ order?: 'asc' | 'desc';
45
+ /**
46
+ * Aggregrator for aggregation after data storage
47
+ *
48
+ * Must be null if offset is set
49
+ */
50
+ postAggr?: Aggregrator;
51
+ /**
52
+ * Apply a transform. Only applies when postAggr is `'last'`.
53
+ *
54
+ * `'difference'` takes the difference between the last value in a bucket and the bucket before it.
55
+ */
56
+ postTransform?: Transform | null;
57
+ /**
58
+ * When omitted, the pre-aggregator is determined automatically based on a couple of factors, but
59
+ * in most cases it defaults to "raw".
60
+ */
61
+ preAggr?: Aggregrator;
62
+ /**
63
+ * Reference to identify the value by. If this is not set, a unique reference is generated.
64
+ */
65
+ ref?: string;
66
+ /**
67
+ * The selector for getting data from a specific tag or variable. Can be used instead of tag or
68
+ * variable field
69
+ *
70
+ * Formatted as <dataSource>.<logType>.<logName> where <dataSource> is the name of the datas source,
71
+ * <logType> is 'tag' or 'variable' and <logName> is the slug of the tag or variable.
72
+ */
73
+ selector?: string;
74
+ /**
75
+ * Number of seconds between subsequent data-points
76
+ */
77
+ step?: number;
78
+ /**
79
+ * The tag to fetch the data from. Must be null if variable is set
80
+ */
81
+ tag?: {
82
+ publicId: string;
83
+ } | null;
84
+ /**
85
+ * Used to override the global time-range for this specific query
86
+ *
87
+ * For example 2019-01-01T23:59:59Z
88
+ */
89
+ to?: string;
90
+ /**
91
+ * The unit of the value
92
+ */
93
+ unit?: string;
94
+ /**
95
+ * The variable to fetch the data from. Must be null if tag is set
96
+ */
97
+ variable?: {
98
+ publicId: string;
99
+ } | null;
100
+ }
101
+ type Aggregrator = 'count' | 'distinct' | 'integral' | 'mean' | 'median' | 'mode' | 'spread' | 'stddev' | 'sum' | 'first' | 'last' | 'max' | 'min' | 'raw';
102
+ type Transform = 'difference';
103
+ export {};
@@ -0,0 +1,7 @@
1
+ /** @module LoggingDataTimeRange */
2
+ export interface LoggingDataTimeRange {
3
+ /** UNIX time value in milliseconds. */
4
+ from: number;
5
+ /** UNIX time value in milliseconds. */
6
+ to: number;
7
+ }
@@ -0,0 +1,9 @@
1
+ /** @module LoggingDataValue */
2
+ export interface LoggingDataValue {
3
+ setDecimals(newDecimals: number): void;
4
+ /** @deprecated */
5
+ setFactor(newFactor: number): void;
6
+ setUnit(newUnit: string): void;
7
+ getValue(): boolean | number | string | null;
8
+ toString(): string;
9
+ }
@@ -0,0 +1,4 @@
1
+ export * from './resource-data-client';
2
+ export * from './resource-data-query';
3
+ export * from './resource-data-result';
4
+ export * from './resource-data';
@@ -0,0 +1,57 @@
1
+ /** @module ResourceDataClient */
2
+ import type { ResourceDataQuery, ResourceDataQuerySelector, ResourceDataTemplateQuery } from './resource-data-query';
3
+ import type { ResourceDataResult } from './resource-data-result';
4
+ import type { ResourceData } from './resource-data';
5
+ interface ResultDataMap {
6
+ Agent: ResourceData.Agent;
7
+ Asset: ResourceData.Asset;
8
+ Branding: ResourceData.Branding;
9
+ CustomPropertyList: ResourceData.CustomProperty[];
10
+ GroupList: ResourceData.Group[];
11
+ MyUser: ResourceData.MyUser;
12
+ PagePage: ResourceData.PagePage;
13
+ PageVersion: ResourceData.PageVersion;
14
+ }
15
+ export interface ResourceDataClient {
16
+ destroy(): void;
17
+ /**
18
+ * @returns {function()} Returns a deregistration function for the listener.
19
+ */
20
+ query<T extends ResourceDataQuerySelector>(query: ResourceDataQuery<T> | [ResourceDataQuery<T>], listener: (results: [ResourceDataResult<ResultDataMap[T]>]) => any): () => void;
21
+ query<T1 extends ResourceDataQuerySelector, T2 extends ResourceDataQuerySelector>(query: [ResourceDataQuery<T1>, ResourceDataQuery<T2>], listener: (results: [ResourceDataResult<ResultDataMap[T1]>, ResourceDataResult<ResultDataMap[T2]>]) => any): () => void;
22
+ query<T1 extends ResourceDataQuerySelector, T2 extends ResourceDataQuerySelector, T3 extends ResourceDataQuerySelector>(query: [ResourceDataQuery<T1>, ResourceDataQuery<T2>, ResourceDataQuery<T3>], listener: (results: [
23
+ ResourceDataResult<ResultDataMap[T1]>,
24
+ ResourceDataResult<ResultDataMap[T2]>,
25
+ ResourceDataResult<ResultDataMap[T3]>
26
+ ]) => any): () => void;
27
+ query<T1 extends ResourceDataQuerySelector, T2 extends ResourceDataQuerySelector, T3 extends ResourceDataQuerySelector, T4 extends ResourceDataQuerySelector>(query: [ResourceDataQuery<T1>, ResourceDataQuery<T2>, ResourceDataQuery<T3>], listener: (results: [
28
+ ResourceDataResult<ResultDataMap[T1]>,
29
+ ResourceDataResult<ResultDataMap[T2]>,
30
+ ResourceDataResult<ResultDataMap[T3]>,
31
+ ResourceDataResult<ResultDataMap[T4]>
32
+ ]) => any): () => void;
33
+ query<T1 extends ResourceDataQuerySelector, T2 extends ResourceDataQuerySelector, T3 extends ResourceDataQuerySelector, T4 extends ResourceDataQuerySelector>(query: [ResourceDataQuery<T1>, ResourceDataQuery<T2>, ResourceDataQuery<T3>, ResourceDataQuery<T4>], listener: (results: [
34
+ ResourceDataResult<ResultDataMap[T1]>,
35
+ ResourceDataResult<ResultDataMap[T2]>,
36
+ ResourceDataResult<ResultDataMap[T3]>,
37
+ ResourceDataResult<ResultDataMap[T4]>
38
+ ]) => any): () => void;
39
+ query<T1 extends ResourceDataQuerySelector, T2 extends ResourceDataQuerySelector, T3 extends ResourceDataQuerySelector, T4 extends ResourceDataQuerySelector, T5 extends ResourceDataQuerySelector>(query: [
40
+ ResourceDataQuery<T1>,
41
+ ResourceDataQuery<T2>,
42
+ ResourceDataQuery<T3>,
43
+ ResourceDataQuery<T4>,
44
+ ResourceDataQuery<T5>
45
+ ], listener: (results: [
46
+ ResourceDataResult<ResultDataMap[T1]>,
47
+ ResourceDataResult<ResultDataMap[T2]>,
48
+ ResourceDataResult<ResultDataMap[T3]>,
49
+ ResourceDataResult<ResultDataMap[T4]>,
50
+ ResourceDataResult<ResultDataMap[T5]>
51
+ ]) => any): () => void;
52
+ /**
53
+ * @returns {function()} Returns a deregistration function for the listener.
54
+ */
55
+ render(templates: ResourceDataTemplateQuery[], listener: (results: string[]) => void): () => void;
56
+ }
57
+ export {};
@@ -0,0 +1,38 @@
1
+ /** @module ResourceDataQuery */
2
+ export type ResourceDataQuerySelector = 'Agent' | 'Asset' | 'Branding' | 'CustomPropertyList' | 'GroupList' | 'MyUser' | 'PagePage' | 'PageVersion';
3
+ export interface ResourceDataQuery<T = ResourceDataQuerySelector> {
4
+ /**
5
+ * String reference unique to the query call made by the client
6
+ * @ignore
7
+ */
8
+ _clientRef?: string | string[];
9
+ /**
10
+ * List of fields to get from the resource, see the
11
+ * [developer documentation](https://developer.ixon.cloud/docs/using-the-resourcedataclient) for
12
+ * supported fields.
13
+ *
14
+ * If ommited, an empty object is returned
15
+ */
16
+ fields?: string[];
17
+ /**
18
+ * The name of the resource, see the
19
+ * [developer documentation](https://developer.ixon.cloud/docs/using-the-resourcedataclient) for
20
+ * supported resources
21
+ */
22
+ selector: T;
23
+ }
24
+ export interface ResourceDataTemplateQuery {
25
+ /**
26
+ * String reference unique to the query call made by the client
27
+ * @ignore
28
+ */
29
+ _clientRef?: string | string[];
30
+ /**
31
+ * Template to be interpolated. The format should be [Mustache](https://mustache.github.io), see the
32
+ * [developer documentation](https://developer.ixon.cloud/docs/using-the-resourcedataclient) for
33
+ * supported fields. Only 'agent' is supported at the moment.
34
+ *
35
+ * If omitted, an empty object is returned
36
+ */
37
+ template: string;
38
+ }
@@ -0,0 +1,6 @@
1
+ /** @module ResourceDataResult */
2
+ import type { ResourceDataQuery } from './resource-data-query';
3
+ export interface ResourceDataResult<T = any> {
4
+ query: ResourceDataQuery;
5
+ data: T | null;
6
+ }
@@ -0,0 +1,67 @@
1
+ import type { Agent, AgentUserAgent } from '../ixapi/resources/agent';
2
+ import type { AgentDataSource } from '../ixapi/resources/agent-data-source';
3
+ import type { AgentServer } from '../ixapi/resources/agent-server';
4
+ import type { AgentType } from '../ixapi/resources/agent-type';
5
+ import type { Asset } from '../ixapi/resources/asset';
6
+ import type { AssetType } from '../ixapi/resources/asset-type';
7
+ import type { Branding, BrandingTheme } from '../ixapi/resources/branding';
8
+ import type { CustomProperty } from '../ixapi/resources/custom-property';
9
+ import type { Location } from '../ixapi/resources/location';
10
+ import type { Group } from '../ixapi/resources/group';
11
+ import type { GroupType } from '../ixapi/resources/group-type';
12
+ import type { PagePage } from '../ixapi/resources/page-page';
13
+ import type { PageVersion } from '../ixapi/resources/page-version';
14
+ import type { MyUser, User } from '../ixapi/resources/user';
15
+ interface AgentResourceData extends Pick<Agent, 'custom' | 'description' | 'loggingMdrServer' | 'loggingMqttChangedOn' | 'macAddress' | 'mdrServer' | 'mqttChangedOn' | 'name' | 'publicId' | 'rateLimiting' | 'serialNumber'> {
16
+ activeVpnSession?: {
17
+ rscServer?: {
18
+ name?: string;
19
+ publicId: string;
20
+ } | null;
21
+ vpnAddress?: string;
22
+ } | null;
23
+ connectedUsers?: Pick<User, 'name' | 'publicId'>[];
24
+ dataSources?: Pick<AgentDataSource, 'name' | 'publicId' | 'slug'>[];
25
+ lastSeenAgentUserAgent?: Pick<AgentUserAgent, 'firmwareVersion' | 'hardware' | 'hardwareVersion' | 'publicId'> | null;
26
+ location?: Pick<Location, 'name'> | null;
27
+ memberships?: {
28
+ group?: {
29
+ publicId: string;
30
+ };
31
+ publicId: string;
32
+ }[];
33
+ servers?: Pick<AgentServer, 'custom' | 'name' | 'publicId' | 'serviceGroup' | 'type'>[];
34
+ type?: Pick<AgentType, 'name' | 'publicId'>;
35
+ }
36
+ interface AssetResourceData extends Pick<Asset, 'custom' | 'description' | 'name' | 'publicId'> {
37
+ memberships?: {
38
+ group?: {
39
+ publicId: string;
40
+ };
41
+ publicId: string;
42
+ }[];
43
+ resourceVariant?: Pick<AssetType, 'publicId'>;
44
+ }
45
+ interface BrandingResourceData extends Pick<Branding, 'logo' | 'publicId'> {
46
+ theme?: Pick<BrandingTheme, 'logoHasBackgroundColor'> | null;
47
+ }
48
+ type CustomPropertyResourceData = Pick<CustomProperty, 'flags' | 'name' | 'publicId' | 'resourceType' | 'resourceVariant' | 'scopeType' | 'slug'>;
49
+ interface GroupResourceData extends Pick<Group, 'name' | 'publicId'> {
50
+ type?: Pick<GroupType, 'name' | 'order' | 'publicId'> | null;
51
+ }
52
+ type MyUserResourceData = Pick<MyUser, 'custom' | 'name' | 'publicId' | 'unreadMessagesCount'>;
53
+ type PagePageResourceData = Pick<PagePage, 'order' | 'publicId'>;
54
+ interface PageVersionResourceData extends Pick<PageVersion, 'publicId' | 'title'> {
55
+ pagePages?: Pick<PagePage, 'order' | 'publicId'>[];
56
+ }
57
+ export declare namespace ResourceData {
58
+ type Agent = AgentResourceData;
59
+ type Asset = AssetResourceData;
60
+ type Branding = BrandingResourceData;
61
+ type CustomProperty = CustomPropertyResourceData;
62
+ type Group = GroupResourceData;
63
+ type MyUser = MyUserResourceData;
64
+ type PagePage = PagePageResourceData;
65
+ type PageVersion = PageVersionResourceData;
66
+ }
67
+ export {};
@@ -0,0 +1,19 @@
1
+ export interface VpnClientStatus {
2
+ activeRequest: VpnClientStatusActiveRequest | '';
3
+ status: 'idle' | 'connecting' | 'connected';
4
+ }
5
+ export interface VpnClientStatusActiveRequest {
6
+ agentId: string;
7
+ companyId: string;
8
+ controllerId: string;
9
+ steps: VpnClientStatusActiveRequestStep[];
10
+ }
11
+ export interface VpnClientStatusActiveRequestStep {
12
+ name: string;
13
+ description: string;
14
+ status: VpnClientStatusActiveRequestStatus;
15
+ }
16
+ export interface VpnClientStatusActiveRequestStatus {
17
+ code: string;
18
+ message: string;
19
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ixon-cdk/types",
3
- "version": "1.2.0-next.2",
3
+ "version": "1.2.0-next.3",
4
4
  "description": "",
5
5
  "main": "./dist/component-devkit/src/types/src/index.d.ts",
6
6
  "author": "",