@balena/open-balena-api 28.0.2-build-v6-number-image-image-size--8c6afedb680c4dfdb95fdcc1197de6764e0a10a4-1 → 28.0.2-build-improve-typings-state-get-v3-f4ac6161afce66279d5290f8fc10f98ac58c0c92-1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,6 +1,16 @@
1
1
  import type { RequestHandler } from 'express';
2
+ import type { OptionsToResponse } from 'pinejs-client-core';
3
+ import type { Application } from '../../../balena-model.js';
4
+ import type { ExpandedApplicationWithService } from './fleet-state-get-v3.js';
2
5
  type LocalStateApp = StateV3[string]['apps'][string];
3
6
  type ServiceComposition = AnyObject;
7
+ type ExpandedDevice = Awaited<ReturnType<typeof getDevice>>;
8
+ type ExpandedApplication = OptionsToResponse<Application['Read'], {
9
+ $select: typeof appSelect;
10
+ $expand: typeof appExpand;
11
+ }, undefined>[number];
12
+ type TargetReleaseField = 'should_be_running__release' | 'should_be_managed_by__release' | 'should_be_operated_by__release';
13
+ export type ExpandedRelease = ExpandedDevice[TargetReleaseField][number];
4
14
  export type StateV3 = {
5
15
  [uuid: string]: {
6
16
  name: string;
@@ -55,7 +65,7 @@ export type StateV3 = {
55
65
  };
56
66
  };
57
67
  };
58
- export declare function buildAppFromRelease(device: AnyObject | undefined, application: AnyObject, release: AnyObject, config: Dictionary<string>, defaultLabels?: Dictionary<string>): NonNullable<LocalStateApp['releases']>;
68
+ export declare function buildAppFromRelease(device: ExpandedDevice | undefined, application: ExpandedApplication | ExpandedApplicationWithService, release: ExpandedRelease, config: Dictionary<string>, defaultLabels?: Dictionary<string>): NonNullable<LocalStateApp['releases']>;
59
69
  export declare const releaseExpand: {
60
70
  readonly $select: readonly ["id", "commit", "composition"];
61
71
  readonly $expand: {
@@ -75,5 +85,761 @@ export declare const releaseExpand: {
75
85
  };
76
86
  };
77
87
  };
88
+ declare const appSelect: readonly ["id", "uuid", "app_name", "is_host", "is_of__class"];
89
+ declare const appExpand: {
90
+ readonly application_environment_variable: {
91
+ readonly $select: readonly ["name", "value"];
92
+ };
93
+ };
78
94
  export declare const stateV3: RequestHandler;
