@openremote/rest 1.28.0-snapshot.20260729134655 → 1.28.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.
@@ -9,161 +9,154 @@ export interface HttpClient<O> {
9
9
  options?: O;
10
10
  }): RestResponse<R>;
11
11
  }
12
- export declare class AssetPredictedDatapointResourceClient<O> {
13
- protected httpClient: HttpClient<O>;
14
- constructor(httpClient: HttpClient<O>);
15
- /**
16
- * Queries predicted values for one attribute using the supplied time-range and aggregation criteria. Anonymous access requires public-read access on both asset and attribute.
17
- * HTTP POST /asset/predicted/{assetId}/{attributeName}
18
- * Java method: org.openremote.model.datapoint.AssetPredictedDatapointResource.getPredictedDatapoints
19
- */
20
- getPredictedDatapoints(assetId: string, attributeName: string, query: Model.AssetDatapointQueryUnion, options?: O): RestResponse<Model.ValueDatapoint<any>[]>;
21
- /**
22
- * Replaces or adds predicted values for one attribute. Anonymous access is allowed only when the asset and attribute are public-write; authenticated callers require attribute-write access.
23
- * HTTP PUT /asset/predicted/{assetId}/{attributeName}
24
- * Java method: org.openremote.model.datapoint.AssetPredictedDatapointResource.writePredictedDatapoints
25
- */
26
- writePredictedDatapoints(assetId: string, attributeName: string, predictedDatapoints: Model.ValueDatapoint<any>[], options?: O): RestResponse<void>;
27
- }
28
- export declare class AssetResourceClient<O> {
12
+ export declare class AssetModelResourceClient<O> {
29
13
  protected httpClient: HttpClient<O>;
30
14
  constructor(httpClient: HttpClient<O>);
31
15
  /**
32
- * Creates an asset in an accessible realm and returns the persisted representation. The server generates an ID when absent; supplied IDs must be globally unique and 22 characters long.
33
- * HTTP POST /asset
34
- * Java method: org.openremote.model.asset.AssetResource.create
35
- */
36
- create(asset: Model.Asset, options?: O): RestResponse<Model.Asset>;
37
- /**
38
- * Permanently deletes every asset identified by repeated assetId query parameters, subject to realm and restricted-user access rules.
39
- * HTTP DELETE /asset
40
- * Java method: org.openremote.model.asset.AssetResource.delete
41
- */
42
- delete(queryParams?: {
43
- assetId?: string[];
44
- }, options?: O): RestResponse<void>;
45
- /**
46
- * Submits a batch of attribute states using current server time and returns one result per input item. Authorization and processing failures are encoded in each AttributeWriteResult rather than returned as an HTTP error.
47
- * HTTP PUT /asset/attributes
48
- * Java method: org.openremote.model.asset.AssetResource.writeAttributeValues
16
+ * Returns the descriptors used to construct supported asset types, using a gateway model when the optional parent context resolves below a gateway.
17
+ * HTTP GET /model/assetDescriptors
18
+ * Java method: org.openremote.model.asset.AssetModelResource.getAssetDescriptors
49
19
  */
50
- writeAttributeValues(attributeStates: Model.AttributeState[], options?: O): RestResponse<Model.AttributeWriteResult[]>;
20
+ getAssetDescriptors(queryParams?: {
21
+ parentId?: string;
22
+ parentType?: string;
23
+ }, options?: O): RestResponse<Model.AssetDescriptor[]>;
51
24
  /**
52
- * Submits a batch of complete attribute events and returns one result per input item. Supplied timestamps are preserved; authorization and processing failures are encoded per result rather than returned as an HTTP error.
53
- * HTTP PUT /asset/attributes/timestamp
54
- * Java method: org.openremote.model.asset.AssetResource.writeAttributeEvents
25
+ * Returns metadata for one asset type from this Manager or, when parentId is below a gateway, from that gateway's model. An unknown or gateway-provided type that is not locally available returns no content.
26
+ * Response code 204 - No model information is available for the requested asset type
27
+ * HTTP GET /model/assetInfo/{assetType}
28
+ * Java method: org.openremote.model.asset.AssetModelResource.getAssetInfo
55
29
  */
56
- writeAttributeEvents(attributeEvents: Model.AttributeEvent[], options?: O): RestResponse<Model.AttributeWriteResult[]>;
30
+ getAssetInfo(assetType: string, queryParams?: {
31
+ parentId?: string;
32
+ }, options?: O): RestResponse<Model.AssetTypeInfo>;
57
33
  /**
58
- * Returns only the number of assets matching an AssetQuery after applying the caller's realm, public, and linked-asset access constraints.
59
- * HTTP POST /asset/count
60
- * Java method: org.openremote.model.asset.AssetResource.queryCount
34
+ * Returns type metadata from this Manager by default. When parentId identifies an asset below a gateway, the gateway's model is used instead; parentType can provide type context for a new parent that does not yet exist.
35
+ * HTTP GET /model/assetInfos
36
+ * Java method: org.openremote.model.asset.AssetModelResource.getAssetInfos
61
37
  */
62
- queryCount(query: Model.AssetQuery, options?: O): RestResponse<number>;
38
+ getAssetInfos(queryParams?: {
39
+ parentId?: string;
40
+ parentType?: string;
41
+ }, options?: O): RestResponse<Model.AssetTypeInfo[]>;
63
42
  /**
64
- * Clears the parent reference of every asset listed in repeated assetIds query parameters.
65
- * HTTP DELETE /asset/parent
66
- * Java method: org.openremote.model.asset.AssetResource.updateNoneParent
43
+ * Returns the JSON Schema and a weak ETag for the named value descriptor. Send If-None-Match on later requests to receive 304 when the schema has not changed.
44
+ * Response code 200 - The current JSON Schema
45
+ * Response code 304 - The supplied ETag still identifies the current schema
46
+ * HTTP GET /model/getValueDescriptorSchema
47
+ * Java method: org.openremote.model.asset.AssetModelResource.getValueDescriptorSchema
67
48
  */
68
- updateNoneParent(queryParams?: {
69
- assetIds?: string[];
70
- }, options?: O): RestResponse<void>;
49
+ getValueDescriptorSchema(queryParams?: {
50
+ name?: string;
51
+ }, options?: O): RestResponse<any>;
71
52
  /**
72
- * Returns the asset identity and properties without loading attributes or path data. The same access rules as getAsset apply.
73
- * HTTP GET /asset/partial/{assetId}
74
- * Java method: org.openremote.model.asset.AssetResource.getPartial
53
+ * Returns attribute metadata descriptors keyed by descriptor name, using a gateway model when parentId resolves below a gateway.
54
+ * HTTP GET /model/metaItemDescriptors
55
+ * Java method: org.openremote.model.asset.AssetModelResource.getMetaItemDescriptors
75
56
  */
76
- getPartial(assetId: string, options?: O): RestResponse<Model.Asset>;
57
+ getMetaItemDescriptors(queryParams?: {
58
+ parentId?: string;
59
+ }, options?: O): RestResponse<{
60
+ [index: string]: Model.MetaItemDescriptor;
61
+ }>;
77
62
  /**
78
- * Executes an AssetQuery after constraining realm and linked-asset access. Anonymous callers receive public-readable assets only; the query select clause controls which fields are populated.
79
- * HTTP POST /asset/query
80
- * Java method: org.openremote.model.asset.AssetResource.queryAssets
63
+ * Returns attribute value descriptors keyed by descriptor name, using a gateway model when parentId resolves below a gateway.
64
+ * HTTP GET /model/valueDescriptors
65
+ * Java method: org.openremote.model.asset.AssetModelResource.getValueDescriptors
81
66
  */
82
- queryAssets(query: Model.AssetQuery, options?: O): RestResponse<Model.Asset[]>;
67
+ getValueDescriptors(queryParams?: {
68
+ parentId?: string;
69
+ }, options?: O): RestResponse<{
70
+ [index: string]: Model.ValueDescriptor;
71
+ }>;
72
+ }
73
+ export declare class AppResourceClient<O> {
74
+ protected httpClient: HttpClient<O>;
75
+ constructor(httpClient: HttpClient<O>);
83
76
  /**
84
- * Applies the same authorization and selection rules as queryAssets, then returns a hierarchy optimized for tree display rather than a flat asset array.
85
- * HTTP POST /asset/tree
86
- * Java method: org.openremote.model.asset.AssetResource.queryAssetTree
77
+ * Returns the identifiers of applications installed in the Manager web root.
78
+ * HTTP GET /apps
79
+ * Java method: org.openremote.model.apps.AppResource.getApps
87
80
  */
88
- queryAssetTree(query: Model.AssetQuery, options?: O): RestResponse<Model.AssetTree>;
81
+ getApps(options?: O): RestResponse<string[]>;
89
82
  /**
90
- * Returns partial linked assets for a restricted user, root assets for an unrestricted realm user, and an empty array for a super user. Attributes and paths are omitted; use getAsset for full details.
91
- * HTTP GET /asset/user/current
92
- * Java method: org.openremote.model.asset.AssetResource.getCurrentUserAssets
83
+ * Loads the public console_config.json document used to configure console clients before sign-in.
84
+ * HTTP GET /apps/consoleConfig
85
+ * Java method: org.openremote.model.apps.AppResource.getConsoleConfig
93
86
  */
94
- getCurrentUserAssets(options?: O): RestResponse<Model.Asset[]>;
87
+ getConsoleConfig(options?: O): RestResponse<any>;
95
88
  /**
96
- * Creates all supplied links as one operation. Every item must identify the same realm and user, and every referenced realm, user, and asset must exist.
97
- * HTTP POST /asset/user/link
98
- * Java method: org.openremote.model.asset.AssetResource.createUserAssetLinks
89
+ * Loads each installed application's info.json file and returns the documents keyed by application identifier.
90
+ * HTTP GET /apps/info
91
+ * Java method: org.openremote.model.apps.AppResource.getAppInfos
99
92
  */
100
- createUserAssetLinks(userAssets: Model.UserAssetLink[], options?: O): RestResponse<void>;
93
+ getAppInfos(options?: O): RestResponse<{
94
+ [index: string]: any;
95
+ }>;
96
+ }
97
+ export declare class RealmResourceClient<O> {
98
+ protected httpClient: HttpClient<O>;
99
+ constructor(httpClient: HttpClient<O>);
101
100
  /**
102
- * Returns user-asset links in the required realm, optionally filtered by userId and assetId. Missing users or assets produce an empty result; restricted users cannot call this operation.
103
- * HTTP GET /asset/user/link
104
- * Java method: org.openremote.model.asset.AssetResource.getUserAssetLinks
101
+ * Creates and configures a realm in the identity provider. This operation is restricted to a super user.
102
+ * HTTP POST /realm
103
+ * Java method: org.openremote.model.security.RealmResource.create
105
104
  */
106
- getUserAssetLinks(queryParams?: {
107
- realm?: string;
108
- userId?: string;
109
- assetId?: string;
110
- }, options?: O): RestResponse<Model.UserAssetLink[]>;
105
+ create(realm: Model.Realm, options?: O): RestResponse<void>;
111
106
  /**
112
- * Removes all supplied links. Every item must identify the same realm and user.
113
- * HTTP POST /asset/user/link/delete
114
- * Java method: org.openremote.model.asset.AssetResource.deleteUserAssetLinks
107
+ * Returns complete realm records from the identity provider. This operation is restricted to a super user.
108
+ * HTTP GET /realm
109
+ * Java method: org.openremote.model.security.RealmResource.getAll
115
110
  */
116
- deleteUserAssetLinks(userAssets: Model.UserAssetLink[], options?: O): RestResponse<void>;
111
+ getAll(options?: O): RestResponse<Model.Realm[]>;
117
112
  /**
118
- * Removes every asset link belonging to the user in the requested realm.
119
- * HTTP DELETE /asset/user/link/{realm}/{userId}
120
- * Java method: org.openremote.model.asset.AssetResource.deleteAllUserAssetLinks
113
+ * Returns only realm name and display name. Super users receive all realms; authenticated users receive their realm; anonymous callers receive the request realm.
114
+ * HTTP GET /realm/accessible
115
+ * Java method: org.openremote.model.security.RealmResource.getAccessible
121
116
  */
122
- deleteAllUserAssetLinks(realm: string, userId: string, options?: O): RestResponse<void>;
117
+ getAccessible(options?: O): RestResponse<Model.Realm[]>;
123
118
  /**
124
- * Removes the link identified by realm, user, and asset. The caller must be allowed to administer asset links in that realm.
125
- * HTTP DELETE /asset/user/link/{realm}/{userId}/{assetId}
126
- * Java method: org.openremote.model.asset.AssetResource.deleteUserAssetLink
119
+ * Permanently deletes a realm from the identity provider. The master realm cannot be deleted; related Manager data is not automatically removed.
120
+ * Response code 405 - The master realm cannot be deleted
121
+ * HTTP DELETE /realm/{name}
122
+ * Java method: org.openremote.model.security.RealmResource.delete
127
123
  */
128
- deleteUserAssetLink(realm: string, userId: string, assetId: string, options?: O): RestResponse<void>;
124
+ delete(name: string, options?: O): RestResponse<void>;
129
125
  /**
130
- * Returns a fully loaded asset including its path and attributes. Access is constrained to the caller's realm and, for restricted users, linked assets.
131
- * HTTP GET /asset/{assetId}
132
- * Java method: org.openremote.model.asset.AssetResource.get
126
+ * Returns complete details for a named active realm when it is accessible to the caller. Regular users cannot use this endpoint to inspect other realms.
127
+ * HTTP GET /realm/{name}
128
+ * Java method: org.openremote.model.security.RealmResource.get
133
129
  */
134
- get(assetId: string, options?: O): RestResponse<Model.Asset>;
130
+ get(name: string, options?: O): RestResponse<Model.Realm>;
135
131
  /**
136
- * Replaces mutable asset data while preserving the path identifier. Realm, parent, restricted-user, and private-metadata rules are validated; disallowed restricted-user fields may be ignored.
137
- * HTTP PUT /asset/{assetId}
138
- * Java method: org.openremote.model.asset.AssetResource.update
132
+ * Updates a realm through the identity provider. Super-user access is required; the master realm cannot be renamed or disabled.
133
+ * Response code 405 - The requested mutation is not allowed for the master realm
134
+ * HTTP PUT /realm/{name}
135
+ * Java method: org.openremote.model.security.RealmResource.update
139
136
  */
140
- update(assetId: string, asset: Model.Asset, options?: O): RestResponse<Model.Asset>;
137
+ update(name: string, realm: Model.Realm, options?: O): RestResponse<void>;
138
+ }
139
+ export declare class FlowResourceClient<O> {
140
+ protected httpClient: HttpClient<O>;
141
+ constructor(httpClient: HttpClient<O>);
141
142
  /**
142
- * Submits an asynchronous attribute write using the current server time. The result reports whether the event was accepted, not whether downstream processing ultimately succeeded. Anonymous writes require public-write metadata.
143
- * Response code 400 - The attribute write failed
144
- * Response code 406 - The supplied value is not valid for the attribute
145
- * Response code 429 - The attribute event queue is full; retry the write later
146
- * HTTP PUT /asset/{assetId}/attribute/{attributeName}
147
- * Java method: org.openremote.model.asset.AssetResource.writeAttributeValue
143
+ * Returns every supported flow node definition except the internal LOG_OUTPUT node.
144
+ * HTTP GET /flow
145
+ * Java method: org.openremote.model.rules.flow.FlowResource.getAllNodeDefinitions
148
146
  */
149
- writeAttributeValue$PUT$asset_assetId_attribute_attributeName(assetId: string, attributeName: string, value: any, options?: O): RestResponse<Model.AttributeWriteResult>;
147
+ getAllNodeDefinitions(options?: O): RestResponse<Model.Node[]>;
150
148
  /**
151
- * Submits an asynchronous attribute write using the supplied Unix timestamp in milliseconds. The result reports acceptance only; anonymous writes require public-write metadata.
152
- * Response code 400 - The attribute write failed
153
- * Response code 406 - The supplied value is not valid for the attribute
154
- * Response code 429 - The attribute event queue is full; retry the write later
155
- * HTTP PUT /asset/{assetId}/attribute/{attributeName}/{timestamp}
156
- * Java method: org.openremote.model.asset.AssetResource.writeAttributeValue
149
+ * Resolves one flow node definition by its model name.
150
+ * HTTP GET /flow/{name}
151
+ * Java method: org.openremote.model.rules.flow.FlowResource.getNodeDefinition
157
152
  */
158
- writeAttributeValue$PUT$asset_assetId_attribute_attributeName_timestamp(assetId: string, attributeName: string, timestamp: number, value: any, options?: O): RestResponse<Model.AttributeWriteResult>;
153
+ getNodeDefinition(name: string, options?: O): RestResponse<Model.Node>;
159
154
  /**
160
- * Sets parentAssetId as the parent of every asset listed in repeated assetIds query parameters. Parent and children must satisfy realm, access, and hierarchy constraints.
161
- * HTTP PUT /asset/{parentAssetId}/child
162
- * Java method: org.openremote.model.asset.AssetResource.updateParent
155
+ * Returns supported flow node definitions whose category matches the requested node type.
156
+ * HTTP GET /flow/{type}
157
+ * Java method: org.openremote.model.rules.flow.FlowResource.getAllNodeDefinitionsByType
163
158
  */
164
- updateParent(parentAssetId: string, queryParams?: {
165
- assetIds?: string[];
166
- }, options?: O): RestResponse<void>;
159
+ getAllNodeDefinitionsByType(type: Model.NodeType, options?: O): RestResponse<Model.Node[]>;
167
160
  }
168
161
  export declare class ProvisioningResourceClient<O> {
169
162
  protected httpClient: HttpClient<O>;
@@ -193,29 +186,118 @@ export declare class ProvisioningResourceClient<O> {
193
186
  */
194
187
  updateProvisioningConfig(id: number, provisioningConfig: Model.ProvisioningConfigUnion<any, any>, options?: O): RestResponse<void>;
195
188
  }
196
- export declare class ConfigurationResourceClient<O> {
189
+ export declare class GatewayClientResourceClient<O> {
197
190
  protected httpClient: HttpClient<O>;
198
191
  constructor(httpClient: HttpClient<O>);
199
192
  /**
200
- * Returns the public Manager application configuration used by clients before and after authentication.
201
- * HTTP GET /configuration/manager
202
- * Java method: org.openremote.model.manager.ConfigurationResource.getManagerConfig
193
+ * Removes connections for all repeated realm query parameters. Deleting multiple realms is restricted to super users.
194
+ * HTTP DELETE /gateway/connection
195
+ * Java method: org.openremote.model.gateway.GatewayClientResource.deleteConnections
203
196
  */
204
- getManagerConfig(options?: O): RestResponse<Model.ManagerAppConfig>;
197
+ deleteConnections(queryParams?: {
198
+ realm?: string[];
199
+ }, options?: O): RestResponse<void>;
205
200
  /**
206
- * Replaces manager_config.json and returns the stored configuration. This administrative change affects Manager UI branding and behavior.
207
- * HTTP PUT /configuration/manager
208
- * Java method: org.openremote.model.manager.ConfigurationResource.update
201
+ * Returns every configured central-manager connection. Unlike the single-realm endpoint, this operation is restricted to super users.
202
+ * HTTP GET /gateway/connection
203
+ * Java method: org.openremote.model.gateway.GatewayClientResource.getConnections
209
204
  */
210
- update(managerConfiguration: Model.ManagerAppConfig, options?: O): RestResponse<Model.ManagerAppConfig>;
205
+ getConnections(options?: O): RestResponse<Model.GatewayConnection[]>;
211
206
  /**
212
- * Decodes and stores the supplied FileInfo under the requested relative path, then returns its Manager API path.
213
- * HTTP POST /configuration/manager/file
214
- * Java method: org.openremote.model.manager.ConfigurationResource.fileUpload
207
+ * Removes the central-manager connection for one realm. Realm administrators can remove their own connection; super users can remove any connection.
208
+ * HTTP DELETE /gateway/connection/{realm}
209
+ * Java method: org.openremote.model.gateway.GatewayClientResource.deleteConnection
215
210
  */
216
- fileUpload(fileInfo: Model.FileInfo, queryParams?: {
217
- path?: string;
218
- }, options?: O): RestResponse<string>;
211
+ deleteConnection(realm: string, options?: O): RestResponse<void>;
212
+ /**
213
+ * Returns the central-manager connection configured for a realm, or null when none exists. Realm administrators can read their own realm; super users can read any realm.
214
+ * Response code 204 - No gateway connection is configured for the realm
215
+ * HTTP GET /gateway/connection/{realm}
216
+ * Java method: org.openremote.model.gateway.GatewayClientResource.getConnection
217
+ */
218
+ getConnection(realm: string, options?: O): RestResponse<Model.GatewayConnection>;
219
+ /**
220
+ * Creates or replaces the connection for the path realm. The server forces the local realm, including realm predicates in attribute filters, to match the path.
221
+ * HTTP PUT /gateway/connection/{realm}
222
+ * Java method: org.openremote.model.gateway.GatewayClientResource.setConnection
223
+ */
224
+ setConnection(realm: string, connection: Model.GatewayConnection, options?: O): RestResponse<void>;
225
+ /**
226
+ * Returns the live connection state for the requested local realm.
227
+ * HTTP GET /gateway/status/{realm}
228
+ * Java method: org.openremote.model.gateway.GatewayClientResource.getConnectionStatus
229
+ */
230
+ getConnectionStatus(realm: string, options?: O): RestResponse<Model.ConnectionStatus>;
231
+ }
232
+ export declare class GatewayServiceResourceClient<O> {
233
+ protected httpClient: HttpClient<O>;
234
+ constructor(httpClient: HttpClient<O>);
235
+ /**
236
+ * Requests a TCP tunnel through a connected gateway and returns its allocated local endpoint. When realm is omitted, the authenticated realm is used.
237
+ * Response code 417 - The gateway could not establish the requested tunnel
238
+ * HTTP POST /gateway/tunnel
239
+ * Java method: org.openremote.model.gateway.GatewayServiceResource.startTunnel
240
+ */
241
+ startTunnel(tunnelInfo: Model.GatewayTunnelInfo, options?: O): RestResponse<Model.GatewayTunnelInfo>;
242
+ /**
243
+ * Stops the tunnel identified by the supplied gateway, target, and port information. When realm is omitted, the authenticated realm is used.
244
+ * HTTP DELETE /gateway/tunnel
245
+ * Java method: org.openremote.model.gateway.GatewayServiceResource.stopTunnel
246
+ */
247
+ stopTunnel(tunnelInfo: Model.GatewayTunnelInfo, options?: O): RestResponse<void>;
248
+ /**
249
+ * Returns active tunnels for all gateway assets in the requested realm. Restricted users cannot list an entire realm.
250
+ * HTTP GET /gateway/tunnel/{realm}
251
+ * Java method: org.openremote.model.gateway.GatewayServiceResource.getAllActiveTunnelInfos
252
+ */
253
+ getAllActiveTunnelInfos(realm: string, options?: O): RestResponse<Model.GatewayTunnelInfo[]>;
254
+ /**
255
+ * Returns active tunnels for one gateway asset. Restricted users may query only a linked gateway.
256
+ * HTTP GET /gateway/tunnel/{realm}/{id}
257
+ * Java method: org.openremote.model.gateway.GatewayServiceResource.getGatewayActiveTunnelInfos
258
+ */
259
+ getGatewayActiveTunnelInfos(realm: string, id: string, options?: O): RestResponse<Model.GatewayTunnelInfo[]>;
260
+ /**
261
+ * Returns the tunnel matching realm, gateway, target host, and target port, or null when no active tunnel matches.
262
+ * Response code 204 - No active tunnel matches the requested endpoint
263
+ * HTTP GET /gateway/tunnel/{realm}/{id}/{target}/{targetPort}
264
+ * Java method: org.openremote.model.gateway.GatewayServiceResource.getActiveTunnelInfo
265
+ */
266
+ getActiveTunnelInfo(realm: string, id: string, target: string, targetPort: number, options?: O): RestResponse<Model.GatewayTunnelInfo>;
267
+ }
268
+ export declare class ConsoleResourceClient<O> {
269
+ protected httpClient: HttpClient<O>;
270
+ constructor(httpClient: HttpClient<O>);
271
+ /**
272
+ * Creates an anonymous console registration when id is absent, or updates an existing registration when id is present. Authenticated new registrations are linked to the caller; updates require that link. The returned registration contains the durable asset ID for later calls.
273
+ * HTTP POST /console/register
274
+ * Java method: org.openremote.model.console.ConsoleResource.register
275
+ */
276
+ register(consoleRegistration: Model.ConsoleRegistration, options?: O): RestResponse<Model.ConsoleRegistration>;
277
+ }
278
+ export declare class ConfigurationResourceClient<O> {
279
+ protected httpClient: HttpClient<O>;
280
+ constructor(httpClient: HttpClient<O>);
281
+ /**
282
+ * Returns the public Manager application configuration used by clients before and after authentication.
283
+ * HTTP GET /configuration/manager
284
+ * Java method: org.openremote.model.manager.ConfigurationResource.getManagerConfig
285
+ */
286
+ getManagerConfig(options?: O): RestResponse<Model.ManagerAppConfig>;
287
+ /**
288
+ * Replaces manager_config.json and returns the stored configuration. This administrative change affects Manager UI branding and behavior.
289
+ * HTTP PUT /configuration/manager
290
+ * Java method: org.openremote.model.manager.ConfigurationResource.update
291
+ */
292
+ update(managerConfiguration: Model.ManagerAppConfig, options?: O): RestResponse<Model.ManagerAppConfig>;
293
+ /**
294
+ * Decodes and stores the supplied FileInfo under the requested relative path, then returns its Manager API path.
295
+ * HTTP POST /configuration/manager/file
296
+ * Java method: org.openremote.model.manager.ConfigurationResource.fileUpload
297
+ */
298
+ fileUpload(fileInfo: Model.FileInfo, queryParams?: {
299
+ path?: string;
300
+ }, options?: O): RestResponse<string>;
219
301
  /**
220
302
  * Streams a previously uploaded configuration image using its detected media type.
221
303
  * Response code 200 - The image file
@@ -224,36 +306,104 @@ export declare class ConfigurationResourceClient<O> {
224
306
  */
225
307
  getManagerConfigImage(filename: string, options?: O): RestResponse<any>;
226
308
  }
227
- export declare class AssetDatapointResourceClient<O> {
309
+ export declare class ExternalServiceResourceClient<O> {
228
310
  protected httpClient: HttpClient<O>;
229
311
  constructor(httpClient: HttpClient<O>);
230
312
  /**
231
- * Streams a ZIP archive containing exported datapoints for one or more attribute references over the requested inclusive time range. attributeRefs is a JSON-encoded array of objects with id and name fields.
232
- * Response code 200 - A ZIP archive containing the exported data
233
- * HTTP GET /asset/datapoint/export
234
- * Java method: org.openremote.model.datapoint.AssetDatapointResource.getDatapointExport
313
+ * Returns all active realm-scoped service registrations for an active realm accessible to the caller.
314
+ * Response code 200 - List of registered external services
315
+ * HTTP GET /service
316
+ * Java method: org.openremote.model.services.ExternalServiceResource.getServices
235
317
  */
236
- getDatapointExport(queryParams?: {
237
- attributeRefs?: string;
238
- fromTimestamp?: number;
239
- toTimestamp?: number;
240
- format?: Model.DatapointExportFormat;
241
- }, options?: O): RestResponse<any>;
318
+ getServices(queryParams?: {
319
+ realm?: string;
320
+ }, options?: O): RestResponse<Model.ExternalService[]>;
242
321
  /**
243
- * Returns the oldest and newest stored timestamps for one attribute. The asset and attribute must be readable by the authenticated user and configured for datapoint storage.
244
- * HTTP GET /asset/datapoint/periods
245
- * Java method: org.openremote.model.datapoint.AssetDatapointResource.getDatapointPeriod
322
+ * Registers a realm-scoped service instance for the request realm. The caller must be a service account; the returned object contains the assigned instance ID and initial lease state.
323
+ * Response code 200 - Service registered successfully
324
+ * Response code 400 - Invalid external service object
325
+ * Response code 409 - ExternalService instance already registered
326
+ * HTTP POST /service
327
+ * Java method: org.openremote.model.services.ExternalServiceResource.registerService
246
328
  */
247
- getDatapointPeriod(queryParams?: {
248
- assetId?: string;
249
- attributeName?: string;
250
- }, options?: O): RestResponse<Model.DatapointPeriod>;
329
+ registerService(service: Model.ExternalService, options?: O): RestResponse<Model.ExternalService>;
251
330
  /**
252
- * Returns stored historical values for one attribute. A null body returns the available series; a polymorphic query body controls the time range and retrieval or aggregation strategy. Anonymous access requires public-read access on both asset and attribute.
253
- * HTTP POST /asset/datapoint/{assetId}/{attributeName}
254
- * Java method: org.openremote.model.datapoint.AssetDatapointResource.getDatapoints
331
+ * Returns active registrations marked as globally available across realms.
332
+ * Response code 200 - List of registered external services
333
+ * HTTP GET /service/global
334
+ * Java method: org.openremote.model.services.ExternalServiceResource.getGlobalServices
255
335
  */
256
- getDatapoints(assetId: string, attributeName: string, query: Model.AssetDatapointQueryUnion, options?: O): RestResponse<Model.ValueDatapoint<any>[]>;
336
+ getGlobalServices(options?: O): RestResponse<Model.ExternalService[]>;
337
+ /**
338
+ * Registers a service visible in every realm. The caller must be a super-user service account and the request must use the master realm.
339
+ * Response code 200 - Service registered successfully
340
+ * Response code 400 - Invalid external service object
341
+ * Response code 409 - ExternalService instance already registered
342
+ * HTTP POST /service/global
343
+ * Java method: org.openremote.model.services.ExternalServiceResource.registerGlobalService
344
+ */
345
+ registerGlobalService(service: Model.ExternalService, options?: O): RestResponse<Model.ExternalService>;
346
+ /**
347
+ * Removes an active service registration. The caller must be the service account that registered it; global-service removal additionally requires a super user.
348
+ * Response code 204 - Service deregistered successfully
349
+ * Response code 404 - Service instance not found
350
+ * HTTP DELETE /service/{serviceId}/{instanceId}
351
+ * Java method: org.openremote.model.services.ExternalServiceResource.deregisterService
352
+ */
353
+ deregisterService(serviceId: string, instanceId: number, options?: O): RestResponse<void>;
354
+ /**
355
+ * Returns one registered instance by stable service ID and numeric instance ID, after verifying access to the service's realm.
356
+ * Response code 200 - ExternalService retrieved successfully
357
+ * Response code 404 - ExternalService not found
358
+ * HTTP GET /service/{serviceId}/{instanceId}
359
+ * Java method: org.openremote.model.services.ExternalServiceResource.getService
360
+ */
361
+ getService(serviceId: string, instanceId: number, options?: O): RestResponse<Model.ExternalService>;
362
+ /**
363
+ * Extends the lease of one service instance. The caller must be the service account that registered it; global-service heartbeats additionally require a super user.
364
+ * Response code 204 - Heartbeat sent successfully
365
+ * Response code 404 - Service instance not found
366
+ * HTTP PUT /service/{serviceId}/{instanceId}
367
+ * Java method: org.openremote.model.services.ExternalServiceResource.heartbeat
368
+ */
369
+ heartbeat(serviceId: string, instanceId: number, options?: O): RestResponse<void>;
370
+ }
371
+ export declare class SyslogResourceClient<O> {
372
+ protected httpClient: HttpClient<O>;
373
+ constructor(httpClient: HttpClient<O>);
374
+ /**
375
+ * Returns the current log-storage and retention configuration.
376
+ * HTTP GET /syslog/config
377
+ * Java method: org.openremote.model.syslog.SyslogResource.getConfig
378
+ */
379
+ getConfig(options?: O): RestResponse<Model.SyslogConfig>;
380
+ /**
381
+ * Validates and applies log-storage and retention settings.
382
+ * HTTP PUT /syslog/config
383
+ * Java method: org.openremote.model.syslog.SyslogResource.updateConfig
384
+ */
385
+ updateConfig(config: Model.SyslogConfig, options?: O): RestResponse<void>;
386
+ /**
387
+ * Permanently removes all events from the configured syslog storage.
388
+ * HTTP DELETE /syslog/event
389
+ * Java method: org.openremote.model.syslog.SyslogResource.clearEvents
390
+ */
391
+ clearEvents(options?: O): RestResponse<void>;
392
+ /**
393
+ * Returns a page of log events filtered by severity, Unix-millisecond time range, categories, and subcategories. RFC 8288 Link headers point to the next and last pages.
394
+ * Response code 200 - The requested page of syslog events
395
+ * HTTP GET /syslog/event
396
+ * Java method: org.openremote.model.syslog.SyslogResource.getEvents
397
+ */
398
+ getEvents(queryParams?: {
399
+ level?: Model.SyslogLevel;
400
+ per_page?: number;
401
+ page?: number;
402
+ from?: number;
403
+ to?: number;
404
+ category?: Model.SyslogCategory[];
405
+ subCategory?: string[];
406
+ }, options?: O): RestResponse<any>;
257
407
  }
258
408
  export declare class DashboardResourceClient<O> {
259
409
  protected httpClient: HttpClient<O>;
@@ -295,157 +445,145 @@ export declare class DashboardResourceClient<O> {
295
445
  */
296
446
  get(realm: string, dashboardId: string, options?: O): RestResponse<Model.Dashboard>;
297
447
  }
298
- export declare class FlowResourceClient<O> {
448
+ export declare class AssetResourceClient<O> {
299
449
  protected httpClient: HttpClient<O>;
300
450
  constructor(httpClient: HttpClient<O>);
301
451
  /**
302
- * Returns every supported flow node definition except the internal LOG_OUTPUT node.
303
- * HTTP GET /flow
304
- * Java method: org.openremote.model.rules.flow.FlowResource.getAllNodeDefinitions
452
+ * Creates an asset in an accessible realm and returns the persisted representation. The server generates an ID when absent; supplied IDs must be globally unique and 22 characters long.
453
+ * HTTP POST /asset
454
+ * Java method: org.openremote.model.asset.AssetResource.create
305
455
  */
306
- getAllNodeDefinitions(options?: O): RestResponse<Model.Node[]>;
456
+ create(asset: Model.Asset, options?: O): RestResponse<Model.Asset>;
307
457
  /**
308
- * Resolves one flow node definition by its model name.
309
- * HTTP GET /flow/{name}
310
- * Java method: org.openremote.model.rules.flow.FlowResource.getNodeDefinition
458
+ * Permanently deletes every asset identified by repeated assetId query parameters, subject to realm and restricted-user access rules.
459
+ * HTTP DELETE /asset
460
+ * Java method: org.openremote.model.asset.AssetResource.delete
311
461
  */
312
- getNodeDefinition(name: string, options?: O): RestResponse<Model.Node>;
462
+ delete(queryParams?: {
463
+ assetId?: string[];
464
+ }, options?: O): RestResponse<void>;
313
465
  /**
314
- * Returns supported flow node definitions whose category matches the requested node type.
315
- * HTTP GET /flow/{type}
316
- * Java method: org.openremote.model.rules.flow.FlowResource.getAllNodeDefinitionsByType
466
+ * Submits a batch of attribute states using current server time and returns one result per input item. Authorization and processing failures are encoded in each AttributeWriteResult rather than returned as an HTTP error.
467
+ * HTTP PUT /asset/attributes
468
+ * Java method: org.openremote.model.asset.AssetResource.writeAttributeValues
317
469
  */
318
- getAllNodeDefinitionsByType(type: Model.NodeType, options?: O): RestResponse<Model.Node[]>;
319
- }
320
- export declare class RulesResourceClient<O> {
321
- protected httpClient: HttpClient<O>;
322
- constructor(httpClient: HttpClient<O>);
470
+ writeAttributeValues(attributeStates: Model.AttributeState[], options?: O): RestResponse<Model.AttributeWriteResult[]>;
323
471
  /**
324
- * Creates and deploys a global ruleset and returns its numeric ID. Super-user access is required; legacy JavaScript rulesets cannot be created.
325
- * HTTP POST /rules
326
- * Java method: org.openremote.model.rules.RulesResource.createGlobalRuleset
472
+ * Submits a batch of complete attribute events and returns one result per input item. Supplied timestamps are preserved; authorization and processing failures are encoded per result rather than returned as an HTTP error.
473
+ * HTTP PUT /asset/attributes/timestamp
474
+ * Java method: org.openremote.model.asset.AssetResource.writeAttributeEvents
327
475
  */
328
- createGlobalRuleset(ruleset: Model.GlobalRuleset, options?: O): RestResponse<number>;
476
+ writeAttributeEvents(attributeEvents: Model.AttributeEvent[], options?: O): RestResponse<Model.AttributeWriteResult[]>;
329
477
  /**
330
- * Returns global rulesets filtered by repeated language parameters. fullyPopulate controls whether rule source and other large fields are loaded; super-user access is required.
331
- * HTTP GET /rules
332
- * Java method: org.openremote.model.rules.RulesResource.getGlobalRulesets
478
+ * Returns only the number of assets matching an AssetQuery after applying the caller's realm, public, and linked-asset access constraints.
479
+ * HTTP POST /asset/count
480
+ * Java method: org.openremote.model.asset.AssetResource.queryCount
333
481
  */
334
- getGlobalRulesets(queryParams?: {
335
- language?: Model.RulesetLang[];
336
- fullyPopulate?: boolean;
337
- }, options?: O): RestResponse<Model.GlobalRuleset[]>;
482
+ queryCount(query: Model.AssetQuery, options?: O): RestResponse<number>;
338
483
  /**
339
- * Creates and deploys a ruleset for an accessible asset and returns its numeric ID. The assetId is taken from the request body.
340
- * HTTP POST /rules/asset
341
- * Java method: org.openremote.model.rules.RulesResource.createAssetRuleset
342
- */
343
- createAssetRuleset(ruleset: Model.AssetRuleset, options?: O): RestResponse<number>;
344
- /**
345
- * Returns asset rulesets filtered by language. Callers without full access receive public rulesets only; a nonexistent asset produces an empty array.
346
- * HTTP GET /rules/asset/for/{assetId}
347
- * Java method: org.openremote.model.rules.RulesResource.getAssetRulesets
348
- */
349
- getAssetRulesets(assetId: string, queryParams?: {
350
- language?: Model.RulesetLang[];
351
- fullyPopulate?: boolean;
352
- }, options?: O): RestResponse<Model.AssetRuleset[]>;
353
- /**
354
- * Permanently removes and undeploys one ruleset from an accessible asset.
355
- * HTTP DELETE /rules/asset/{id}
356
- * Java method: org.openremote.model.rules.RulesResource.deleteAssetRuleset
484
+ * Clears the parent reference of every asset listed in repeated assetIds query parameters.
485
+ * HTTP DELETE /asset/parent
486
+ * Java method: org.openremote.model.asset.AssetResource.updateNoneParent
357
487
  */
358
- deleteAssetRuleset(id: number, options?: O): RestResponse<void>;
488
+ updateNoneParent(queryParams?: {
489
+ assetIds?: string[];
490
+ }, options?: O): RestResponse<void>;
359
491
  /**
360
- * Returns one fully populated asset ruleset when the caller can access its realm and owning asset.
361
- * HTTP GET /rules/asset/{id}
362
- * Java method: org.openremote.model.rules.RulesResource.getAssetRuleset
492
+ * Returns the asset identity and properties without loading attributes or path data. The same access rules as getAsset apply.
493
+ * HTTP GET /asset/partial/{assetId}
494
+ * Java method: org.openremote.model.asset.AssetResource.getPartial
363
495
  */
364
- getAssetRuleset(id: number, options?: O): RestResponse<Model.AssetRuleset>;
496
+ getPartial(assetId: string, options?: O): RestResponse<Model.Asset>;
365
497
  /**
366
- * Replaces and redeploys one asset ruleset. The ID must match and an existing ruleset cannot be reassigned to another asset.
367
- * HTTP PUT /rules/asset/{id}
368
- * Java method: org.openremote.model.rules.RulesResource.updateAssetRuleset
498
+ * Executes an AssetQuery after constraining realm and linked-asset access. Anonymous callers receive public-readable assets only; the query select clause controls which fields are populated.
499
+ * HTTP POST /asset/query
500
+ * Java method: org.openremote.model.asset.AssetResource.queryAssets
369
501
  */
370
- updateAssetRuleset(id: number, ruleset: Model.AssetRuleset, options?: O): RestResponse<void>;
502
+ queryAssets(query: Model.AssetQuery, options?: O): RestResponse<Model.Asset[]>;
371
503
  /**
372
- * Extracts geofence definitions relevant to the asset. Anonymous access requires a public-readable asset; authenticated restricted users require an asset link.
373
- * HTTP GET /rules/geofences/{assetId}
374
- * Java method: org.openremote.model.rules.RulesResource.getAssetGeofences
504
+ * Applies the same authorization and selection rules as queryAssets, then returns a hierarchy optimized for tree display rather than a flat asset array.
505
+ * HTTP POST /asset/tree
506
+ * Java method: org.openremote.model.asset.AssetResource.queryAssetTree
375
507
  */
376
- getAssetGeofences(assetId: string, options?: O): RestResponse<Model.GeofenceDefinition[]>;
508
+ queryAssetTree(query: Model.AssetQuery, options?: O): RestResponse<Model.AssetTree>;
377
509
  /**
378
- * Returns runtime status and error counts for an accessible asset engine. Returns null when the asset or its engine does not exist.
379
- * Response code 204 - The asset or its rules engine does not exist
380
- * HTTP GET /rules/info/asset/{assetId}
381
- * Java method: org.openremote.model.rules.RulesResource.getAssetEngineInfo
510
+ * Returns partial linked assets for a restricted user, root assets for an unrestricted realm user, and an empty array for a super user. Attributes and paths are omitted; use getAsset for full details.
511
+ * HTTP GET /asset/user/current
512
+ * Java method: org.openremote.model.asset.AssetResource.getCurrentUserAssets
382
513
  */
383
- getAssetEngineInfo(assetId: string, options?: O): RestResponse<Model.RulesEngineInfo>;
514
+ getCurrentUserAssets(options?: O): RestResponse<Model.Asset[]>;
384
515
  /**
385
- * Returns runtime status and compilation/execution error counts for the global engine, or null when that engine is not running. Super-user access is required.
386
- * Response code 204 - The global rules engine is not running
387
- * HTTP GET /rules/info/global
388
- * Java method: org.openremote.model.rules.RulesResource.getGlobalEngineInfo
516
+ * Creates all supplied links as one operation. Every item must identify the same realm and user, and every referenced realm, user, and asset must exist.
517
+ * HTTP POST /asset/user/link
518
+ * Java method: org.openremote.model.asset.AssetResource.createUserAssetLinks
389
519
  */
390
- getGlobalEngineInfo(options?: O): RestResponse<Model.RulesEngineInfo>;
520
+ createUserAssetLinks(userAssets: Model.UserAssetLink[], options?: O): RestResponse<void>;
391
521
  /**
392
- * Returns runtime status and error counts for an accessible realm engine, or null when that engine is not running. Restricted users cannot inspect realm engines.
393
- * Response code 204 - The requested realm rules engine is not running
394
- * HTTP GET /rules/info/realm/{realm}
395
- * Java method: org.openremote.model.rules.RulesResource.getRealmEngineInfo
522
+ * Returns user-asset links in the required realm, optionally filtered by userId and assetId. Missing users or assets produce an empty result; restricted users cannot call this operation.
523
+ * HTTP GET /asset/user/link
524
+ * Java method: org.openremote.model.asset.AssetResource.getUserAssetLinks
396
525
  */
397
- getRealmEngineInfo(realm: string, options?: O): RestResponse<Model.RulesEngineInfo>;
526
+ getUserAssetLinks(queryParams?: {
527
+ realm?: string;
528
+ userId?: string;
529
+ assetId?: string;
530
+ }, options?: O): RestResponse<Model.UserAssetLink[]>;
398
531
  /**
399
- * Creates and deploys a ruleset in its body realm and returns its numeric ID. Restricted users cannot create realm rulesets; legacy JavaScript is not accepted.
400
- * HTTP POST /rules/realm
401
- * Java method: org.openremote.model.rules.RulesResource.createRealmRuleset
532
+ * Removes all supplied links. Every item must identify the same realm and user.
533
+ * HTTP POST /asset/user/link/delete
534
+ * Java method: org.openremote.model.asset.AssetResource.deleteUserAssetLinks
402
535
  */
403
- createRealmRuleset(ruleset: Model.RealmRuleset, options?: O): RestResponse<number>;
536
+ deleteUserAssetLinks(userAssets: Model.UserAssetLink[], options?: O): RestResponse<void>;
404
537
  /**
405
- * Returns realm rulesets filtered by language. Anonymous, restricted, or callers without read-rules permission receive public rulesets only; fullyPopulate controls loading of rule source.
406
- * HTTP GET /rules/realm/for/{realm}
407
- * Java method: org.openremote.model.rules.RulesResource.getRealmRulesets
538
+ * Removes every asset link belonging to the user in the requested realm.
539
+ * HTTP DELETE /asset/user/link/{realm}/{userId}
540
+ * Java method: org.openremote.model.asset.AssetResource.deleteAllUserAssetLinks
408
541
  */
409
- getRealmRulesets(realm: string, queryParams?: {
410
- language?: Model.RulesetLang[];
411
- fullyPopulate?: boolean;
412
- }, options?: O): RestResponse<Model.RealmRuleset[]>;
542
+ deleteAllUserAssetLinks(realm: string, userId: string, options?: O): RestResponse<void>;
413
543
  /**
414
- * Permanently removes and undeploys one ruleset from an accessible realm.
415
- * HTTP DELETE /rules/realm/{id}
416
- * Java method: org.openremote.model.rules.RulesResource.deleteRealmRuleset
544
+ * Removes the link identified by realm, user, and asset. The caller must be allowed to administer asset links in that realm.
545
+ * HTTP DELETE /asset/user/link/{realm}/{userId}/{assetId}
546
+ * Java method: org.openremote.model.asset.AssetResource.deleteUserAssetLink
417
547
  */
418
- deleteRealmRuleset(id: number, options?: O): RestResponse<void>;
548
+ deleteUserAssetLink(realm: string, userId: string, assetId: string, options?: O): RestResponse<void>;
419
549
  /**
420
- * Returns one fully populated realm ruleset when its realm is accessible to the caller.
421
- * HTTP GET /rules/realm/{id}
422
- * Java method: org.openremote.model.rules.RulesResource.getRealmRuleset
550
+ * Returns a fully loaded asset including its path and attributes. Access is constrained to the caller's realm and, for restricted users, linked assets.
551
+ * HTTP GET /asset/{assetId}
552
+ * Java method: org.openremote.model.asset.AssetResource.get
423
553
  */
424
- getRealmRuleset(id: number, options?: O): RestResponse<Model.RealmRuleset>;
554
+ get(assetId: string, options?: O): RestResponse<Model.Asset>;
425
555
  /**
426
- * Replaces and redeploys one realm ruleset. Path and body IDs and the existing realm must match; legacy JavaScript cannot be updated.
427
- * HTTP PUT /rules/realm/{id}
428
- * Java method: org.openremote.model.rules.RulesResource.updateRealmRuleset
556
+ * Replaces mutable asset data while preserving the path identifier. Realm, parent, restricted-user, and private-metadata rules are validated; disallowed restricted-user fields may be ignored.
557
+ * HTTP PUT /asset/{assetId}
558
+ * Java method: org.openremote.model.asset.AssetResource.update
429
559
  */
430
- updateRealmRuleset(id: number, ruleset: Model.RealmRuleset, options?: O): RestResponse<void>;
560
+ update(assetId: string, asset: Model.Asset, options?: O): RestResponse<Model.Asset>;
431
561
  /**
432
- * Permanently removes and undeploys one global ruleset. Super-user access is required.
433
- * HTTP DELETE /rules/{id}
434
- * Java method: org.openremote.model.rules.RulesResource.deleteGlobalRuleset
562
+ * Submits an asynchronous attribute write using the current server time. The result reports whether the event was accepted, not whether downstream processing ultimately succeeded. Anonymous writes require public-write metadata.
563
+ * Response code 400 - The attribute write failed
564
+ * Response code 406 - The supplied value is not valid for the attribute
565
+ * Response code 429 - The attribute event queue is full; retry the write later
566
+ * HTTP PUT /asset/{assetId}/attribute/{attributeName}
567
+ * Java method: org.openremote.model.asset.AssetResource.writeAttributeValue
435
568
  */
436
- deleteGlobalRuleset(id: number, options?: O): RestResponse<void>;
569
+ writeAttributeValue$PUT$asset_assetId_attribute_attributeName(assetId: string, attributeName: string, value: any, options?: O): RestResponse<Model.AttributeWriteResult>;
437
570
  /**
438
- * Returns one fully populated global ruleset including transient deployment status and errors. Super-user access is required.
439
- * HTTP GET /rules/{id}
440
- * Java method: org.openremote.model.rules.RulesResource.getGlobalRuleset
571
+ * Submits an asynchronous attribute write using the supplied Unix timestamp in milliseconds. The result reports acceptance only; anonymous writes require public-write metadata.
572
+ * Response code 400 - The attribute write failed
573
+ * Response code 406 - The supplied value is not valid for the attribute
574
+ * Response code 429 - The attribute event queue is full; retry the write later
575
+ * HTTP PUT /asset/{assetId}/attribute/{attributeName}/{timestamp}
576
+ * Java method: org.openremote.model.asset.AssetResource.writeAttributeValue
441
577
  */
442
- getGlobalRuleset(id: number, options?: O): RestResponse<Model.GlobalRuleset>;
578
+ writeAttributeValue$PUT$asset_assetId_attribute_attributeName_timestamp(assetId: string, attributeName: string, timestamp: number, value: any, options?: O): RestResponse<Model.AttributeWriteResult>;
443
579
  /**
444
- * Replaces and redeploys the identified global ruleset. Path and body IDs must match; legacy JavaScript rulesets cannot be updated.
445
- * HTTP PUT /rules/{id}
446
- * Java method: org.openremote.model.rules.RulesResource.updateGlobalRuleset
580
+ * Sets parentAssetId as the parent of every asset listed in repeated assetIds query parameters. Parent and children must satisfy realm, access, and hierarchy constraints.
581
+ * HTTP PUT /asset/{parentAssetId}/child
582
+ * Java method: org.openremote.model.asset.AssetResource.updateParent
447
583
  */
448
- updateGlobalRuleset(id: number, ruleset: Model.GlobalRuleset, options?: O): RestResponse<void>;
584
+ updateParent(parentAssetId: string, queryParams?: {
585
+ assetIds?: string[];
586
+ }, options?: O): RestResponse<void>;
449
587
  }
450
588
  export declare class NotificationResourceClient<O> {
451
589
  protected httpClient: HttpClient<O>;
@@ -526,495 +664,151 @@ export declare class NotificationResourceClient<O> {
526
664
  targetId?: string;
527
665
  }, options?: O): RestResponse<void>;
528
666
  }
529
- export declare class AlarmResourceClient<O> {
667
+ export declare class RulesResourceClient<O> {
530
668
  protected httpClient: HttpClient<O>;
531
669
  constructor(httpClient: HttpClient<O>);
532
670
  /**
533
- * Creates a manual alarm in an accessible realm and optionally links it to the supplied asset IDs. The authenticated user or client becomes the alarm source.
534
- * HTTP POST /alarm
535
- * Java method: org.openremote.model.alarm.AlarmResource.createAlarm
671
+ * Creates and deploys a global ruleset and returns its numeric ID. Super-user access is required; legacy JavaScript rulesets cannot be created.
672
+ * HTTP POST /rules
673
+ * Java method: org.openremote.model.rules.RulesResource.createGlobalRuleset
536
674
  */
537
- createAlarm(alarm: Model.Alarm, queryParams?: {
538
- assetIds?: string[];
539
- }, options?: O): RestResponse<Model.SentAlarm>;
675
+ createGlobalRuleset(ruleset: Model.GlobalRuleset, options?: O): RestResponse<number>;
540
676
  /**
541
- * Returns alarms in the requested accessible realm, optionally filtered by status, linked asset, or assignee. When realm is omitted, the authenticated realm is used.
542
- * HTTP GET /alarm
543
- * Java method: org.openremote.model.alarm.AlarmResource.getAlarms
677
+ * Returns global rulesets filtered by repeated language parameters. fullyPopulate controls whether rule source and other large fields are loaded; super-user access is required.
678
+ * HTTP GET /rules
679
+ * Java method: org.openremote.model.rules.RulesResource.getGlobalRulesets
544
680
  */
545
- getAlarms(queryParams?: {
546
- realm?: string;
547
- status?: Model.AlarmStatus;
548
- assetId?: string;
549
- assigneeId?: string;
550
- }, options?: O): RestResponse<Model.SentAlarm[]>;
681
+ getGlobalRulesets(queryParams?: {
682
+ language?: Model.RulesetLang[];
683
+ fullyPopulate?: boolean;
684
+ }, options?: O): RestResponse<Model.GlobalRuleset[]>;
551
685
  /**
552
- * Permanently removes all alarms identified by the request body after verifying access to every alarm's realm.
553
- * HTTP DELETE /alarm
554
- * Java method: org.openremote.model.alarm.AlarmResource.removeAlarms
686
+ * Creates and deploys a ruleset for an accessible asset and returns its numeric ID. The assetId is taken from the request body.
687
+ * HTTP POST /rules/asset
688
+ * Java method: org.openremote.model.rules.RulesResource.createAssetRuleset
555
689
  */
556
- removeAlarms(ids: number[], options?: O): RestResponse<void>;
690
+ createAssetRuleset(ruleset: Model.AssetRuleset, options?: O): RestResponse<number>;
557
691
  /**
558
- * Adds links between assets and one existing alarm.
559
-
560
- The request body is a list for backward compatibility, but this operation now has single-alarm semantics:
561
- every item must contain the same `id.realm` and the same `id.alarmId`. The alarm must exist in that realm,
562
- every asset must exist in the same realm, and the authenticated user must have access to that realm. Requests
563
- containing mixed alarm IDs or realms are rejected as bad requests.
564
-
565
- Existing links are left unchanged; duplicate links in the request or links that already exist are ignored.
566
- This operation does not remove existing links from the alarm.
567
-
568
- * HTTP PUT /alarm/assets
569
- * Java method: org.openremote.model.alarm.AlarmResource.setAssetLinks
692
+ * Returns asset rulesets filtered by language. Callers without full access receive public rulesets only; a nonexistent asset produces an empty array.
693
+ * HTTP GET /rules/asset/for/{assetId}
694
+ * Java method: org.openremote.model.rules.RulesResource.getAssetRulesets
570
695
  */
571
- setAssetLinks(links: Model.AlarmAssetLink[], options?: O): RestResponse<void>;
696
+ getAssetRulesets(assetId: string, queryParams?: {
697
+ language?: Model.RulesetLang[];
698
+ fullyPopulate?: boolean;
699
+ }, options?: O): RestResponse<Model.AssetRuleset[]>;
572
700
  /**
573
- * Returns one alarm when its realm is active and accessible to the authenticated user.
574
- * HTTP GET /alarm/{alarmId}
575
- * Java method: org.openremote.model.alarm.AlarmResource.getAlarm
701
+ * Permanently removes and undeploys one ruleset from an accessible asset.
702
+ * HTTP DELETE /rules/asset/{id}
703
+ * Java method: org.openremote.model.rules.RulesResource.deleteAssetRuleset
576
704
  */
577
- getAlarm(alarmId: number, options?: O): RestResponse<Model.SentAlarm>;
705
+ deleteAssetRuleset(id: number, options?: O): RestResponse<void>;
578
706
  /**
579
- * Permanently removes one alarm after verifying access to its realm.
580
- * HTTP DELETE /alarm/{alarmId}
581
- * Java method: org.openremote.model.alarm.AlarmResource.removeAlarm
707
+ * Returns one fully populated asset ruleset when the caller can access its realm and owning asset.
708
+ * HTTP GET /rules/asset/{id}
709
+ * Java method: org.openremote.model.rules.RulesResource.getAssetRuleset
582
710
  */
583
- removeAlarm(alarmId: number, options?: O): RestResponse<void>;
711
+ getAssetRuleset(id: number, options?: O): RestResponse<Model.AssetRuleset>;
584
712
  /**
585
- * Updates the mutable state of an existing alarm after verifying access to its current realm.
586
- * HTTP PUT /alarm/{alarmId}
587
- * Java method: org.openremote.model.alarm.AlarmResource.updateAlarm
713
+ * Replaces and redeploys one asset ruleset. The ID must match and an existing ruleset cannot be reassigned to another asset.
714
+ * HTTP PUT /rules/asset/{id}
715
+ * Java method: org.openremote.model.rules.RulesResource.updateAssetRuleset
588
716
  */
589
- updateAlarm(alarmId: number, alarm: Model.SentAlarm, options?: O): RestResponse<void>;
717
+ updateAssetRuleset(id: number, ruleset: Model.AssetRuleset, options?: O): RestResponse<void>;
590
718
  /**
591
- * Returns links from the alarm to assets in the explicitly supplied accessible realm.
592
- * HTTP GET /alarm/{alarmId}/assets
593
- * Java method: org.openremote.model.alarm.AlarmResource.getAssetLinks
719
+ * Extracts geofence definitions relevant to the asset. Anonymous access requires a public-readable asset; authenticated restricted users require an asset link.
720
+ * HTTP GET /rules/geofences/{assetId}
721
+ * Java method: org.openremote.model.rules.RulesResource.getAssetGeofences
594
722
  */
595
- getAssetLinks(alarmId: number, queryParams?: {
596
- realm?: string;
597
- }, options?: O): RestResponse<Model.AlarmAssetLink[]>;
598
- }
599
- export declare class RealmResourceClient<O> {
600
- protected httpClient: HttpClient<O>;
601
- constructor(httpClient: HttpClient<O>);
723
+ getAssetGeofences(assetId: string, options?: O): RestResponse<Model.GeofenceDefinition[]>;
602
724
  /**
603
- * Creates and configures a realm in the identity provider. This operation is restricted to a super user.
604
- * HTTP POST /realm
605
- * Java method: org.openremote.model.security.RealmResource.create
725
+ * Returns runtime status and error counts for an accessible asset engine. Returns null when the asset or its engine does not exist.
726
+ * Response code 204 - The asset or its rules engine does not exist
727
+ * HTTP GET /rules/info/asset/{assetId}
728
+ * Java method: org.openremote.model.rules.RulesResource.getAssetEngineInfo
606
729
  */
607
- create(realm: Model.Realm, options?: O): RestResponse<void>;
730
+ getAssetEngineInfo(assetId: string, options?: O): RestResponse<Model.RulesEngineInfo>;
608
731
  /**
609
- * Returns complete realm records from the identity provider. This operation is restricted to a super user.
610
- * HTTP GET /realm
611
- * Java method: org.openremote.model.security.RealmResource.getAll
612
- */
613
- getAll(options?: O): RestResponse<Model.Realm[]>;
614
- /**
615
- * Returns only realm name and display name. Super users receive all realms; authenticated users receive their realm; anonymous callers receive the request realm.
616
- * HTTP GET /realm/accessible
617
- * Java method: org.openremote.model.security.RealmResource.getAccessible
618
- */
619
- getAccessible(options?: O): RestResponse<Model.Realm[]>;
620
- /**
621
- * Permanently deletes a realm from the identity provider. The master realm cannot be deleted; related Manager data is not automatically removed.
622
- * Response code 405 - The master realm cannot be deleted
623
- * HTTP DELETE /realm/{name}
624
- * Java method: org.openremote.model.security.RealmResource.delete
625
- */
626
- delete(name: string, options?: O): RestResponse<void>;
627
- /**
628
- * Returns complete details for a named active realm when it is accessible to the caller. Regular users cannot use this endpoint to inspect other realms.
629
- * HTTP GET /realm/{name}
630
- * Java method: org.openremote.model.security.RealmResource.get
631
- */
632
- get(name: string, options?: O): RestResponse<Model.Realm>;
633
- /**
634
- * Updates a realm through the identity provider. Super-user access is required; the master realm cannot be renamed or disabled.
635
- * Response code 405 - The requested mutation is not allowed for the master realm
636
- * HTTP PUT /realm/{name}
637
- * Java method: org.openremote.model.security.RealmResource.update
638
- */
639
- update(name: string, realm: Model.Realm, options?: O): RestResponse<void>;
640
- }
641
- export declare class AppResourceClient<O> {
642
- protected httpClient: HttpClient<O>;
643
- constructor(httpClient: HttpClient<O>);
644
- /**
645
- * Returns the identifiers of applications installed in the Manager web root.
646
- * HTTP GET /apps
647
- * Java method: org.openremote.model.apps.AppResource.getApps
648
- */
649
- getApps(options?: O): RestResponse<string[]>;
650
- /**
651
- * Loads the public console_config.json document used to configure console clients before sign-in.
652
- * HTTP GET /apps/consoleConfig
653
- * Java method: org.openremote.model.apps.AppResource.getConsoleConfig
654
- */
655
- getConsoleConfig(options?: O): RestResponse<any>;
656
- /**
657
- * Loads each installed application's info.json file and returns the documents keyed by application identifier.
658
- * HTTP GET /apps/info
659
- * Java method: org.openremote.model.apps.AppResource.getAppInfos
660
- */
661
- getAppInfos(options?: O): RestResponse<{
662
- [index: string]: any;
663
- }>;
664
- }
665
- export declare class ConsoleResourceClient<O> {
666
- protected httpClient: HttpClient<O>;
667
- constructor(httpClient: HttpClient<O>);
668
- /**
669
- * Creates an anonymous console registration when id is absent, or updates an existing registration when id is present. Authenticated new registrations are linked to the caller; updates require that link. The returned registration contains the durable asset ID for later calls.
670
- * HTTP POST /console/register
671
- * Java method: org.openremote.model.console.ConsoleResource.register
672
- */
673
- register(consoleRegistration: Model.ConsoleRegistration, options?: O): RestResponse<Model.ConsoleRegistration>;
674
- }
675
- export declare class AssetModelResourceClient<O> {
676
- protected httpClient: HttpClient<O>;
677
- constructor(httpClient: HttpClient<O>);
678
- /**
679
- * Returns the descriptors used to construct supported asset types, using a gateway model when the optional parent context resolves below a gateway.
680
- * HTTP GET /model/assetDescriptors
681
- * Java method: org.openremote.model.asset.AssetModelResource.getAssetDescriptors
682
- */
683
- getAssetDescriptors(queryParams?: {
684
- parentId?: string;
685
- parentType?: string;
686
- }, options?: O): RestResponse<Model.AssetDescriptor[]>;
687
- /**
688
- * Returns metadata for one asset type from this Manager or, when parentId is below a gateway, from that gateway's model. An unknown or gateway-provided type that is not locally available returns no content.
689
- * Response code 204 - No model information is available for the requested asset type
690
- * HTTP GET /model/assetInfo/{assetType}
691
- * Java method: org.openremote.model.asset.AssetModelResource.getAssetInfo
692
- */
693
- getAssetInfo(assetType: string, queryParams?: {
694
- parentId?: string;
695
- }, options?: O): RestResponse<Model.AssetTypeInfo>;
696
- /**
697
- * Returns type metadata from this Manager by default. When parentId identifies an asset below a gateway, the gateway's model is used instead; parentType can provide type context for a new parent that does not yet exist.
698
- * HTTP GET /model/assetInfos
699
- * Java method: org.openremote.model.asset.AssetModelResource.getAssetInfos
700
- */
701
- getAssetInfos(queryParams?: {
702
- parentId?: string;
703
- parentType?: string;
704
- }, options?: O): RestResponse<Model.AssetTypeInfo[]>;
705
- /**
706
- * Returns the JSON Schema and a weak ETag for the named value descriptor. Send If-None-Match on later requests to receive 304 when the schema has not changed.
707
- * Response code 200 - The current JSON Schema
708
- * Response code 304 - The supplied ETag still identifies the current schema
709
- * HTTP GET /model/getValueDescriptorSchema
710
- * Java method: org.openremote.model.asset.AssetModelResource.getValueDescriptorSchema
711
- */
712
- getValueDescriptorSchema(queryParams?: {
713
- name?: string;
714
- }, options?: O): RestResponse<any>;
715
- /**
716
- * Returns attribute metadata descriptors keyed by descriptor name, using a gateway model when parentId resolves below a gateway.
717
- * HTTP GET /model/metaItemDescriptors
718
- * Java method: org.openremote.model.asset.AssetModelResource.getMetaItemDescriptors
719
- */
720
- getMetaItemDescriptors(queryParams?: {
721
- parentId?: string;
722
- }, options?: O): RestResponse<{
723
- [index: string]: Model.MetaItemDescriptor;
724
- }>;
725
- /**
726
- * Returns attribute value descriptors keyed by descriptor name, using a gateway model when parentId resolves below a gateway.
727
- * HTTP GET /model/valueDescriptors
728
- * Java method: org.openremote.model.asset.AssetModelResource.getValueDescriptors
729
- */
730
- getValueDescriptors(queryParams?: {
731
- parentId?: string;
732
- }, options?: O): RestResponse<{
733
- [index: string]: Model.ValueDescriptor;
734
- }>;
735
- }
736
- export declare class GatewayServiceResourceClient<O> {
737
- protected httpClient: HttpClient<O>;
738
- constructor(httpClient: HttpClient<O>);
739
- /**
740
- * Requests a TCP tunnel through a connected gateway and returns its allocated local endpoint. When realm is omitted, the authenticated realm is used.
741
- * Response code 417 - The gateway could not establish the requested tunnel
742
- * HTTP POST /gateway/tunnel
743
- * Java method: org.openremote.model.gateway.GatewayServiceResource.startTunnel
744
- */
745
- startTunnel(tunnelInfo: Model.GatewayTunnelInfo, options?: O): RestResponse<Model.GatewayTunnelInfo>;
746
- /**
747
- * Stops the tunnel identified by the supplied gateway, target, and port information. When realm is omitted, the authenticated realm is used.
748
- * HTTP DELETE /gateway/tunnel
749
- * Java method: org.openremote.model.gateway.GatewayServiceResource.stopTunnel
750
- */
751
- stopTunnel(tunnelInfo: Model.GatewayTunnelInfo, options?: O): RestResponse<void>;
752
- /**
753
- * Returns active tunnels for all gateway assets in the requested realm. Restricted users cannot list an entire realm.
754
- * HTTP GET /gateway/tunnel/{realm}
755
- * Java method: org.openremote.model.gateway.GatewayServiceResource.getAllActiveTunnelInfos
756
- */
757
- getAllActiveTunnelInfos(realm: string, options?: O): RestResponse<Model.GatewayTunnelInfo[]>;
758
- /**
759
- * Returns active tunnels for one gateway asset. Restricted users may query only a linked gateway.
760
- * HTTP GET /gateway/tunnel/{realm}/{id}
761
- * Java method: org.openremote.model.gateway.GatewayServiceResource.getGatewayActiveTunnelInfos
762
- */
763
- getGatewayActiveTunnelInfos(realm: string, id: string, options?: O): RestResponse<Model.GatewayTunnelInfo[]>;
764
- /**
765
- * Returns the tunnel matching realm, gateway, target host, and target port, or null when no active tunnel matches.
766
- * Response code 204 - No active tunnel matches the requested endpoint
767
- * HTTP GET /gateway/tunnel/{realm}/{id}/{target}/{targetPort}
768
- * Java method: org.openremote.model.gateway.GatewayServiceResource.getActiveTunnelInfo
769
- */
770
- getActiveTunnelInfo(realm: string, id: string, target: string, targetPort: number, options?: O): RestResponse<Model.GatewayTunnelInfo>;
771
- }
772
- export declare class SyslogResourceClient<O> {
773
- protected httpClient: HttpClient<O>;
774
- constructor(httpClient: HttpClient<O>);
775
- /**
776
- * Returns the current log-storage and retention configuration.
777
- * HTTP GET /syslog/config
778
- * Java method: org.openremote.model.syslog.SyslogResource.getConfig
779
- */
780
- getConfig(options?: O): RestResponse<Model.SyslogConfig>;
781
- /**
782
- * Validates and applies log-storage and retention settings.
783
- * HTTP PUT /syslog/config
784
- * Java method: org.openremote.model.syslog.SyslogResource.updateConfig
785
- */
786
- updateConfig(config: Model.SyslogConfig, options?: O): RestResponse<void>;
787
- /**
788
- * Permanently removes all events from the configured syslog storage.
789
- * HTTP DELETE /syslog/event
790
- * Java method: org.openremote.model.syslog.SyslogResource.clearEvents
791
- */
792
- clearEvents(options?: O): RestResponse<void>;
793
- /**
794
- * Returns a page of log events filtered by severity, Unix-millisecond time range, categories, and subcategories. RFC 8288 Link headers point to the next and last pages.
795
- * Response code 200 - The requested page of syslog events
796
- * HTTP GET /syslog/event
797
- * Java method: org.openremote.model.syslog.SyslogResource.getEvents
798
- */
799
- getEvents(queryParams?: {
800
- level?: Model.SyslogLevel;
801
- per_page?: number;
802
- page?: number;
803
- from?: number;
804
- to?: number;
805
- category?: Model.SyslogCategory[];
806
- subCategory?: string[];
807
- }, options?: O): RestResponse<any>;
808
- }
809
- export declare class ExternalServiceResourceClient<O> {
810
- protected httpClient: HttpClient<O>;
811
- constructor(httpClient: HttpClient<O>);
812
- /**
813
- * Returns all active realm-scoped service registrations for an active realm accessible to the caller.
814
- * Response code 200 - List of registered external services
815
- * HTTP GET /service
816
- * Java method: org.openremote.model.services.ExternalServiceResource.getServices
817
- */
818
- getServices(queryParams?: {
819
- realm?: string;
820
- }, options?: O): RestResponse<Model.ExternalService[]>;
821
- /**
822
- * Registers a realm-scoped service instance for the request realm. The caller must be a service account; the returned object contains the assigned instance ID and initial lease state.
823
- * Response code 200 - Service registered successfully
824
- * Response code 400 - Invalid external service object
825
- * Response code 409 - ExternalService instance already registered
826
- * HTTP POST /service
827
- * Java method: org.openremote.model.services.ExternalServiceResource.registerService
828
- */
829
- registerService(service: Model.ExternalService, options?: O): RestResponse<Model.ExternalService>;
830
- /**
831
- * Returns active registrations marked as globally available across realms.
832
- * Response code 200 - List of registered external services
833
- * HTTP GET /service/global
834
- * Java method: org.openremote.model.services.ExternalServiceResource.getGlobalServices
835
- */
836
- getGlobalServices(options?: O): RestResponse<Model.ExternalService[]>;
837
- /**
838
- * Registers a service visible in every realm. The caller must be a super-user service account and the request must use the master realm.
839
- * Response code 200 - Service registered successfully
840
- * Response code 400 - Invalid external service object
841
- * Response code 409 - ExternalService instance already registered
842
- * HTTP POST /service/global
843
- * Java method: org.openremote.model.services.ExternalServiceResource.registerGlobalService
844
- */
845
- registerGlobalService(service: Model.ExternalService, options?: O): RestResponse<Model.ExternalService>;
846
- /**
847
- * Removes an active service registration. The caller must be the service account that registered it; global-service removal additionally requires a super user.
848
- * Response code 204 - Service deregistered successfully
849
- * Response code 404 - Service instance not found
850
- * HTTP DELETE /service/{serviceId}/{instanceId}
851
- * Java method: org.openremote.model.services.ExternalServiceResource.deregisterService
852
- */
853
- deregisterService(serviceId: string, instanceId: number, options?: O): RestResponse<void>;
854
- /**
855
- * Returns one registered instance by stable service ID and numeric instance ID, after verifying access to the service's realm.
856
- * Response code 200 - ExternalService retrieved successfully
857
- * Response code 404 - ExternalService not found
858
- * HTTP GET /service/{serviceId}/{instanceId}
859
- * Java method: org.openremote.model.services.ExternalServiceResource.getService
860
- */
861
- getService(serviceId: string, instanceId: number, options?: O): RestResponse<Model.ExternalService>;
862
- /**
863
- * Extends the lease of one service instance. The caller must be the service account that registered it; global-service heartbeats additionally require a super user.
864
- * Response code 204 - Heartbeat sent successfully
865
- * Response code 404 - Service instance not found
866
- * HTTP PUT /service/{serviceId}/{instanceId}
867
- * Java method: org.openremote.model.services.ExternalServiceResource.heartbeat
868
- */
869
- heartbeat(serviceId: string, instanceId: number, options?: O): RestResponse<void>;
870
- }
871
- export declare class AgentResourceClient<O> {
872
- protected httpClient: HttpClient<O>;
873
- constructor(httpClient: HttpClient<O>);
874
- /**
875
- * Runs the agent protocol's asset discovery, waits up to ten seconds for results, returns the discovered tree, and asynchronously persists discovered assets below the agent.
876
- * HTTP GET /agent/assetDiscovery/{agentId}
877
- * Java method: org.openremote.model.asset.agent.AgentResource.doProtocolAssetDiscovery
878
- */
879
- doProtocolAssetDiscovery(agentId: string, queryParams?: {
880
- realm?: string;
881
- }, options?: O): RestResponse<Model.AssetTreeNode[]>;
882
- /**
883
- * Decodes the supplied FileInfo, asks the agent protocol to import it, persists the returned asset tree below the agent, and returns that tree.
884
- * Response code 405 - The selected agent protocol does not support asset import
885
- * HTTP POST /agent/assetImport/{agentId}
886
- * Java method: org.openremote.model.asset.agent.AgentResource.doProtocolAssetImport
887
- */
888
- doProtocolAssetImport(agentId: string, fileInfo: Model.FileInfo, queryParams?: {
889
- realm?: string;
890
- }, options?: O): RestResponse<Model.AssetTreeNode[]>;
891
- /**
892
- * Runs instance discovery for an agent type and returns candidate Agent assets. parentId selects local versus edge-gateway discovery; non-super users are always constrained to their authenticated realm.
893
- * Response code 415 - The selected agent protocol does not support instance discovery
894
- * HTTP GET /agent/instanceDiscovery/{agentType}
895
- * Java method: org.openremote.model.asset.agent.AgentResource.doProtocolInstanceDiscovery
896
- */
897
- doProtocolInstanceDiscovery(agentType: string, queryParams?: {
898
- parentId?: string;
899
- realm?: string;
900
- }, options?: O): RestResponse<Model.Agent[]>;
901
- }
902
- export declare class MapResourceClient<O> {
903
- protected httpClient: HttpClient<O>;
904
- constructor(httpClient: HttpClient<O>);
905
- /**
906
- * Returns realm-aware public MapLibre settings with externally reachable URLs derived from proxy headers.
907
- * HTTP GET /map
908
- * Java method: org.openremote.model.map.MapResource.getSettings
909
- */
910
- getSettings(options?: O): RestResponse<{
911
- [id: string]: unknown;
912
- }>;
913
- /**
914
- * Stores the map configuration and returns the resulting public MapLibre settings.
915
- * HTTP PUT /map
916
- * Java method: org.openremote.model.map.MapResource.saveSettings
917
- */
918
- saveSettings(mapConfig: Model.MapConfig, options?: O): RestResponse<{
919
- [id: string]: unknown;
920
- }>;
921
- /**
922
- * Deletes the installed custom MBTiles database and returns the fallback public map settings.
923
- * HTTP DELETE /map/deleteMap
924
- * Java method: org.openremote.model.map.MapResource.deleteMap
732
+ * Returns runtime status and compilation/execution error counts for the global engine, or null when that engine is not running. Super-user access is required.
733
+ * Response code 204 - The global rules engine is not running
734
+ * HTTP GET /rules/info/global
735
+ * Java method: org.openremote.model.rules.RulesResource.getGlobalEngineInfo
925
736
  */
926
- deleteMap(options?: O): RestResponse<{
927
- [id: string]: unknown;
928
- }>;
737
+ getGlobalEngineInfo(options?: O): RestResponse<Model.RulesEngineInfo>;
929
738
  /**
930
- * Reports whether custom MBTiles data is installed and the maximum accepted upload size.
931
- * HTTP GET /map/getCustomMapInfo
932
- * Java method: org.openremote.model.map.MapResource.getCustomMapInfo
739
+ * Returns runtime status and error counts for an accessible realm engine, or null when that engine is not running. Restricted users cannot inspect realm engines.
740
+ * Response code 204 - The requested realm rules engine is not running
741
+ * HTTP GET /rules/info/realm/{realm}
742
+ * Java method: org.openremote.model.rules.RulesResource.getRealmEngineInfo
933
743
  */
934
- getCustomMapInfo(options?: O): RestResponse<{
935
- [id: string]: unknown;
936
- }>;
744
+ getRealmEngineInfo(realm: string, options?: O): RestResponse<Model.RulesEngineInfo>;
937
745
  /**
938
- * Returns a pre-compressed Mapbox vector tile for the requested zoom, column, and row coordinates.
939
- * Response code 200 - Gzip-compressed vector tile
940
- * Response code 204 - No tile exists at the requested coordinates
941
- * HTTP GET /map/tile/{zoom}/{column}/{row}
942
- * Java method: org.openremote.model.map.MapResource.getTile
746
+ * Creates and deploys a ruleset in its body realm and returns its numeric ID. Restricted users cannot create realm rulesets; legacy JavaScript is not accepted.
747
+ * HTTP POST /rules/realm
748
+ * Java method: org.openremote.model.rules.RulesResource.createRealmRuleset
943
749
  */
944
- getTile(zoom: number, column: number, row: number, options?: O): RestResponse<any>;
945
- /**
946
- * Stores the raw request body as the realm's custom MBTiles database and returns the resulting public map settings.
947
- * HTTP POST /map/upload
948
- * Java method: org.openremote.model.map.MapResource.uploadMap
750
+ createRealmRuleset(ruleset: Model.RealmRuleset, options?: O): RestResponse<number>;
751
+ /**
752
+ * Returns realm rulesets filtered by language. Anonymous, restricted, or callers without read-rules permission receive public rulesets only; fullyPopulate controls loading of rule source.
753
+ * HTTP GET /rules/realm/for/{realm}
754
+ * Java method: org.openremote.model.rules.RulesResource.getRealmRulesets
949
755
  */
950
- uploadMap(queryParams?: {
951
- filename?: string;
952
- }, options?: O): RestResponse<{
953
- [id: string]: unknown;
954
- }>;
955
- }
956
- export declare class GatewayClientResourceClient<O> {
957
- protected httpClient: HttpClient<O>;
958
- constructor(httpClient: HttpClient<O>);
756
+ getRealmRulesets(realm: string, queryParams?: {
757
+ language?: Model.RulesetLang[];
758
+ fullyPopulate?: boolean;
759
+ }, options?: O): RestResponse<Model.RealmRuleset[]>;
959
760
  /**
960
- * Removes connections for all repeated realm query parameters. Deleting multiple realms is restricted to super users.
961
- * HTTP DELETE /gateway/connection
962
- * Java method: org.openremote.model.gateway.GatewayClientResource.deleteConnections
761
+ * Permanently removes and undeploys one ruleset from an accessible realm.
762
+ * HTTP DELETE /rules/realm/{id}
763
+ * Java method: org.openremote.model.rules.RulesResource.deleteRealmRuleset
963
764
  */
964
- deleteConnections(queryParams?: {
965
- realm?: string[];
966
- }, options?: O): RestResponse<void>;
765
+ deleteRealmRuleset(id: number, options?: O): RestResponse<void>;
967
766
  /**
968
- * Returns every configured central-manager connection. Unlike the single-realm endpoint, this operation is restricted to super users.
969
- * HTTP GET /gateway/connection
970
- * Java method: org.openremote.model.gateway.GatewayClientResource.getConnections
767
+ * Returns one fully populated realm ruleset when its realm is accessible to the caller.
768
+ * HTTP GET /rules/realm/{id}
769
+ * Java method: org.openremote.model.rules.RulesResource.getRealmRuleset
971
770
  */
972
- getConnections(options?: O): RestResponse<Model.GatewayConnection[]>;
771
+ getRealmRuleset(id: number, options?: O): RestResponse<Model.RealmRuleset>;
973
772
  /**
974
- * Removes the central-manager connection for one realm. Realm administrators can remove their own connection; super users can remove any connection.
975
- * HTTP DELETE /gateway/connection/{realm}
976
- * Java method: org.openremote.model.gateway.GatewayClientResource.deleteConnection
773
+ * Replaces and redeploys one realm ruleset. Path and body IDs and the existing realm must match; legacy JavaScript cannot be updated.
774
+ * HTTP PUT /rules/realm/{id}
775
+ * Java method: org.openremote.model.rules.RulesResource.updateRealmRuleset
977
776
  */
978
- deleteConnection(realm: string, options?: O): RestResponse<void>;
777
+ updateRealmRuleset(id: number, ruleset: Model.RealmRuleset, options?: O): RestResponse<void>;
979
778
  /**
980
- * Returns the central-manager connection configured for a realm, or null when none exists. Realm administrators can read their own realm; super users can read any realm.
981
- * Response code 204 - No gateway connection is configured for the realm
982
- * HTTP GET /gateway/connection/{realm}
983
- * Java method: org.openremote.model.gateway.GatewayClientResource.getConnection
779
+ * Permanently removes and undeploys one global ruleset. Super-user access is required.
780
+ * HTTP DELETE /rules/{id}
781
+ * Java method: org.openremote.model.rules.RulesResource.deleteGlobalRuleset
984
782
  */
985
- getConnection(realm: string, options?: O): RestResponse<Model.GatewayConnection>;
783
+ deleteGlobalRuleset(id: number, options?: O): RestResponse<void>;
986
784
  /**
987
- * Creates or replaces the connection for the path realm. The server forces the local realm, including realm predicates in attribute filters, to match the path.
988
- * HTTP PUT /gateway/connection/{realm}
989
- * Java method: org.openremote.model.gateway.GatewayClientResource.setConnection
785
+ * Returns one fully populated global ruleset including transient deployment status and errors. Super-user access is required.
786
+ * HTTP GET /rules/{id}
787
+ * Java method: org.openremote.model.rules.RulesResource.getGlobalRuleset
990
788
  */
991
- setConnection(realm: string, connection: Model.GatewayConnection, options?: O): RestResponse<void>;
789
+ getGlobalRuleset(id: number, options?: O): RestResponse<Model.GlobalRuleset>;
992
790
  /**
993
- * Returns the live connection state for the requested local realm.
994
- * HTTP GET /gateway/status/{realm}
995
- * Java method: org.openremote.model.gateway.GatewayClientResource.getConnectionStatus
791
+ * Replaces and redeploys the identified global ruleset. Path and body IDs must match; legacy JavaScript rulesets cannot be updated.
792
+ * HTTP PUT /rules/{id}
793
+ * Java method: org.openremote.model.rules.RulesResource.updateGlobalRuleset
996
794
  */
997
- getConnectionStatus(realm: string, options?: O): RestResponse<Model.ConnectionStatus>;
795
+ updateGlobalRuleset(id: number, ruleset: Model.GlobalRuleset, options?: O): RestResponse<void>;
998
796
  }
999
- export declare class StatusResourceClient<O> {
797
+ export declare class AssetPredictedDatapointResourceClient<O> {
1000
798
  protected httpClient: HttpClient<O>;
1001
799
  constructor(httpClient: HttpClient<O>);
1002
800
  /**
1003
- * Returns health data keyed by registered health-provider name. A null provider result is represented as JSON null.
1004
- * HTTP GET /health
1005
- * Java method: org.openremote.model.system.StatusResource.getHealthStatus
801
+ * Queries predicted values for one attribute using the supplied time-range and aggregation criteria. Anonymous access requires public-read access on both asset and attribute.
802
+ * HTTP POST /asset/predicted/{assetId}/{attributeName}
803
+ * Java method: org.openremote.model.datapoint.AssetPredictedDatapointResource.getPredictedDatapoints
1006
804
  */
1007
- getHealthStatus(options?: O): RestResponse<{
1008
- [index: string]: any;
1009
- }>;
805
+ getPredictedDatapoints(assetId: string, attributeName: string, query: Model.AssetDatapointQueryUnion, options?: O): RestResponse<Model.ValueDatapoint<any>[]>;
1010
806
  /**
1011
- * Returns public bootstrap information, including the Manager version and identity-provider URL.
1012
- * HTTP GET /info
1013
- * Java method: org.openremote.model.system.StatusResource.getInfo
807
+ * Replaces or adds predicted values for one attribute. Anonymous access is allowed only when the asset and attribute are public-write; authenticated callers require attribute-write access.
808
+ * HTTP PUT /asset/predicted/{assetId}/{attributeName}
809
+ * Java method: org.openremote.model.datapoint.AssetPredictedDatapointResource.writePredictedDatapoints
1014
810
  */
1015
- getInfo(options?: O): RestResponse<{
1016
- [index: string]: any;
1017
- }>;
811
+ writePredictedDatapoints(assetId: string, attributeName: string, predictedDatapoints: Model.ValueDatapoint<any>[], options?: O): RestResponse<void>;
1018
812
  }
1019
813
  export declare class UserResourceClient<O> {
1020
814
  protected httpClient: HttpClient<O>;
@@ -1088,133 +882,339 @@ export declare class UserResourceClient<O> {
1088
882
  */
1089
883
  updatePassword(realm: string, userId: string, credential: Model.Credential, options?: O): RestResponse<void>;
1090
884
  /**
1091
- * Generates and returns a new client secret for a service user in an administered realm.
1092
- * HTTP GET /user/{realm}/reset-secret/{userId}
1093
- * Java method: org.openremote.model.security.UserResource.resetSecret
885
+ * Generates and returns a new client secret for a service user in an administered realm.
886
+ * HTTP GET /user/{realm}/reset-secret/{userId}
887
+ * Java method: org.openremote.model.security.UserResource.resetSecret
888
+ */
889
+ resetSecret(realm: string, userId: string, options?: O): RestResponse<string>;
890
+ /**
891
+ * Creates, updates, or removes role definitions for the default OpenRemote client in the requested realm.
892
+ * HTTP PUT /user/{realm}/roles
893
+ * Java method: org.openremote.model.security.UserResource.updateRoles
894
+ */
895
+ updateRoles(realm: string, roles: Model.Role[], options?: O): RestResponse<void>;
896
+ /**
897
+ * Returns realm-level role names assigned to one user. Without read-admin permission, callers may retrieve only their own roles.
898
+ * HTTP GET /user/{realm}/userRealmRoles/{userId}
899
+ * Java method: org.openremote.model.security.UserResource.getUserRealmRoles
900
+ */
901
+ getUserRealmRoles(realm: string, userId: string, options?: O): RestResponse<string[]>;
902
+ /**
903
+ * Replaces the user's assigned realm-level role names in an administered realm.
904
+ * HTTP PUT /user/{realm}/userRealmRoles/{userId}
905
+ * Java method: org.openremote.model.security.UserResource.updateUserRealmRoles
906
+ */
907
+ updateUserRealmRoles(realm: string, userId: string, roles: string[], options?: O): RestResponse<void>;
908
+ /**
909
+ * Returns role names assigned to one user for the named client. Without read-admin permission, callers may retrieve only their own roles.
910
+ * HTTP GET /user/{realm}/userRoles/{userId}/{clientId}
911
+ * Java method: org.openremote.model.security.UserResource.getUserClientRoles
912
+ */
913
+ getUserClientRoles(realm: string, userId: string, clientId: string, options?: O): RestResponse<string[]>;
914
+ /**
915
+ * Replaces the user's assigned role names for the named client in an administered realm.
916
+ * HTTP PUT /user/{realm}/userRoles/{userId}/{clientId}
917
+ * Java method: org.openremote.model.security.UserResource.updateUserClientRoles
918
+ */
919
+ updateUserClientRoles(realm: string, userId: string, clientId: string, roles: string[], options?: O): RestResponse<void>;
920
+ /**
921
+ * Returns active MQTT sessions for one user, including connection ID, creation time, and remote address. Without read-admin permission, callers may inspect only themselves.
922
+ * HTTP GET /user/{realm}/userSessions/{userId}
923
+ * Java method: org.openremote.model.security.UserResource.getUserSessions
924
+ */
925
+ getUserSessions(realm: string, userId: string, options?: O): RestResponse<Model.UserSession[]>;
926
+ /**
927
+ * Creates an identity-provider user in a realm administered by the caller and returns the resulting user record.
928
+ * HTTP POST /user/{realm}/users
929
+ * Java method: org.openremote.model.security.UserResource.create
930
+ */
931
+ create(realm: string, user: Model.User, options?: O): RestResponse<Model.User>;
932
+ /**
933
+ * Updates an existing identity-provider user in an administered realm. The master administrator cannot be disabled.
934
+ * Response code 405 - The requested cross-realm or protected master-administrator mutation is not allowed
935
+ * HTTP PUT /user/{realm}/users
936
+ * Java method: org.openremote.model.security.UserResource.update
937
+ */
938
+ update(realm: string, user: Model.User, options?: O): RestResponse<Model.User>;
939
+ /**
940
+ * Permanently deletes a user from an administered realm. The master-realm administrator cannot be deleted.
941
+ * Response code 405 - The master-realm administrator cannot be deleted
942
+ * HTTP DELETE /user/{realm}/users/{userId}
943
+ * Java method: org.openremote.model.security.UserResource.delete
944
+ */
945
+ delete(realm: string, userId: string, options?: O): RestResponse<void>;
946
+ /**
947
+ * Returns all role definitions exposed by the named identity-provider client. Realm-administrator access is required.
948
+ * HTTP GET /user/{realm}/{clientId}/roles
949
+ * Java method: org.openremote.model.security.UserResource.getClientRoles
950
+ */
951
+ getClientRoles(realm: string, clientId: string, options?: O): RestResponse<Model.Role[]>;
952
+ /**
953
+ * Creates, updates, or removes role definitions for a named identity-provider client.
954
+ * HTTP PUT /user/{realm}/{clientId}/roles
955
+ * Java method: org.openremote.model.security.UserResource.updateClientRoles
956
+ */
957
+ updateClientRoles(realm: string, clientId: string, roles: Model.Role[], options?: O): RestResponse<void>;
958
+ /**
959
+ * Returns one user when it belongs to the requested accessible realm. Without read-admin permission, callers may retrieve only their own user.
960
+ * HTTP GET /user/{realm}/{userId}
961
+ * Java method: org.openremote.model.security.UserResource.get
962
+ */
963
+ get(realm: string, userId: string, options?: O): RestResponse<Model.User>;
964
+ }
965
+ export declare class MapResourceClient<O> {
966
+ protected httpClient: HttpClient<O>;
967
+ constructor(httpClient: HttpClient<O>);
968
+ /**
969
+ * Returns realm-aware public MapLibre settings with externally reachable URLs derived from proxy headers.
970
+ * HTTP GET /map
971
+ * Java method: org.openremote.model.map.MapResource.getSettings
972
+ */
973
+ getSettings(options?: O): RestResponse<{
974
+ [id: string]: unknown;
975
+ }>;
976
+ /**
977
+ * Stores the map configuration and returns the resulting public MapLibre settings.
978
+ * HTTP PUT /map
979
+ * Java method: org.openremote.model.map.MapResource.saveSettings
980
+ */
981
+ saveSettings(mapConfig: Model.MapConfig, options?: O): RestResponse<{
982
+ [id: string]: unknown;
983
+ }>;
984
+ /**
985
+ * Deletes the installed custom MBTiles database and returns the fallback public map settings.
986
+ * HTTP DELETE /map/deleteMap
987
+ * Java method: org.openremote.model.map.MapResource.deleteMap
988
+ */
989
+ deleteMap(options?: O): RestResponse<{
990
+ [id: string]: unknown;
991
+ }>;
992
+ /**
993
+ * Reports whether custom MBTiles data is installed and the maximum accepted upload size.
994
+ * HTTP GET /map/getCustomMapInfo
995
+ * Java method: org.openremote.model.map.MapResource.getCustomMapInfo
996
+ */
997
+ getCustomMapInfo(options?: O): RestResponse<{
998
+ [id: string]: unknown;
999
+ }>;
1000
+ /**
1001
+ * Returns a pre-compressed Mapbox vector tile for the requested zoom, column, and row coordinates.
1002
+ * Response code 200 - Gzip-compressed vector tile
1003
+ * Response code 204 - No tile exists at the requested coordinates
1004
+ * HTTP GET /map/tile/{zoom}/{column}/{row}
1005
+ * Java method: org.openremote.model.map.MapResource.getTile
1006
+ */
1007
+ getTile(zoom: number, column: number, row: number, options?: O): RestResponse<any>;
1008
+ /**
1009
+ * Stores the raw request body as the realm's custom MBTiles database and returns the resulting public map settings.
1010
+ * HTTP POST /map/upload
1011
+ * Java method: org.openremote.model.map.MapResource.uploadMap
1012
+ */
1013
+ uploadMap(queryParams?: {
1014
+ filename?: string;
1015
+ }, options?: O): RestResponse<{
1016
+ [id: string]: unknown;
1017
+ }>;
1018
+ }
1019
+ export declare class AssetDatapointResourceClient<O> {
1020
+ protected httpClient: HttpClient<O>;
1021
+ constructor(httpClient: HttpClient<O>);
1022
+ /**
1023
+ * Streams a ZIP archive containing exported datapoints for one or more attribute references over the requested inclusive time range. attributeRefs is a JSON-encoded array of objects with id and name fields.
1024
+ * Response code 200 - A ZIP archive containing the exported data
1025
+ * HTTP GET /asset/datapoint/export
1026
+ * Java method: org.openremote.model.datapoint.AssetDatapointResource.getDatapointExport
1027
+ */
1028
+ getDatapointExport(queryParams?: {
1029
+ attributeRefs?: string;
1030
+ fromTimestamp?: number;
1031
+ toTimestamp?: number;
1032
+ format?: Model.DatapointExportFormat;
1033
+ }, options?: O): RestResponse<any>;
1034
+ /**
1035
+ * Returns the oldest and newest stored timestamps for one attribute. The asset and attribute must be readable by the authenticated user and configured for datapoint storage.
1036
+ * HTTP GET /asset/datapoint/periods
1037
+ * Java method: org.openremote.model.datapoint.AssetDatapointResource.getDatapointPeriod
1038
+ */
1039
+ getDatapointPeriod(queryParams?: {
1040
+ assetId?: string;
1041
+ attributeName?: string;
1042
+ }, options?: O): RestResponse<Model.DatapointPeriod>;
1043
+ /**
1044
+ * Returns stored historical values for one attribute. A null body returns the available series; a polymorphic query body controls the time range and retrieval or aggregation strategy. Anonymous access requires public-read access on both asset and attribute.
1045
+ * HTTP POST /asset/datapoint/{assetId}/{attributeName}
1046
+ * Java method: org.openremote.model.datapoint.AssetDatapointResource.getDatapoints
1047
+ */
1048
+ getDatapoints(assetId: string, attributeName: string, query: Model.AssetDatapointQueryUnion, options?: O): RestResponse<Model.ValueDatapoint<any>[]>;
1049
+ }
1050
+ export declare class AgentResourceClient<O> {
1051
+ protected httpClient: HttpClient<O>;
1052
+ constructor(httpClient: HttpClient<O>);
1053
+ /**
1054
+ * Runs the agent protocol's asset discovery, waits up to ten seconds for results, returns the discovered tree, and asynchronously persists discovered assets below the agent.
1055
+ * HTTP GET /agent/assetDiscovery/{agentId}
1056
+ * Java method: org.openremote.model.asset.agent.AgentResource.doProtocolAssetDiscovery
1094
1057
  */
1095
- resetSecret(realm: string, userId: string, options?: O): RestResponse<string>;
1058
+ doProtocolAssetDiscovery(agentId: string, queryParams?: {
1059
+ realm?: string;
1060
+ }, options?: O): RestResponse<Model.AssetTreeNode[]>;
1096
1061
  /**
1097
- * Creates, updates, or removes role definitions for the default OpenRemote client in the requested realm.
1098
- * HTTP PUT /user/{realm}/roles
1099
- * Java method: org.openremote.model.security.UserResource.updateRoles
1062
+ * Decodes the supplied FileInfo, asks the agent protocol to import it, persists the returned asset tree below the agent, and returns that tree.
1063
+ * Response code 405 - The selected agent protocol does not support asset import
1064
+ * HTTP POST /agent/assetImport/{agentId}
1065
+ * Java method: org.openremote.model.asset.agent.AgentResource.doProtocolAssetImport
1100
1066
  */
1101
- updateRoles(realm: string, roles: Model.Role[], options?: O): RestResponse<void>;
1067
+ doProtocolAssetImport(agentId: string, fileInfo: Model.FileInfo, queryParams?: {
1068
+ realm?: string;
1069
+ }, options?: O): RestResponse<Model.AssetTreeNode[]>;
1102
1070
  /**
1103
- * Returns realm-level role names assigned to one user. Without read-admin permission, callers may retrieve only their own roles.
1104
- * HTTP GET /user/{realm}/userRealmRoles/{userId}
1105
- * Java method: org.openremote.model.security.UserResource.getUserRealmRoles
1071
+ * Runs instance discovery for an agent type and returns candidate Agent assets. parentId selects local versus edge-gateway discovery; non-super users are always constrained to their authenticated realm.
1072
+ * Response code 415 - The selected agent protocol does not support instance discovery
1073
+ * HTTP GET /agent/instanceDiscovery/{agentType}
1074
+ * Java method: org.openremote.model.asset.agent.AgentResource.doProtocolInstanceDiscovery
1106
1075
  */
1107
- getUserRealmRoles(realm: string, userId: string, options?: O): RestResponse<string[]>;
1076
+ doProtocolInstanceDiscovery(agentType: string, queryParams?: {
1077
+ parentId?: string;
1078
+ realm?: string;
1079
+ }, options?: O): RestResponse<Model.Agent[]>;
1080
+ }
1081
+ export declare class AlarmResourceClient<O> {
1082
+ protected httpClient: HttpClient<O>;
1083
+ constructor(httpClient: HttpClient<O>);
1108
1084
  /**
1109
- * Replaces the user's assigned realm-level role names in an administered realm.
1110
- * HTTP PUT /user/{realm}/userRealmRoles/{userId}
1111
- * Java method: org.openremote.model.security.UserResource.updateUserRealmRoles
1085
+ * Creates a manual alarm in an accessible realm and optionally links it to the supplied asset IDs. The authenticated user or client becomes the alarm source.
1086
+ * HTTP POST /alarm
1087
+ * Java method: org.openremote.model.alarm.AlarmResource.createAlarm
1112
1088
  */
1113
- updateUserRealmRoles(realm: string, userId: string, roles: string[], options?: O): RestResponse<void>;
1089
+ createAlarm(alarm: Model.Alarm, queryParams?: {
1090
+ assetIds?: string[];
1091
+ }, options?: O): RestResponse<Model.SentAlarm>;
1114
1092
  /**
1115
- * Returns role names assigned to one user for the named client. Without read-admin permission, callers may retrieve only their own roles.
1116
- * HTTP GET /user/{realm}/userRoles/{userId}/{clientId}
1117
- * Java method: org.openremote.model.security.UserResource.getUserClientRoles
1093
+ * Returns alarms in the requested accessible realm, optionally filtered by status, linked asset, or assignee. When realm is omitted, the authenticated realm is used.
1094
+ * HTTP GET /alarm
1095
+ * Java method: org.openremote.model.alarm.AlarmResource.getAlarms
1118
1096
  */
1119
- getUserClientRoles(realm: string, userId: string, clientId: string, options?: O): RestResponse<string[]>;
1097
+ getAlarms(queryParams?: {
1098
+ realm?: string;
1099
+ status?: Model.AlarmStatus;
1100
+ assetId?: string;
1101
+ assigneeId?: string;
1102
+ }, options?: O): RestResponse<Model.SentAlarm[]>;
1120
1103
  /**
1121
- * Replaces the user's assigned role names for the named client in an administered realm.
1122
- * HTTP PUT /user/{realm}/userRoles/{userId}/{clientId}
1123
- * Java method: org.openremote.model.security.UserResource.updateUserClientRoles
1104
+ * Permanently removes all alarms identified by the request body after verifying access to every alarm's realm.
1105
+ * HTTP DELETE /alarm
1106
+ * Java method: org.openremote.model.alarm.AlarmResource.removeAlarms
1124
1107
  */
1125
- updateUserClientRoles(realm: string, userId: string, clientId: string, roles: string[], options?: O): RestResponse<void>;
1108
+ removeAlarms(ids: number[], options?: O): RestResponse<void>;
1126
1109
  /**
1127
- * Returns active MQTT sessions for one user, including connection ID, creation time, and remote address. Without read-admin permission, callers may inspect only themselves.
1128
- * HTTP GET /user/{realm}/userSessions/{userId}
1129
- * Java method: org.openremote.model.security.UserResource.getUserSessions
1110
+ * Adds links between assets and one existing alarm.
1111
+
1112
+ The request body is a list for backward compatibility, but this operation now has single-alarm semantics:
1113
+ every item must contain the same `id.realm` and the same `id.alarmId`. The alarm must exist in that realm,
1114
+ every asset must exist in the same realm, and the authenticated user must have access to that realm. Requests
1115
+ containing mixed alarm IDs or realms are rejected as bad requests.
1116
+
1117
+ Existing links are left unchanged; duplicate links in the request or links that already exist are ignored.
1118
+ This operation does not remove existing links from the alarm.
1119
+
1120
+ * HTTP PUT /alarm/assets
1121
+ * Java method: org.openremote.model.alarm.AlarmResource.setAssetLinks
1130
1122
  */
1131
- getUserSessions(realm: string, userId: string, options?: O): RestResponse<Model.UserSession[]>;
1123
+ setAssetLinks(links: Model.AlarmAssetLink[], options?: O): RestResponse<void>;
1132
1124
  /**
1133
- * Creates an identity-provider user in a realm administered by the caller and returns the resulting user record.
1134
- * HTTP POST /user/{realm}/users
1135
- * Java method: org.openremote.model.security.UserResource.create
1125
+ * Returns one alarm when its realm is active and accessible to the authenticated user.
1126
+ * HTTP GET /alarm/{alarmId}
1127
+ * Java method: org.openremote.model.alarm.AlarmResource.getAlarm
1136
1128
  */
1137
- create(realm: string, user: Model.User, options?: O): RestResponse<Model.User>;
1129
+ getAlarm(alarmId: number, options?: O): RestResponse<Model.SentAlarm>;
1138
1130
  /**
1139
- * Updates an existing identity-provider user in an administered realm. The master administrator cannot be disabled.
1140
- * Response code 405 - The requested cross-realm or protected master-administrator mutation is not allowed
1141
- * HTTP PUT /user/{realm}/users
1142
- * Java method: org.openremote.model.security.UserResource.update
1131
+ * Permanently removes one alarm after verifying access to its realm.
1132
+ * HTTP DELETE /alarm/{alarmId}
1133
+ * Java method: org.openremote.model.alarm.AlarmResource.removeAlarm
1143
1134
  */
1144
- update(realm: string, user: Model.User, options?: O): RestResponse<Model.User>;
1135
+ removeAlarm(alarmId: number, options?: O): RestResponse<void>;
1145
1136
  /**
1146
- * Permanently deletes a user from an administered realm. The master-realm administrator cannot be deleted.
1147
- * Response code 405 - The master-realm administrator cannot be deleted
1148
- * HTTP DELETE /user/{realm}/users/{userId}
1149
- * Java method: org.openremote.model.security.UserResource.delete
1137
+ * Updates the mutable state of an existing alarm after verifying access to its current realm.
1138
+ * HTTP PUT /alarm/{alarmId}
1139
+ * Java method: org.openremote.model.alarm.AlarmResource.updateAlarm
1150
1140
  */
1151
- delete(realm: string, userId: string, options?: O): RestResponse<void>;
1141
+ updateAlarm(alarmId: number, alarm: Model.SentAlarm, options?: O): RestResponse<void>;
1152
1142
  /**
1153
- * Returns all role definitions exposed by the named identity-provider client. Realm-administrator access is required.
1154
- * HTTP GET /user/{realm}/{clientId}/roles
1155
- * Java method: org.openremote.model.security.UserResource.getClientRoles
1143
+ * Returns links from the alarm to assets in the explicitly supplied accessible realm.
1144
+ * HTTP GET /alarm/{alarmId}/assets
1145
+ * Java method: org.openremote.model.alarm.AlarmResource.getAssetLinks
1156
1146
  */
1157
- getClientRoles(realm: string, clientId: string, options?: O): RestResponse<Model.Role[]>;
1147
+ getAssetLinks(alarmId: number, queryParams?: {
1148
+ realm?: string;
1149
+ }, options?: O): RestResponse<Model.AlarmAssetLink[]>;
1150
+ }
1151
+ export declare class StatusResourceClient<O> {
1152
+ protected httpClient: HttpClient<O>;
1153
+ constructor(httpClient: HttpClient<O>);
1158
1154
  /**
1159
- * Creates, updates, or removes role definitions for a named identity-provider client.
1160
- * HTTP PUT /user/{realm}/{clientId}/roles
1161
- * Java method: org.openremote.model.security.UserResource.updateClientRoles
1155
+ * Returns health data keyed by registered health-provider name. A null provider result is represented as JSON null.
1156
+ * HTTP GET /health
1157
+ * Java method: org.openremote.model.system.StatusResource.getHealthStatus
1162
1158
  */
1163
- updateClientRoles(realm: string, clientId: string, roles: Model.Role[], options?: O): RestResponse<void>;
1159
+ getHealthStatus(options?: O): RestResponse<{
1160
+ [index: string]: any;
1161
+ }>;
1164
1162
  /**
1165
- * Returns one user when it belongs to the requested accessible realm. Without read-admin permission, callers may retrieve only their own user.
1166
- * HTTP GET /user/{realm}/{userId}
1167
- * Java method: org.openremote.model.security.UserResource.get
1163
+ * Returns public bootstrap information, including the Manager version and identity-provider URL.
1164
+ * HTTP GET /info
1165
+ * Java method: org.openremote.model.system.StatusResource.getInfo
1168
1166
  */
1169
- get(realm: string, userId: string, options?: O): RestResponse<Model.User>;
1167
+ getInfo(options?: O): RestResponse<{
1168
+ [index: string]: any;
1169
+ }>;
1170
1170
  }
1171
1171
  export type RestResponse<R> = Promise<Axios.GenericAxiosResponse<R>>;
1172
1172
  export declare class ApiClient {
1173
- protected _assetPredictedDatapointResource: AxiosAssetPredictedDatapointResourceClient;
1174
- protected _assetResource: AxiosAssetResourceClient;
1173
+ protected _assetModelResource: AxiosAssetModelResourceClient;
1174
+ protected _appResource: AxiosAppResourceClient;
1175
+ protected _realmResource: AxiosRealmResourceClient;
1176
+ protected _flowResource: AxiosFlowResourceClient;
1175
1177
  protected _provisioningResource: AxiosProvisioningResourceClient;
1178
+ protected _gatewayClientResource: AxiosGatewayClientResourceClient;
1179
+ protected _gatewayServiceResource: AxiosGatewayServiceResourceClient;
1180
+ protected _consoleResource: AxiosConsoleResourceClient;
1176
1181
  protected _configurationResource: AxiosConfigurationResourceClient;
1177
- protected _assetDatapointResource: AxiosAssetDatapointResourceClient;
1182
+ protected _externalServiceResource: AxiosExternalServiceResourceClient;
1183
+ protected _syslogResource: AxiosSyslogResourceClient;
1178
1184
  protected _dashboardResource: AxiosDashboardResourceClient;
1179
- protected _flowResource: AxiosFlowResourceClient;
1180
- protected _rulesResource: AxiosRulesResourceClient;
1185
+ protected _assetResource: AxiosAssetResourceClient;
1181
1186
  protected _notificationResource: AxiosNotificationResourceClient;
1182
- protected _alarmResource: AxiosAlarmResourceClient;
1183
- protected _realmResource: AxiosRealmResourceClient;
1184
- protected _appResource: AxiosAppResourceClient;
1185
- protected _consoleResource: AxiosConsoleResourceClient;
1186
- protected _assetModelResource: AxiosAssetModelResourceClient;
1187
- protected _gatewayServiceResource: AxiosGatewayServiceResourceClient;
1188
- protected _syslogResource: AxiosSyslogResourceClient;
1189
- protected _externalServiceResource: AxiosExternalServiceResourceClient;
1190
- protected _agentResource: AxiosAgentResourceClient;
1187
+ protected _rulesResource: AxiosRulesResourceClient;
1188
+ protected _assetPredictedDatapointResource: AxiosAssetPredictedDatapointResourceClient;
1189
+ protected _userResource: AxiosUserResourceClient;
1191
1190
  protected _mapResource: AxiosMapResourceClient;
1192
- protected _gatewayClientResource: AxiosGatewayClientResourceClient;
1191
+ protected _assetDatapointResource: AxiosAssetDatapointResourceClient;
1192
+ protected _agentResource: AxiosAgentResourceClient;
1193
+ protected _alarmResource: AxiosAlarmResourceClient;
1193
1194
  protected _statusResource: AxiosStatusResourceClient;
1194
- protected _userResource: AxiosUserResourceClient;
1195
1195
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1196
- get AssetPredictedDatapointResource(): AxiosAssetPredictedDatapointResourceClient;
1197
- get AssetResource(): AxiosAssetResourceClient;
1196
+ get AssetModelResource(): AxiosAssetModelResourceClient;
1197
+ get AppResource(): AxiosAppResourceClient;
1198
+ get RealmResource(): AxiosRealmResourceClient;
1199
+ get FlowResource(): AxiosFlowResourceClient;
1198
1200
  get ProvisioningResource(): AxiosProvisioningResourceClient;
1201
+ get GatewayClientResource(): AxiosGatewayClientResourceClient;
1202
+ get GatewayServiceResource(): AxiosGatewayServiceResourceClient;
1203
+ get ConsoleResource(): AxiosConsoleResourceClient;
1199
1204
  get ConfigurationResource(): AxiosConfigurationResourceClient;
1200
- get AssetDatapointResource(): AxiosAssetDatapointResourceClient;
1205
+ get ExternalServiceResource(): AxiosExternalServiceResourceClient;
1206
+ get SyslogResource(): AxiosSyslogResourceClient;
1201
1207
  get DashboardResource(): AxiosDashboardResourceClient;
1202
- get FlowResource(): AxiosFlowResourceClient;
1203
- get RulesResource(): AxiosRulesResourceClient;
1208
+ get AssetResource(): AxiosAssetResourceClient;
1204
1209
  get NotificationResource(): AxiosNotificationResourceClient;
1205
- get AlarmResource(): AxiosAlarmResourceClient;
1206
- get RealmResource(): AxiosRealmResourceClient;
1207
- get AppResource(): AxiosAppResourceClient;
1208
- get ConsoleResource(): AxiosConsoleResourceClient;
1209
- get AssetModelResource(): AxiosAssetModelResourceClient;
1210
- get GatewayServiceResource(): AxiosGatewayServiceResourceClient;
1211
- get SyslogResource(): AxiosSyslogResourceClient;
1212
- get ExternalServiceResource(): AxiosExternalServiceResourceClient;
1213
- get AgentResource(): AxiosAgentResourceClient;
1210
+ get RulesResource(): AxiosRulesResourceClient;
1211
+ get AssetPredictedDatapointResource(): AxiosAssetPredictedDatapointResourceClient;
1212
+ get UserResource(): AxiosUserResourceClient;
1214
1213
  get MapResource(): AxiosMapResourceClient;
1215
- get GatewayClientResource(): AxiosGatewayClientResourceClient;
1214
+ get AssetDatapointResource(): AxiosAssetDatapointResourceClient;
1215
+ get AgentResource(): AxiosAgentResourceClient;
1216
+ get AlarmResource(): AxiosAlarmResourceClient;
1216
1217
  get StatusResource(): AxiosStatusResourceClient;
1217
- get UserResource(): AxiosUserResourceClient;
1218
1218
  }
1219
1219
  import * as Axios from "axios";
1220
1220
  declare module "axios" {
@@ -1222,70 +1222,70 @@ declare module "axios" {
1222
1222
  data: R;
1223
1223
  }
1224
1224
  }
1225
- export declare class AxiosAssetPredictedDatapointResourceClient extends AssetPredictedDatapointResourceClient<Axios.AxiosRequestConfig> {
1225
+ export declare class AxiosAssetModelResourceClient extends AssetModelResourceClient<Axios.AxiosRequestConfig> {
1226
1226
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1227
1227
  }
1228
- export declare class AxiosAssetResourceClient extends AssetResourceClient<Axios.AxiosRequestConfig> {
1228
+ export declare class AxiosAppResourceClient extends AppResourceClient<Axios.AxiosRequestConfig> {
1229
1229
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1230
1230
  }
1231
- export declare class AxiosProvisioningResourceClient extends ProvisioningResourceClient<Axios.AxiosRequestConfig> {
1231
+ export declare class AxiosRealmResourceClient extends RealmResourceClient<Axios.AxiosRequestConfig> {
1232
1232
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1233
1233
  }
1234
- export declare class AxiosConfigurationResourceClient extends ConfigurationResourceClient<Axios.AxiosRequestConfig> {
1234
+ export declare class AxiosFlowResourceClient extends FlowResourceClient<Axios.AxiosRequestConfig> {
1235
1235
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1236
1236
  }
1237
- export declare class AxiosAssetDatapointResourceClient extends AssetDatapointResourceClient<Axios.AxiosRequestConfig> {
1237
+ export declare class AxiosProvisioningResourceClient extends ProvisioningResourceClient<Axios.AxiosRequestConfig> {
1238
1238
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1239
1239
  }
1240
- export declare class AxiosDashboardResourceClient extends DashboardResourceClient<Axios.AxiosRequestConfig> {
1240
+ export declare class AxiosGatewayClientResourceClient extends GatewayClientResourceClient<Axios.AxiosRequestConfig> {
1241
1241
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1242
1242
  }
1243
- export declare class AxiosFlowResourceClient extends FlowResourceClient<Axios.AxiosRequestConfig> {
1243
+ export declare class AxiosGatewayServiceResourceClient extends GatewayServiceResourceClient<Axios.AxiosRequestConfig> {
1244
1244
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1245
1245
  }
1246
- export declare class AxiosRulesResourceClient extends RulesResourceClient<Axios.AxiosRequestConfig> {
1246
+ export declare class AxiosConsoleResourceClient extends ConsoleResourceClient<Axios.AxiosRequestConfig> {
1247
1247
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1248
1248
  }
1249
- export declare class AxiosNotificationResourceClient extends NotificationResourceClient<Axios.AxiosRequestConfig> {
1249
+ export declare class AxiosConfigurationResourceClient extends ConfigurationResourceClient<Axios.AxiosRequestConfig> {
1250
1250
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1251
1251
  }
1252
- export declare class AxiosAlarmResourceClient extends AlarmResourceClient<Axios.AxiosRequestConfig> {
1252
+ export declare class AxiosExternalServiceResourceClient extends ExternalServiceResourceClient<Axios.AxiosRequestConfig> {
1253
1253
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1254
1254
  }
1255
- export declare class AxiosRealmResourceClient extends RealmResourceClient<Axios.AxiosRequestConfig> {
1255
+ export declare class AxiosSyslogResourceClient extends SyslogResourceClient<Axios.AxiosRequestConfig> {
1256
1256
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1257
1257
  }
1258
- export declare class AxiosAppResourceClient extends AppResourceClient<Axios.AxiosRequestConfig> {
1258
+ export declare class AxiosDashboardResourceClient extends DashboardResourceClient<Axios.AxiosRequestConfig> {
1259
1259
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1260
1260
  }
1261
- export declare class AxiosConsoleResourceClient extends ConsoleResourceClient<Axios.AxiosRequestConfig> {
1261
+ export declare class AxiosAssetResourceClient extends AssetResourceClient<Axios.AxiosRequestConfig> {
1262
1262
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1263
1263
  }
1264
- export declare class AxiosAssetModelResourceClient extends AssetModelResourceClient<Axios.AxiosRequestConfig> {
1264
+ export declare class AxiosNotificationResourceClient extends NotificationResourceClient<Axios.AxiosRequestConfig> {
1265
1265
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1266
1266
  }
1267
- export declare class AxiosGatewayServiceResourceClient extends GatewayServiceResourceClient<Axios.AxiosRequestConfig> {
1267
+ export declare class AxiosRulesResourceClient extends RulesResourceClient<Axios.AxiosRequestConfig> {
1268
1268
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1269
1269
  }
1270
- export declare class AxiosSyslogResourceClient extends SyslogResourceClient<Axios.AxiosRequestConfig> {
1270
+ export declare class AxiosAssetPredictedDatapointResourceClient extends AssetPredictedDatapointResourceClient<Axios.AxiosRequestConfig> {
1271
1271
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1272
1272
  }
1273
- export declare class AxiosExternalServiceResourceClient extends ExternalServiceResourceClient<Axios.AxiosRequestConfig> {
1273
+ export declare class AxiosUserResourceClient extends UserResourceClient<Axios.AxiosRequestConfig> {
1274
1274
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1275
1275
  }
1276
- export declare class AxiosAgentResourceClient extends AgentResourceClient<Axios.AxiosRequestConfig> {
1276
+ export declare class AxiosMapResourceClient extends MapResourceClient<Axios.AxiosRequestConfig> {
1277
1277
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1278
1278
  }
1279
- export declare class AxiosMapResourceClient extends MapResourceClient<Axios.AxiosRequestConfig> {
1279
+ export declare class AxiosAssetDatapointResourceClient extends AssetDatapointResourceClient<Axios.AxiosRequestConfig> {
1280
1280
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1281
1281
  }
1282
- export declare class AxiosGatewayClientResourceClient extends GatewayClientResourceClient<Axios.AxiosRequestConfig> {
1282
+ export declare class AxiosAgentResourceClient extends AgentResourceClient<Axios.AxiosRequestConfig> {
1283
1283
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1284
1284
  }
1285
- export declare class AxiosStatusResourceClient extends StatusResourceClient<Axios.AxiosRequestConfig> {
1285
+ export declare class AxiosAlarmResourceClient extends AlarmResourceClient<Axios.AxiosRequestConfig> {
1286
1286
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1287
1287
  }
1288
- export declare class AxiosUserResourceClient extends UserResourceClient<Axios.AxiosRequestConfig> {
1288
+ export declare class AxiosStatusResourceClient extends StatusResourceClient<Axios.AxiosRequestConfig> {
1289
1289
  constructor(baseURL: string, axiosInstance?: Axios.AxiosInstance);
1290
1290
  }
1291
1291
  //# sourceMappingURL=restclient.d.ts.map