95
+ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.js").PermissionReq, uuid: string) => Promise<import("@balena/abstract-sql-to-typescript").PickDeferred<{
96
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
97
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
98
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
99
+ actor: {
100
+ __id: import("../../../balena-model.js").Actor["Read"]["id"];
101
+ } | [import("../../../balena-model.js").Actor["Read"]];
102
+ api_heartbeat_state: "online" | "offline" | "timeout" | "unknown";
103
+ changed_api_heartbeat_state_on__date: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
104
+ uuid: import("@balena/sbvr-types").Types["Text"]["Read"];
105
+ local_id: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
106
+ device_name: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
107
+ note: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
108
+ is_of__device_type: {
109
+ __id: import("../../../balena-model.js").DeviceType["Read"]["id"];
110
+ } | [import("../../../balena-model.js").DeviceType["Read"]];
111
+ belongs_to__application: {
112
+ __id: Application["Read"]["id"];
113
+ } | [Application["Read"]] | [] | null;
114
+ is_online: import("@balena/sbvr-types").Types["Boolean"]["Read"];
115
+ last_connectivity_event: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
116
+ is_connected_to_vpn: import("@balena/sbvr-types").Types["Boolean"]["Read"];
117
+ last_vpn_event: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
118
+ is_locked_until__date: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
119
+ public_address: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
120
+ ip_address: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
121
+ mac_address: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
122
+ memory_usage: import("@balena/sbvr-types").Types["Integer"]["Read"] | null;
123
+ memory_total: import("@balena/sbvr-types").Types["Integer"]["Read"] | null;
124
+ storage_block_device: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
125
+ storage_usage: import("@balena/sbvr-types").Types["Integer"]["Read"] | null;
126
+ storage_total: import("@balena/sbvr-types").Types["Integer"]["Read"] | null;
127
+ cpu_usage: import("@balena/sbvr-types").Types["Integer"]["Read"] | null;
128
+ cpu_temp: import("@balena/sbvr-types").Types["Integer"]["Read"] | null;
129
+ is_undervolted: import("@balena/sbvr-types").Types["Boolean"]["Read"];
130
+ cpu_id: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
131
+ is_running__release: {
132
+ __id: import("../../../balena-model.js").Release["Read"]["id"];
133
+ } | [import("../../../balena-model.js").Release["Read"]] | [] | null;
134
+ download_progress: import("@balena/sbvr-types").Types["Integer"]["Read"] | null;
135
+ status: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
136
+ os_version: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
137
+ os_variant: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
138
+ supervisor_version: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
139
+ provisioning_progress: import("@balena/sbvr-types").Types["Integer"]["Read"] | null;
140
+ provisioning_state: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
141
+ api_port: import("@balena/sbvr-types").Types["Integer"]["Read"] | null;
142
+ api_secret: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
143
+ is_managed_by__service_instance: {
144
+ __id: import("../../../balena-model.js").ServiceInstance["Read"]["id"];
145
+ } | [import("../../../balena-model.js").ServiceInstance["Read"]] | [] | null;
146
+ is_pinned_on__release: {
147
+ __id: import("../../../balena-model.js").Release["Read"]["id"];
148
+ } | [import("../../../balena-model.js").Release["Read"]] | [] | null;
149
+ should_be_running__release: {
150
+ __id: import("../../../balena-model.js").Release["Read"]["id"];
151
+ } | [import("../../../balena-model.js").Release["Read"]] | [] | null;
152
+ should_be_operated_by__release: {
153
+ __id: import("../../../balena-model.js").Release["Read"]["id"];
154
+ } | [import("../../../balena-model.js").Release["Read"]] | [] | null;
155
+ should_be_managed_by__release: {
156
+ __id: import("../../../balena-model.js").Release["Read"]["id"];
157
+ } | [import("../../../balena-model.js").Release["Read"]] | [] | null;
158
+ update_status: "rejected" | "downloading" | "downloaded" | "applying changes" | "aborted" | "done" | null;
159
+ last_update_status_event: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
160
+ is_web_accessible: import("@balena/sbvr-types").Types["Boolean"]["Read"] | null;
161
+ is_frozen: import("@balena/sbvr-types").Types["Boolean"]["Read"] | null;
162
+ overall_status: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
163
+ overall_progress: import("@balena/sbvr-types").Types["Integer"]["Read"] | null;
164
+ device__has__env_var_name?: Array<import("../../../balena-model.js").DeviceEnvironmentVariable["Read"]>;
165
+ device_environment_variable?: Array<import("../../../balena-model.js").DeviceEnvironmentVariable["Read"]>;
166
+ device__has__config_var_name?: Array<import("../../../balena-model.js").DeviceConfigVariable["Read"]>;
167
+ device_config_variable?: Array<import("../../../balena-model.js").DeviceConfigVariable["Read"]>;
168
+ device__has__tag_key?: Array<import("../../../balena-model.js").DeviceTag["Read"]>;
169
+ device_tag?: Array<import("../../../balena-model.js").DeviceTag["Read"]>;
170
+ device__installs__image?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
171
+ image_install?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
172
+ device__installs__application__has__service_name?: Array<import("../../../balena-model.js").ServiceInstall["Read"]>;
173
+ device__installs__service?: Array<import("../../../balena-model.js").ServiceInstall["Read"]>;
174
+ service_install?: Array<import("../../../balena-model.js").ServiceInstall["Read"]>;
175
+ installs__image?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
176
+ installs__application__has__service_name?: Array<import("../../../balena-model.js").ServiceInstall["Read"]>;
177
+ installs__service?: Array<import("../../../balena-model.js").ServiceInstall["Read"]>;
178
+ }, "id" | "status" | "created_at" | "modified_at" | "api_heartbeat_state" | "changed_api_heartbeat_state_on__date" | "uuid" | "local_id" | "device_name" | "note" | "is_online" | "last_connectivity_event" | "is_connected_to_vpn" | "last_vpn_event" | "is_locked_until__date" | "public_address" | "ip_address" | "mac_address" | "memory_usage" | "memory_total" | "storage_block_device" | "storage_usage" | "storage_total" | "cpu_usage" | "cpu_temp" | "is_undervolted" | "cpu_id" | "download_progress" | "os_version" | "os_variant" | "supervisor_version" | "provisioning_progress" | "provisioning_state" | "api_port" | "api_secret" | "update_status" | "last_update_status_event" | "is_web_accessible" | "is_frozen" | "overall_status" | "overall_progress"> & {
179
+ readonly device_config_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
180
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
181
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
182
+ device: {
183
+ __id: import("../../../balena-model.js").Device["Read"]["id"];
184
+ } | [import("../../../balena-model.js").Device["Read"]];
185
+ name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
186
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
187
+ value: import("@balena/sbvr-types").Types["Text"]["Read"];
188
+ }, "name" | "value">[];
189
+ readonly device_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
190
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
191
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
192
+ device: {
193
+ __id: import("../../../balena-model.js").Device["Read"]["id"];
194
+ } | [import("../../../balena-model.js").Device["Read"]];
195
+ name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
196
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
197
+ value: import("@balena/sbvr-types").Types["Text"]["Read"];
198
+ }, "name" | "value">[];
199
+ readonly should_be_running__release: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
200
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
201
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
202
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
203
+ belongs_to__application: {
204
+ __id: Application["Read"]["id"];
205
+ } | [Application["Read"]];
206
+ commit: import("@balena/sbvr-types").Types["Short Text"]["Read"];
207
+ composition: import("@balena/sbvr-types").Types["JSON"]["Read"];
208
+ status: import("@balena/sbvr-types").Types["Short Text"]["Read"];
209
+ source: import("@balena/sbvr-types").Types["Short Text"]["Read"];
210
+ build_log: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
211
+ is_invalidated: import("@balena/sbvr-types").Types["Boolean"]["Read"];
212
+ start_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"];
213
+ end_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
214
+ update_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"];
215
+ release_version: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
216
+ contract: import("@balena/sbvr-types").Types["JSON"]["Read"] | null;
217
+ is_passing_tests: import("@balena/sbvr-types").Types["Boolean"]["Read"];
218
+ is_finalized_at__date: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
219
+ phase: "next" | "current" | "sunset" | "end-of-life" | null;
220
+ semver_major: import("@balena/sbvr-types").Types["Integer"]["Read"];
221
+ semver_minor: import("@balena/sbvr-types").Types["Integer"]["Read"];
222
+ semver_patch: import("@balena/sbvr-types").Types["Integer"]["Read"];
223
+ semver_prerelease: import("@balena/sbvr-types").Types["Short Text"]["Read"];
224
+ semver_build: import("@balena/sbvr-types").Types["Short Text"]["Read"];
225
+ variant: import("@balena/sbvr-types").Types["Short Text"]["Read"];
226
+ revision: import("@balena/sbvr-types").Types["Integer"]["Read"] | null;
227
+ known_issue_list: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
228
+ note: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
229
+ invalidation_reason: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
230
+ is_final: import("@balena/sbvr-types").Types["Boolean"]["Read"];
231
+ semver: import("@balena/sbvr-types").Types["Short Text"]["Read"];
232
+ raw_version: import("@balena/sbvr-types").Types["Short Text"]["Read"];
233
+ version: import("@balena/sbvr-types").Types["JSON"]["Read"];
234
+ release__has__tag_key?: Array<import("../../../balena-model.js").ReleaseTag["Read"]>;
235
+ release_tag?: Array<import("../../../balena-model.js").ReleaseTag["Read"]>;
236
+ release__has__asset_key?: Array<import("../../../balena-model.js").ReleaseAsset["Read"]>;
237
+ release_asset?: Array<import("../../../balena-model.js").ReleaseAsset["Read"]>;
238
+ image__is_part_of__release?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
239
+ release_image?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
240
+ contains__image?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
241
+ should_be_running_on__application?: Array<Application["Read"]>;
242
+ should_be_running_on__device?: Array<import("../../../balena-model.js").Device["Read"]>;
243
+ is_running_on__device?: Array<import("../../../balena-model.js").Device["Read"]>;
244
+ is_pinned_to__device?: Array<import("../../../balena-model.js").Device["Read"]>;
245
+ should_operate__device?: Array<import("../../../balena-model.js").Device["Read"]>;
246
+ should_manage__device?: Array<import("../../../balena-model.js").Device["Read"]>;
247
+ provides__device__installs__image?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
248
+ provides__image_install?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
249
+ }, "id" | "commit" | "composition"> & {
250
+ readonly contains__image: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
251
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
252
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
253
+ image: {
254
+ __id: import("../../../balena-model.js").Image["Read"]["id"];
255
+ } | [import("../../../balena-model.js").Image["Read"]];
256
+ is_part_of__release: {
257
+ __id: import("../../../balena-model.js").Release["Read"]["id"];
258
+ } | [import("../../../balena-model.js").Release["Read"]];
259
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
260
+ image__is_part_of__release__has__label_name?: Array<import("../../../balena-model.js").ImageLabel["Read"]>;
261
+ release_image__has__label_name?: Array<import("../../../balena-model.js").ImageLabel["Read"]>;
262
+ image_label?: Array<import("../../../balena-model.js").ImageLabel["Read"]>;
263
+ image__is_part_of__release__has__name?: Array<import("../../../balena-model.js").ImageEnvironmentVariable["Read"]>;
264
+ release_image__has__name?: Array<import("../../../balena-model.js").ImageEnvironmentVariable["Read"]>;
265
+ image_environment_variable?: Array<import("../../../balena-model.js").ImageEnvironmentVariable["Read"]>;
266
+ release: {
267
+ __id: import("../../../balena-model.js").Release["Read"]["id"];
268
+ } | [import("../../../balena-model.js").Release["Read"]];
269
+ contains__image: {
270
+ __id: import("../../../balena-model.js").Image["Read"]["id"];
271
+ } | [import("../../../balena-model.js").Image["Read"]];
272
+ }, "id"> & {
273
+ readonly image: import("@balena/abstract-sql-to-typescript").PickDeferred<{
274
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
275
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
276
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
277
+ start_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"];
278
+ end_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
279
+ dockerfile: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
280
+ is_a_build_of__service: {
281
+ __id: import("../../../balena-model.js").Service["Read"]["id"];
282
+ } | [import("../../../balena-model.js").Service["Read"]];
283
+ image_size: import("@balena/sbvr-types").Types["Big Integer"]["Read"] | null;
284
+ is_stored_at__image_location: import("@balena/sbvr-types").Types["Short Text"]["Read"];
285
+ project_type: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
286
+ error_message: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
287
+ build_log: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
288
+ push_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
289
+ status: import("@balena/sbvr-types").Types["Short Text"]["Read"];
290
+ content_hash: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
291
+ contract: import("@balena/sbvr-types").Types["JSON"]["Read"] | null;
292
+ device__installs__image?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
293
+ image_install?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
294
+ is_installed_on__device?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
295
+ is_part_of__release?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
296
+ image__is_part_of__release?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
297
+ release_image?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
298
+ is_a_build_of__application__has__service_name: {
299
+ __id: import("../../../balena-model.js").Service["Read"]["id"];
300
+ } | [import("../../../balena-model.js").Service["Read"]];
301
+ }, "id" | "contract" | "is_a_build_of__service" | "is_stored_at__image_location" | "content_hash">[];
302
+ readonly image_label: import("@balena/abstract-sql-to-typescript").PickDeferred<{
303
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
304
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
305
+ release_image: {
306
+ __id: import("../../../balena-model.js").ImageIsPartOfRelease["Read"]["id"];
307
+ } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
308
+ label_name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
309
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
310
+ value: import("@balena/sbvr-types").Types["Text"]["Read"];
311
+ image__is_part_of__release: {
312
+ __id: import("../../../balena-model.js").ImageIsPartOfRelease["Read"]["id"];
313
+ } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
314
+ }, "value" | "label_name">[];
315
+ readonly image_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
316
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
317
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
318
+ release_image: {
319
+ __id: import("../../../balena-model.js").ImageIsPartOfRelease["Read"]["id"];
320
+ } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
321
+ name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
322
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
323
+ value: import("@balena/sbvr-types").Types["Text"]["Read"];
324
+ image__is_part_of__release: {
325
+ __id: import("../../../balena-model.js").ImageIsPartOfRelease["Read"]["id"];
326
+ } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
327
+ }, "name" | "value">[];
328
+ })[];
329
+ })[];
330
+ readonly service_install: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
331
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
332
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
333
+ device: {
334
+ __id: import("../../../balena-model.js").Device["Read"]["id"];
335
+ } | [import("../../../balena-model.js").Device["Read"]];
336
+ installs__service: {
337
+ __id: import("../../../balena-model.js").Service["Read"]["id"];
338
+ } | [import("../../../balena-model.js").Service["Read"]];
339
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
340
+ device__installs__application__has__service_name__has__name?: Array<import("../../../balena-model.js").DeviceServiceEnvironmentVariable["Read"]>;
341
+ device__installs__service__has__name?: Array<import("../../../balena-model.js").DeviceServiceEnvironmentVariable["Read"]>;
342
+ device__installs__service_environment_variable?: Array<import("../../../balena-model.js").DeviceServiceEnvironmentVariable["Read"]>;
343
+ service_install__has__name?: Array<import("../../../balena-model.js").DeviceServiceEnvironmentVariable["Read"]>;
344
+ device_service_environment_variable?: Array<import("../../../balena-model.js").DeviceServiceEnvironmentVariable["Read"]>;
345
+ application__has__service_name: {
346
+ __id: import("../../../balena-model.js").Service["Read"]["id"];
347
+ } | [import("../../../balena-model.js").Service["Read"]];
348
+ service: {
349
+ __id: import("../../../balena-model.js").Service["Read"]["id"];
350
+ } | [import("../../../balena-model.js").Service["Read"]];
351
+ installs__application__has__service_name: {
352
+ __id: import("../../../balena-model.js").Service["Read"]["id"];
353
+ } | [import("../../../balena-model.js").Service["Read"]];
354
+ is_installed_on__device: {
355
+ __id: import("../../../balena-model.js").Device["Read"]["id"];
356
+ } | [import("../../../balena-model.js").Device["Read"]];
357
+ }, "id"> & {
358
+ readonly service: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
359
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
360
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
361
+ application: {
362
+ __id: Application["Read"]["id"];
363
+ } | [Application["Read"]];
364
+ service_name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
365
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
366
+ application__has__service_name__has__label_name?: Array<import("../../../balena-model.js").ServiceLabel["Read"]>;
367
+ service__has__label_name?: Array<import("../../../balena-model.js").ServiceLabel["Read"]>;
368
+ service_label?: Array<import("../../../balena-model.js").ServiceLabel["Read"]>;
369
+ application__has__service_name__has__name?: Array<import("../../../balena-model.js").ServiceEnvironmentVariable["Read"]>;
370
+ service__has__name?: Array<import("../../../balena-model.js").ServiceEnvironmentVariable["Read"]>;
371
+ service_environment_variable?: Array<import("../../../balena-model.js").ServiceEnvironmentVariable["Read"]>;
372
+ device__installs__application__has__service_name?: Array<import("../../../balena-model.js").ServiceInstall["Read"]>;
373
+ device__installs__service?: Array<import("../../../balena-model.js").ServiceInstall["Read"]>;
374
+ service_install?: Array<import("../../../balena-model.js").ServiceInstall["Read"]>;
375
+ is_installed_on__device?: Array<import("../../../balena-model.js").ServiceInstall["Read"]>;
376
+ is_built_by__image?: Array<import("../../../balena-model.js").Image["Read"]>;
377
+ }, "id" | "service_name"> & {
378
+ readonly service_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
379
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
380
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
381
+ service: {
382
+ __id: import("../../../balena-model.js").Service["Read"]["id"];
383
+ } | [import("../../../balena-model.js").Service["Read"]];
384
+ name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
385
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
386
+ value: import("@balena/sbvr-types").Types["Text"]["Read"];
387
+ application__has__service_name: {
388
+ __id: import("../../../balena-model.js").Service["Read"]["id"];
389
+ } | [import("../../../balena-model.js").Service["Read"]];
390
+ }, "name" | "value">[];
391
+ readonly service_label: import("@balena/abstract-sql-to-typescript").PickDeferred<{
392
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
393
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
394
+ service: {
395
+ __id: import("../../../balena-model.js").Service["Read"]["id"];
396
+ } | [import("../../../balena-model.js").Service["Read"]];
397
+ label_name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
398
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
399
+ value: import("@balena/sbvr-types").Types["Text"]["Read"];
400
+ application__has__service_name: {
401
+ __id: import("../../../balena-model.js").Service["Read"]["id"];
402
+ } | [import("../../../balena-model.js").Service["Read"]];
403
+ }, "value" | "label_name">[];
404
+ })[];
405
+ readonly device_service_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
406
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
407
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
408
+ service_install: {
409
+ __id: import("../../../balena-model.js").ServiceInstall["Read"]["id"];
410
+ } | [import("../../../balena-model.js").ServiceInstall["Read"]];
411
+ name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
412
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
413
+ value: import("@balena/sbvr-types").Types["Text"]["Read"];
414
+ device__installs__application__has__service_name: {
415
+ __id: import("../../../balena-model.js").ServiceInstall["Read"]["id"];
416
+ } | [import("../../../balena-model.js").ServiceInstall["Read"]];
417
+ device__installs__service: {
418
+ __id: import("../../../balena-model.js").ServiceInstall["Read"]["id"];
419
+ } | [import("../../../balena-model.js").ServiceInstall["Read"]];
420
+ }, "name" | "value">[];
421
+ })[];
422
+ readonly belongs_to__application: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
423
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
424
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
425
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
426
+ actor: {
427
+ __id: import("../../../balena-model.js").Actor["Read"]["id"];
428
+ } | [import("../../../balena-model.js").Actor["Read"]];
429
+ should_track_latest_release: import("@balena/sbvr-types").Types["Boolean"]["Read"];
430
+ is_of__class: "fleet" | "block" | "app";
431
+ organization: {
432
+ __id: import("../../../balena-model.js").Organization["Read"]["id"];
433
+ } | [import("../../../balena-model.js").Organization["Read"]];
434
+ app_name: import("@balena/sbvr-types").Types["Text"]["Read"];
435
+ slug: import("@balena/sbvr-types").Types["Short Text"]["Read"];
436
+ is_for__device_type: {
437
+ __id: import("../../../balena-model.js").DeviceType["Read"]["id"];
438
+ } | [import("../../../balena-model.js").DeviceType["Read"]];
439
+ should_be_running__release: {
440
+ __id: import("../../../balena-model.js").Release["Read"]["id"];
441
+ } | [import("../../../balena-model.js").Release["Read"]] | [] | null;
442
+ application_type: {
443
+ __id: import("../../../balena-model.js").ApplicationType["Read"]["id"];
444
+ } | [import("../../../balena-model.js").ApplicationType["Read"]];
445
+ is_host: import("@balena/sbvr-types").Types["Boolean"]["Read"];
446
+ is_archived: import("@balena/sbvr-types").Types["Boolean"]["Read"];
447
+ uuid: import("@balena/sbvr-types").Types["Text"]["Read"];
448
+ is_public: import("@balena/sbvr-types").Types["Boolean"]["Read"];
449
+ application__has__env_var_name?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
450
+ application_environment_variable?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
451
+ application__has__config_var_name?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
452
+ application_config_variable?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
453
+ application__has__service_name?: Array<import("../../../balena-model.js").Service["Read"]>;
454
+ service?: Array<import("../../../balena-model.js").Service["Read"]>;
455
+ application__has__tag_key?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
456
+ application_tag?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
457
+ owns__device?: Array<import("../../../balena-model.js").Device["Read"]>;
458
+ owns__release?: Array<import("../../../balena-model.js").Release["Read"]>;
459
+ is_directly_accessible_by__user?: Array<import("../../../balena-model.js").UserHasDirectAccessToApplication["Read"]>;
460
+ }, "id" | "is_of__class" | "app_name" | "uuid" | "is_host"> & {
461
+ readonly application_config_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
462
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
463
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
464
+ application: {
465
+ __id: Application["Read"]["id"];
466
+ } | [Application["Read"]];
467
+ name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
468
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
469
+ value: import("@balena/sbvr-types").Types["Text"]["Read"];
470
+ }, "name" | "value">[];
471
+ readonly application_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
472
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
473
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
474
+ application: {
475
+ __id: Application["Read"]["id"];
476
+ } | [Application["Read"]];
477
+ name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
478
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
479
+ value: import("@balena/sbvr-types").Types["Text"]["Read"];
480
+ }, "name" | "value">[];
481
+ })[];
482
+ readonly should_be_managed_by__release: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
483
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
484
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
485
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
486
+ belongs_to__application: {
487
+ __id: Application["Read"]["id"];
488
+ } | [Application["Read"]];
489
+ commit: import("@balena/sbvr-types").Types["Short Text"]["Read"];
490
+ composition: import("@balena/sbvr-types").Types["JSON"]["Read"];
491
+ status: import("@balena/sbvr-types").Types["Short Text"]["Read"];
492
+ source: import("@balena/sbvr-types").Types["Short Text"]["Read"];
493
+ build_log: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
494
+ is_invalidated: import("@balena/sbvr-types").Types["Boolean"]["Read"];
495
+ start_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"];
496
+ end_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
497
+ update_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"];
498
+ release_version: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
499
+ contract: import("@balena/sbvr-types").Types["JSON"]["Read"] | null;
500
+ is_passing_tests: import("@balena/sbvr-types").Types["Boolean"]["Read"];
501
+ is_finalized_at__date: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
502
+ phase: "next" | "current" | "sunset" | "end-of-life" | null;
503
+ semver_major: import("@balena/sbvr-types").Types["Integer"]["Read"];
504
+ semver_minor: import("@balena/sbvr-types").Types["Integer"]["Read"];
505
+ semver_patch: import("@balena/sbvr-types").Types["Integer"]["Read"];
506
+ semver_prerelease: import("@balena/sbvr-types").Types["Short Text"]["Read"];
507
+ semver_build: import("@balena/sbvr-types").Types["Short Text"]["Read"];
508
+ variant: import("@balena/sbvr-types").Types["Short Text"]["Read"];
509
+ revision: import("@balena/sbvr-types").Types["Integer"]["Read"] | null;
510
+ known_issue_list: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
511
+ note: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
512
+ invalidation_reason: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
513
+ is_final: import("@balena/sbvr-types").Types["Boolean"]["Read"];
514
+ semver: import("@balena/sbvr-types").Types["Short Text"]["Read"];
515
+ raw_version: import("@balena/sbvr-types").Types["Short Text"]["Read"];
516
+ version: import("@balena/sbvr-types").Types["JSON"]["Read"];
517
+ release__has__tag_key?: Array<import("../../../balena-model.js").ReleaseTag["Read"]>;
518
+ release_tag?: Array<import("../../../balena-model.js").ReleaseTag["Read"]>;
519
+ release__has__asset_key?: Array<import("../../../balena-model.js").ReleaseAsset["Read"]>;
520
+ release_asset?: Array<import("../../../balena-model.js").ReleaseAsset["Read"]>;
521
+ image__is_part_of__release?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
522
+ release_image?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
523
+ contains__image?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
524
+ should_be_running_on__application?: Array<Application["Read"]>;
525
+ should_be_running_on__device?: Array<import("../../../balena-model.js").Device["Read"]>;
526
+ is_running_on__device?: Array<import("../../../balena-model.js").Device["Read"]>;
527
+ is_pinned_to__device?: Array<import("../../../balena-model.js").Device["Read"]>;
528
+ should_operate__device?: Array<import("../../../balena-model.js").Device["Read"]>;
529
+ should_manage__device?: Array<import("../../../balena-model.js").Device["Read"]>;
530
+ provides__device__installs__image?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
531
+ provides__image_install?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
532
+ }, "id" | "commit" | "composition"> & {
533
+ readonly belongs_to__application: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
534
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
535
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
536
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
537
+ actor: {
538
+ __id: import("../../../balena-model.js").Actor["Read"]["id"];
539
+ } | [import("../../../balena-model.js").Actor["Read"]];
540
+ should_track_latest_release: import("@balena/sbvr-types").Types["Boolean"]["Read"];
541
+ is_of__class: "fleet" | "block" | "app";
542
+ organization: {
543
+ __id: import("../../../balena-model.js").Organization["Read"]["id"];
544
+ } | [import("../../../balena-model.js").Organization["Read"]];
545
+ app_name: import("@balena/sbvr-types").Types["Text"]["Read"];
546
+ slug: import("@balena/sbvr-types").Types["Short Text"]["Read"];
547
+ is_for__device_type: {
548
+ __id: import("../../../balena-model.js").DeviceType["Read"]["id"];
549
+ } | [import("../../../balena-model.js").DeviceType["Read"]];
550
+ should_be_running__release: {
551
+ __id: import("../../../balena-model.js").Release["Read"]["id"];
552
+ } | [import("../../../balena-model.js").Release["Read"]] | [] | null;
553
+ application_type: {
554
+ __id: import("../../../balena-model.js").ApplicationType["Read"]["id"];
555
+ } | [import("../../../balena-model.js").ApplicationType["Read"]];
556
+ is_host: import("@balena/sbvr-types").Types["Boolean"]["Read"];
557
+ is_archived: import("@balena/sbvr-types").Types["Boolean"]["Read"];
558
+ uuid: import("@balena/sbvr-types").Types["Text"]["Read"];
559
+ is_public: import("@balena/sbvr-types").Types["Boolean"]["Read"];
560
+ application__has__env_var_name?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
561
+ application_environment_variable?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
562
+ application__has__config_var_name?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
563
+ application_config_variable?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
564
+ application__has__service_name?: Array<import("../../../balena-model.js").Service["Read"]>;
565
+ service?: Array<import("../../../balena-model.js").Service["Read"]>;
566
+ application__has__tag_key?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
567
+ application_tag?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
568
+ owns__device?: Array<import("../../../balena-model.js").Device["Read"]>;
569
+ owns__release?: Array<import("../../../balena-model.js").Release["Read"]>;
570
+ is_directly_accessible_by__user?: Array<import("../../../balena-model.js").UserHasDirectAccessToApplication["Read"]>;
571
+ }, "id" | "is_of__class" | "app_name" | "uuid" | "is_host"> & {
572
+ readonly application_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
573
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
574
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
575
+ application: {
576
+ __id: Application["Read"]["id"];
577
+ } | [Application["Read"]];
578
+ name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
579
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
580
+ value: import("@balena/sbvr-types").Types["Text"]["Read"];
581
+ }, "name" | "value">[];
582
+ })[];
583
+ readonly contains__image: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
584
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
585
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
586
+ image: {
587
+ __id: import("../../../balena-model.js").Image["Read"]["id"];
588
+ } | [import("../../../balena-model.js").Image["Read"]];
589
+ is_part_of__release: {
590
+ __id: import("../../../balena-model.js").Release["Read"]["id"];
591
+ } | [import("../../../balena-model.js").Release["Read"]];
592
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
593
+ image__is_part_of__release__has__label_name?: Array<import("../../../balena-model.js").ImageLabel["Read"]>;
594
+ release_image__has__label_name?: Array<import("../../../balena-model.js").ImageLabel["Read"]>;
595
+ image_label?: Array<import("../../../balena-model.js").ImageLabel["Read"]>;
596
+ image__is_part_of__release__has__name?: Array<import("../../../balena-model.js").ImageEnvironmentVariable["Read"]>;
597
+ release_image__has__name?: Array<import("../../../balena-model.js").ImageEnvironmentVariable["Read"]>;
598
+ image_environment_variable?: Array<import("../../../balena-model.js").ImageEnvironmentVariable["Read"]>;
599
+ release: {
600
+ __id: import("../../../balena-model.js").Release["Read"]["id"];
601
+ } | [import("../../../balena-model.js").Release["Read"]];
602
+ contains__image: {
603
+ __id: import("../../../balena-model.js").Image["Read"]["id"];
604
+ } | [import("../../../balena-model.js").Image["Read"]];
605
+ }, "id"> & {
606
+ readonly image: import("@balena/abstract-sql-to-typescript").PickDeferred<{
607
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
608
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
609
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
610
+ start_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"];
611
+ end_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
612
+ dockerfile: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
613
+ is_a_build_of__service: {
614
+ __id: import("../../../balena-model.js").Service["Read"]["id"];
615
+ } | [import("../../../balena-model.js").Service["Read"]];
616
+ image_size: import("@balena/sbvr-types").Types["Big Integer"]["Read"] | null;
617
+ is_stored_at__image_location: import("@balena/sbvr-types").Types["Short Text"]["Read"];
618
+ project_type: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
619
+ error_message: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
620
+ build_log: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
621
+ push_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
622
+ status: import("@balena/sbvr-types").Types["Short Text"]["Read"];
623
+ content_hash: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
624
+ contract: import("@balena/sbvr-types").Types["JSON"]["Read"] | null;
625
+ device__installs__image?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
626
+ image_install?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
627
+ is_installed_on__device?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
628
+ is_part_of__release?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
629
+ image__is_part_of__release?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
630
+ release_image?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
631
+ is_a_build_of__application__has__service_name: {
632
+ __id: import("../../../balena-model.js").Service["Read"]["id"];
633
+ } | [import("../../../balena-model.js").Service["Read"]];
634
+ }, "id" | "contract" | "is_a_build_of__service" | "is_stored_at__image_location" | "content_hash">[];
635
+ readonly image_label: import("@balena/abstract-sql-to-typescript").PickDeferred<{
636
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
637
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
638
+ release_image: {
639
+ __id: import("../../../balena-model.js").ImageIsPartOfRelease["Read"]["id"];
640
+ } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
641
+ label_name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
642
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
643
+ value: import("@balena/sbvr-types").Types["Text"]["Read"];
644
+ image__is_part_of__release: {
645
+ __id: import("../../../balena-model.js").ImageIsPartOfRelease["Read"]["id"];
646
+ } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
647
+ }, "value" | "label_name">[];
648
+ readonly image_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
649
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
650
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
651
+ release_image: {
652
+ __id: import("../../../balena-model.js").ImageIsPartOfRelease["Read"]["id"];
653
+ } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
654
+ name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
655
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
656
+ value: import("@balena/sbvr-types").Types["Text"]["Read"];
657
+ image__is_part_of__release: {
658
+ __id: import("../../../balena-model.js").ImageIsPartOfRelease["Read"]["id"];
659
+ } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
660
+ }, "name" | "value">[];
661
+ })[];
662
+ })[];
663
+ readonly should_be_operated_by__release: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
664
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
665
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
666
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
667
+ belongs_to__application: {
668
+ __id: Application["Read"]["id"];
669
+ } | [Application["Read"]];
670
+ commit: import("@balena/sbvr-types").Types["Short Text"]["Read"];
671
+ composition: import("@balena/sbvr-types").Types["JSON"]["Read"];
672
+ status: import("@balena/sbvr-types").Types["Short Text"]["Read"];
673
+ source: import("@balena/sbvr-types").Types["Short Text"]["Read"];
674
+ build_log: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
675
+ is_invalidated: import("@balena/sbvr-types").Types["Boolean"]["Read"];
676
+ start_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"];
677
+ end_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
678
+ update_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"];
679
+ release_version: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
680
+ contract: import("@balena/sbvr-types").Types["JSON"]["Read"] | null;
681
+ is_passing_tests: import("@balena/sbvr-types").Types["Boolean"]["Read"];
682
+ is_finalized_at__date: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
683
+ phase: "next" | "current" | "sunset" | "end-of-life" | null;
684
+ semver_major: import("@balena/sbvr-types").Types["Integer"]["Read"];
685
+ semver_minor: import("@balena/sbvr-types").Types["Integer"]["Read"];
686
+ semver_patch: import("@balena/sbvr-types").Types["Integer"]["Read"];
687
+ semver_prerelease: import("@balena/sbvr-types").Types["Short Text"]["Read"];
688
+ semver_build: import("@balena/sbvr-types").Types["Short Text"]["Read"];
689
+ variant: import("@balena/sbvr-types").Types["Short Text"]["Read"];
690
+ revision: import("@balena/sbvr-types").Types["Integer"]["Read"] | null;
691
+ known_issue_list: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
692
+ note: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
693
+ invalidation_reason: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
694
+ is_final: import("@balena/sbvr-types").Types["Boolean"]["Read"];
695
+ semver: import("@balena/sbvr-types").Types["Short Text"]["Read"];
696
+ raw_version: import("@balena/sbvr-types").Types["Short Text"]["Read"];
697
+ version: import("@balena/sbvr-types").Types["JSON"]["Read"];
698
+ release__has__tag_key?: Array<import("../../../balena-model.js").ReleaseTag["Read"]>;
699
+ release_tag?: Array<import("../../../balena-model.js").ReleaseTag["Read"]>;
700
+ release__has__asset_key?: Array<import("../../../balena-model.js").ReleaseAsset["Read"]>;
701
+ release_asset?: Array<import("../../../balena-model.js").ReleaseAsset["Read"]>;
702
+ image__is_part_of__release?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
703
+ release_image?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
704
+ contains__image?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
705
+ should_be_running_on__application?: Array<Application["Read"]>;
706
+ should_be_running_on__device?: Array<import("../../../balena-model.js").Device["Read"]>;
707
+ is_running_on__device?: Array<import("../../../balena-model.js").Device["Read"]>;
708
+ is_pinned_to__device?: Array<import("../../../balena-model.js").Device["Read"]>;
709
+ should_operate__device?: Array<import("../../../balena-model.js").Device["Read"]>;
710
+ should_manage__device?: Array<import("../../../balena-model.js").Device["Read"]>;
711
+ provides__device__installs__image?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
712
+ provides__image_install?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
713
+ }, "id" | "commit" | "composition"> & {
714
+ readonly belongs_to__application: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
715
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
716
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
717
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
718
+ actor: {
719
+ __id: import("../../../balena-model.js").Actor["Read"]["id"];
720
+ } | [import("../../../balena-model.js").Actor["Read"]];
721
+ should_track_latest_release: import("@balena/sbvr-types").Types["Boolean"]["Read"];
722
+ is_of__class: "fleet" | "block" | "app";
723
+ organization: {
724
+ __id: import("../../../balena-model.js").Organization["Read"]["id"];
725
+ } | [import("../../../balena-model.js").Organization["Read"]];
726
+ app_name: import("@balena/sbvr-types").Types["Text"]["Read"];
727
+ slug: import("@balena/sbvr-types").Types["Short Text"]["Read"];
728
+ is_for__device_type: {
729
+ __id: import("../../../balena-model.js").DeviceType["Read"]["id"];
730
+ } | [import("../../../balena-model.js").DeviceType["Read"]];
731
+ should_be_running__release: {
732
+ __id: import("../../../balena-model.js").Release["Read"]["id"];
733
+ } | [import("../../../balena-model.js").Release["Read"]] | [] | null;
734
+ application_type: {
735
+ __id: import("../../../balena-model.js").ApplicationType["Read"]["id"];
736
+ } | [import("../../../balena-model.js").ApplicationType["Read"]];
737
+ is_host: import("@balena/sbvr-types").Types["Boolean"]["Read"];
738
+ is_archived: import("@balena/sbvr-types").Types["Boolean"]["Read"];
739
+ uuid: import("@balena/sbvr-types").Types["Text"]["Read"];
740
+ is_public: import("@balena/sbvr-types").Types["Boolean"]["Read"];
741
+ application__has__env_var_name?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
742
+ application_environment_variable?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
743
+ application__has__config_var_name?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
744
+ application_config_variable?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
745
+ application__has__service_name?: Array<import("../../../balena-model.js").Service["Read"]>;
746
+ service?: Array<import("../../../balena-model.js").Service["Read"]>;
747
+ application__has__tag_key?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
748
+ application_tag?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
749
+ owns__device?: Array<import("../../../balena-model.js").Device["Read"]>;
750
+ owns__release?: Array<import("../../../balena-model.js").Release["Read"]>;
751
+ is_directly_accessible_by__user?: Array<import("../../../balena-model.js").UserHasDirectAccessToApplication["Read"]>;
752
+ }, "id" | "is_of__class" | "app_name" | "uuid" | "is_host"> & {
753
+ readonly application_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
754
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
755
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
756
+ application: {
757
+ __id: Application["Read"]["id"];
758
+ } | [Application["Read"]];
759
+ name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
760
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
761
+ value: import("@balena/sbvr-types").Types["Text"]["Read"];
762
+ }, "name" | "value">[];
763
+ })[];
764
+ readonly contains__image: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
765
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
766
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
767
+ image: {
768
+ __id: import("../../../balena-model.js").Image["Read"]["id"];
769
+ } | [import("../../../balena-model.js").Image["Read"]];
770
+ is_part_of__release: {
771
+ __id: import("../../../balena-model.js").Release["Read"]["id"];
772
+ } | [import("../../../balena-model.js").Release["Read"]];
773
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
774
+ image__is_part_of__release__has__label_name?: Array<import("../../../balena-model.js").ImageLabel["Read"]>;
775
+ release_image__has__label_name?: Array<import("../../../balena-model.js").ImageLabel["Read"]>;
776
+ image_label?: Array<import("../../../balena-model.js").ImageLabel["Read"]>;
777
+ image__is_part_of__release__has__name?: Array<import("../../../balena-model.js").ImageEnvironmentVariable["Read"]>;
778
+ release_image__has__name?: Array<import("../../../balena-model.js").ImageEnvironmentVariable["Read"]>;
779
+ image_environment_variable?: Array<import("../../../balena-model.js").ImageEnvironmentVariable["Read"]>;
780
+ release: {
781
+ __id: import("../../../balena-model.js").Release["Read"]["id"];
782
+ } | [import("../../../balena-model.js").Release["Read"]];
783
+ contains__image: {
784
+ __id: import("../../../balena-model.js").Image["Read"]["id"];
785
+ } | [import("../../../balena-model.js").Image["Read"]];
786
+ }, "id"> & {
787
+ readonly image: import("@balena/abstract-sql-to-typescript").PickDeferred<{
788
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
789
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
790
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
791
+ start_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"];
792
+ end_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
793
+ dockerfile: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
794
+ is_a_build_of__service: {
795
+ __id: import("../../../balena-model.js").Service["Read"]["id"];
796
+ } | [import("../../../balena-model.js").Service["Read"]];
797
+ image_size: import("@balena/sbvr-types").Types["Big Integer"]["Read"] | null;
798
+ is_stored_at__image_location: import("@balena/sbvr-types").Types["Short Text"]["Read"];
799
+ project_type: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
800
+ error_message: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
801
+ build_log: import("@balena/sbvr-types").Types["Text"]["Read"] | null;
802
+ push_timestamp: import("@balena/sbvr-types").Types["Date Time"]["Read"] | null;
803
+ status: import("@balena/sbvr-types").Types["Short Text"]["Read"];
804
+ content_hash: import("@balena/sbvr-types").Types["Short Text"]["Read"] | null;
805
+ contract: import("@balena/sbvr-types").Types["JSON"]["Read"] | null;
806
+ device__installs__image?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
807
+ image_install?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
808
+ is_installed_on__device?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
809
+ is_part_of__release?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
810
+ image__is_part_of__release?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
811
+ release_image?: Array<import("../../../balena-model.js").ImageIsPartOfRelease["Read"]>;
812
+ is_a_build_of__application__has__service_name: {
813
+ __id: import("../../../balena-model.js").Service["Read"]["id"];
814
+ } | [import("../../../balena-model.js").Service["Read"]];
815
+ }, "id" | "contract" | "is_a_build_of__service" | "is_stored_at__image_location" | "content_hash">[];
816
+ readonly image_label: import("@balena/abstract-sql-to-typescript").PickDeferred<{
817
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
818
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
819
+ release_image: {
820
+ __id: import("../../../balena-model.js").ImageIsPartOfRelease["Read"]["id"];
821
+ } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
822
+ label_name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
823
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
824
+ value: import("@balena/sbvr-types").Types["Text"]["Read"];
825
+ image__is_part_of__release: {
826
+ __id: import("../../../balena-model.js").ImageIsPartOfRelease["Read"]["id"];
827
+ } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
828
+ }, "value" | "label_name">[];
829
+ readonly image_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
830
+ created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
831
+ modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
832
+ release_image: {
833
+ __id: import("../../../balena-model.js").ImageIsPartOfRelease["Read"]["id"];
834
+ } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
835
+ name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
836
+ id: import("@balena/sbvr-types").Types["Serial"]["Read"];
837
+ value: import("@balena/sbvr-types").Types["Text"]["Read"];
838
+ image__is_part_of__release: {
839
+ __id: import("../../../balena-model.js").ImageIsPartOfRelease["Read"]["id"];
840
+ } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
841
+ }, "name" | "value">[];
842
+ })[];
843
+ })[];
844
+ }>;
79
845
  export {};