@balena/open-balena-api 43.1.0-build-joshbwlng-releases-0300ed426724939fe871a8e21dd6c4737a2b4859-1 → 43.1.0-build-joshbwlng-releases-f453f27106ff517a51d5180e8a43f2a0017fce2f-1
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.
- package/dist/features/device-provisioning/hooks/cache-invalidation.js +1 -1
 - package/dist/features/device-provisioning/hooks/cache-invalidation.js.map +1 -1
 - package/dist/features/device-state/routes/state-get-v3.d.ts +223 -223
 - package/dist/features/images/hooks/delete-registry-images.js +5 -6
 - package/dist/features/images/hooks/delete-registry-images.js.map +1 -1
 - package/dist/features/images/tasks/delete-registry-images.js +10 -4
 - package/dist/features/images/tasks/delete-registry-images.js.map +1 -1
 - package/package.json +23 -23
 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"cache-invalidation.js","sourceRoot":"","sources":["../../../../src/features/device-provisioning/hooks/cache-invalidation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iDAAiD,CAAC;AACzF,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAE1E,MAAM,sBAAsB,GAAG,CAC9B,KAAa,EACb,QAAgB,EAChB,WAAc,EACd,KAAiD,EAChD,EAAE;IACH,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;QAC5C,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACtB,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC;YACzB,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YACzD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO;YACR,CAAC;YACD,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC;gBACnC,QAAQ;gBACR,WAAW,EAAE,EAAE,GAAG,EAAE,WAAW,CAAC,IAAI,EAAE,EAAE,EAAE;gBAC1C,OAAO,EAAE;oBACR,OAAO,EAAE,WAAW; 
     | 
| 
      
 1 
     | 
    
         
            +
            {"version":3,"file":"cache-invalidation.js","sourceRoot":"","sources":["../../../../src/features/device-provisioning/hooks/cache-invalidation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iDAAiD,CAAC;AACzF,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAE1E,MAAM,sBAAsB,GAAG,CAC9B,KAAa,EACb,QAAgB,EAChB,WAAc,EACd,KAAiD,EAChD,EAAE;IACH,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;QAC5C,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACtB,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC;YACzB,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YACzD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO;YACR,CAAC;YACD,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC;gBACnC,QAAQ;gBACR,WAAW,EAAE,EAAE,GAAG,EAAE,WAAW,CAAC,IAAI,EAAE,EAAE,EAAE;gBAC1C,OAAO,EAAE;oBACR,OAAO,EAAE,CAAC,WAAW,CAAC;oBACtB,OAAO,EAAE;wBACR,EAAE,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE;qBACxB;iBACD;aACD,CAAC,CAAC;YAEH,sDAAsD;YACtD,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBACjB,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;oBAC1C,oEAAoE;oBACpE,KAAK,CAAC,KAAK,IAAI,EAAE;wBAChB,IAAI,CAAC;4BACJ,MAAM,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;wBAC/C,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACd,gBAAgB,CACf,GAAG,EACH,iCAAiC,KAAK,+DAA+D,WAAW,EAAE,CAClH,CAAC;wBACH,CAAC;oBACF,CAAC,CAAC,EAAE,CAAC;gBACN,CAAC;YACF,CAAC,CAAC,CAAC;QACJ,CAAC;KACD,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,sBAAsB,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,yBAAyB,CAAC,CAAC;AAC7E,sBAAsB,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,sBAAsB,CAAC,CAAC;AAC1E,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,sBAAsB,CAAC,CAAC"}
         
     | 
| 
         @@ -194,7 +194,7 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       194 
194 
     | 
    
         
             
                installs__application__has__service_name?: Array<import("../../../balena-model.js").ServiceInstall["Read"]>;
         
     | 
| 
       195 
195 
     | 
    
         
             
                installs__service?: Array<import("../../../balena-model.js").ServiceInstall["Read"]>;
         
     | 
| 
       196 
196 
     | 
    
         
             
            }, "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"> & {
         
     | 
| 
       197 
     | 
    
         
            -
                 
     | 
| 
      
 197 
     | 
    
         
            +
                device_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       198 
198 
     | 
    
         
             
                    created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       199 
199 
     | 
    
         
             
                    modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       200 
200 
     | 
    
         
             
                    device: {
         
     | 
| 
         @@ -204,7 +204,7 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       204 
204 
     | 
    
         
             
                    id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       205 
205 
     | 
    
         
             
                    value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       206 
206 
     | 
    
         
             
                }, "name" | "value">[];
         
     | 
| 
       207 
     | 
    
         
            -
                 
     | 
| 
      
 207 
     | 
    
         
            +
                device_config_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       208 
208 
     | 
    
         
             
                    created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       209 
209 
     | 
    
         
             
                    modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       210 
210 
     | 
    
         
             
                    device: {
         
     | 
| 
         @@ -214,7 +214,92 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       214 
214 
     | 
    
         
             
                    id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       215 
215 
     | 
    
         
             
                    value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       216 
216 
     | 
    
         
             
                }, "name" | "value">[];
         
     | 
| 
       217 
     | 
    
         
            -
                 
     | 
| 
      
 217 
     | 
    
         
            +
                device_service_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
      
 218 
     | 
    
         
            +
                    created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 219 
     | 
    
         
            +
                    modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 220 
     | 
    
         
            +
                    device: {
         
     | 
| 
      
 221 
     | 
    
         
            +
                        __id: import("../../../balena-model.js").Device["Read"]["id"];
         
     | 
| 
      
 222 
     | 
    
         
            +
                    } | [import("../../../balena-model.js").Device["Read"]];
         
     | 
| 
      
 223 
     | 
    
         
            +
                    service: {
         
     | 
| 
      
 224 
     | 
    
         
            +
                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
      
 225 
     | 
    
         
            +
                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
      
 226 
     | 
    
         
            +
                    name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
      
 227 
     | 
    
         
            +
                    id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
      
 228 
     | 
    
         
            +
                    value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
      
 229 
     | 
    
         
            +
                    service_install: {
         
     | 
| 
      
 230 
     | 
    
         
            +
                        __id: import("../../../balena-model.js").ServiceInstall["Read"]["id"];
         
     | 
| 
      
 231 
     | 
    
         
            +
                    } | [import("../../../balena-model.js").ServiceInstall["Read"]];
         
     | 
| 
      
 232 
     | 
    
         
            +
                    device__installs__application__has__service_name: {
         
     | 
| 
      
 233 
     | 
    
         
            +
                        __id: import("../../../balena-model.js").ServiceInstall["Read"]["id"];
         
     | 
| 
      
 234 
     | 
    
         
            +
                    } | [import("../../../balena-model.js").ServiceInstall["Read"]];
         
     | 
| 
      
 235 
     | 
    
         
            +
                    device__installs__service: {
         
     | 
| 
      
 236 
     | 
    
         
            +
                        __id: import("../../../balena-model.js").ServiceInstall["Read"]["id"];
         
     | 
| 
      
 237 
     | 
    
         
            +
                    } | [import("../../../balena-model.js").ServiceInstall["Read"]];
         
     | 
| 
      
 238 
     | 
    
         
            +
                    application__has__service_name: {
         
     | 
| 
      
 239 
     | 
    
         
            +
                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
      
 240 
     | 
    
         
            +
                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
      
 241 
     | 
    
         
            +
                }, "name" | "value" | "service">[];
         
     | 
| 
      
 242 
     | 
    
         
            +
                belongs_to__application: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
      
 243 
     | 
    
         
            +
                    created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 244 
     | 
    
         
            +
                    modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 245 
     | 
    
         
            +
                    id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
      
 246 
     | 
    
         
            +
                    actor: {
         
     | 
| 
      
 247 
     | 
    
         
            +
                        __id: import("../../../balena-model.js").Actor["Read"]["id"];
         
     | 
| 
      
 248 
     | 
    
         
            +
                    } | [import("../../../balena-model.js").Actor["Read"]];
         
     | 
| 
      
 249 
     | 
    
         
            +
                    should_track_latest_release: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
      
 250 
     | 
    
         
            +
                    is_of__class: "fleet" | "block" | "app";
         
     | 
| 
      
 251 
     | 
    
         
            +
                    organization: {
         
     | 
| 
      
 252 
     | 
    
         
            +
                        __id: import("../../../balena-model.js").Organization["Read"]["id"];
         
     | 
| 
      
 253 
     | 
    
         
            +
                    } | [import("../../../balena-model.js").Organization["Read"]];
         
     | 
| 
      
 254 
     | 
    
         
            +
                    app_name: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
      
 255 
     | 
    
         
            +
                    slug: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
      
 256 
     | 
    
         
            +
                    is_for__device_type: {
         
     | 
| 
      
 257 
     | 
    
         
            +
                        __id: import("../../../balena-model.js").DeviceType["Read"]["id"];
         
     | 
| 
      
 258 
     | 
    
         
            +
                    } | [import("../../../balena-model.js").DeviceType["Read"]];
         
     | 
| 
      
 259 
     | 
    
         
            +
                    should_be_running__release: {
         
     | 
| 
      
 260 
     | 
    
         
            +
                        __id: import("../../../balena-model.js").Release["Read"]["id"];
         
     | 
| 
      
 261 
     | 
    
         
            +
                    } | [import("../../../balena-model.js").Release["Read"]] | [] | null;
         
     | 
| 
      
 262 
     | 
    
         
            +
                    application_type: {
         
     | 
| 
      
 263 
     | 
    
         
            +
                        __id: import("../../../balena-model.js").ApplicationType["Read"]["id"];
         
     | 
| 
      
 264 
     | 
    
         
            +
                    } | [import("../../../balena-model.js").ApplicationType["Read"]];
         
     | 
| 
      
 265 
     | 
    
         
            +
                    is_host: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
      
 266 
     | 
    
         
            +
                    is_archived: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
      
 267 
     | 
    
         
            +
                    uuid: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
      
 268 
     | 
    
         
            +
                    is_public: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
      
 269 
     | 
    
         
            +
                    application__has__env_var_name?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
         
     | 
| 
      
 270 
     | 
    
         
            +
                    application_environment_variable?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
         
     | 
| 
      
 271 
     | 
    
         
            +
                    application__has__config_var_name?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
         
     | 
| 
      
 272 
     | 
    
         
            +
                    application_config_variable?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
         
     | 
| 
      
 273 
     | 
    
         
            +
                    application__has__service_name?: Array<import("../../../balena-model.js").Service["Read"]>;
         
     | 
| 
      
 274 
     | 
    
         
            +
                    service?: Array<import("../../../balena-model.js").Service["Read"]>;
         
     | 
| 
      
 275 
     | 
    
         
            +
                    application__has__tag_key?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
         
     | 
| 
      
 276 
     | 
    
         
            +
                    application_tag?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
         
     | 
| 
      
 277 
     | 
    
         
            +
                    owns__device?: Array<import("../../../balena-model.js").Device["Read"]>;
         
     | 
| 
      
 278 
     | 
    
         
            +
                    owns__release?: Array<import("../../../balena-model.js").Release["Read"]>;
         
     | 
| 
      
 279 
     | 
    
         
            +
                    is_directly_accessible_by__user?: Array<import("../../../balena-model.js").UserHasDirectAccessToApplication["Read"]>;
         
     | 
| 
      
 280 
     | 
    
         
            +
                }, "id" | "is_of__class" | "app_name" | "uuid" | "is_host"> & {
         
     | 
| 
      
 281 
     | 
    
         
            +
                    application_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
      
 282 
     | 
    
         
            +
                        created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 283 
     | 
    
         
            +
                        modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 284 
     | 
    
         
            +
                        application: {
         
     | 
| 
      
 285 
     | 
    
         
            +
                            __id: Application["Read"]["id"];
         
     | 
| 
      
 286 
     | 
    
         
            +
                        } | [Application["Read"]];
         
     | 
| 
      
 287 
     | 
    
         
            +
                        name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
      
 288 
     | 
    
         
            +
                        id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
      
 289 
     | 
    
         
            +
                        value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
      
 290 
     | 
    
         
            +
                    }, "name" | "value">[];
         
     | 
| 
      
 291 
     | 
    
         
            +
                    application_config_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
      
 292 
     | 
    
         
            +
                        created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 293 
     | 
    
         
            +
                        modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 294 
     | 
    
         
            +
                        application: {
         
     | 
| 
      
 295 
     | 
    
         
            +
                            __id: Application["Read"]["id"];
         
     | 
| 
      
 296 
     | 
    
         
            +
                        } | [Application["Read"]];
         
     | 
| 
      
 297 
     | 
    
         
            +
                        name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
      
 298 
     | 
    
         
            +
                        id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
      
 299 
     | 
    
         
            +
                        value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
      
 300 
     | 
    
         
            +
                    }, "name" | "value">[];
         
     | 
| 
      
 301 
     | 
    
         
            +
                })[];
         
     | 
| 
      
 302 
     | 
    
         
            +
                should_be_running__release: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       218 
303 
     | 
    
         
             
                    created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       219 
304 
     | 
    
         
             
                    modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       220 
305 
     | 
    
         
             
                    id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
         @@ -265,7 +350,7 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       265 
350 
     | 
    
         
             
                    provides__device__installs__image?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
         
     | 
| 
       266 
351 
     | 
    
         
             
                    provides__image_install?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
         
     | 
| 
       267 
352 
     | 
    
         
             
                }, "id" | "commit" | "composition"> & {
         
     | 
| 
       268 
     | 
    
         
            -
                     
     | 
| 
      
 353 
     | 
    
         
            +
                    release_image: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       269 
354 
     | 
    
         
             
                        created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       270 
355 
     | 
    
         
             
                        modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       271 
356 
     | 
    
         
             
                        image: {
         
     | 
| 
         @@ -288,7 +373,7 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       288 
373 
     | 
    
         
             
                            __id: import("../../../balena-model.js").Image["Read"]["id"];
         
     | 
| 
       289 
374 
     | 
    
         
             
                        } | [import("../../../balena-model.js").Image["Read"]];
         
     | 
| 
       290 
375 
     | 
    
         
             
                    }, "id"> & {
         
     | 
| 
       291 
     | 
    
         
            -
                         
     | 
| 
      
 376 
     | 
    
         
            +
                        image: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       292 
377 
     | 
    
         
             
                            created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       293 
378 
     | 
    
         
             
                            modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       294 
379 
     | 
    
         
             
                            id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
         @@ -317,7 +402,7 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       317 
402 
     | 
    
         
             
                                __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       318 
403 
     | 
    
         
             
                            } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       319 
404 
     | 
    
         
             
                        }, "id" | "contract" | "is_stored_at__image_location" | "content_hash"> & {
         
     | 
| 
       320 
     | 
    
         
            -
                             
     | 
| 
      
 405 
     | 
    
         
            +
                            is_a_build_of__service: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       321 
406 
     | 
    
         
             
                                created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       322 
407 
     | 
    
         
             
                                modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       323 
408 
     | 
    
         
             
                                application: {
         
     | 
| 
         @@ -341,35 +426,35 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       341 
426 
     | 
    
         
             
                                is_installed_on__device?: Array<import("../../../balena-model.js").ServiceInstall["Read"]>;
         
     | 
| 
       342 
427 
     | 
    
         
             
                                is_built_by__image?: Array<import("../../../balena-model.js").Image["Read"]>;
         
     | 
| 
       343 
428 
     | 
    
         
             
                            }, "id" | "service_name"> & {
         
     | 
| 
       344 
     | 
    
         
            -
                                 
     | 
| 
      
 429 
     | 
    
         
            +
                                service_label: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       345 
430 
     | 
    
         
             
                                    created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       346 
431 
     | 
    
         
             
                                    modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       347 
432 
     | 
    
         
             
                                    service: {
         
     | 
| 
       348 
433 
     | 
    
         
             
                                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       349 
434 
     | 
    
         
             
                                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       350 
     | 
    
         
            -
                                     
     | 
| 
      
 435 
     | 
    
         
            +
                                    label_name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
       351 
436 
     | 
    
         
             
                                    id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       352 
437 
     | 
    
         
             
                                    value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       353 
438 
     | 
    
         
             
                                    application__has__service_name: {
         
     | 
| 
       354 
439 
     | 
    
         
             
                                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       355 
440 
     | 
    
         
             
                                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       356 
     | 
    
         
            -
                                }, " 
     | 
| 
       357 
     | 
    
         
            -
                                 
     | 
| 
      
 441 
     | 
    
         
            +
                                }, "value" | "label_name">[];
         
     | 
| 
      
 442 
     | 
    
         
            +
                                service_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       358 
443 
     | 
    
         
             
                                    created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       359 
444 
     | 
    
         
             
                                    modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       360 
445 
     | 
    
         
             
                                    service: {
         
     | 
| 
       361 
446 
     | 
    
         
             
                                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       362 
447 
     | 
    
         
             
                                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       363 
     | 
    
         
            -
                                     
     | 
| 
      
 448 
     | 
    
         
            +
                                    name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
       364 
449 
     | 
    
         
             
                                    id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       365 
450 
     | 
    
         
             
                                    value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       366 
451 
     | 
    
         
             
                                    application__has__service_name: {
         
     | 
| 
       367 
452 
     | 
    
         
             
                                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       368 
453 
     | 
    
         
             
                                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       369 
     | 
    
         
            -
                                }, " 
     | 
| 
      
 454 
     | 
    
         
            +
                                }, "name" | "value">[];
         
     | 
| 
       370 
455 
     | 
    
         
             
                            })[];
         
     | 
| 
       371 
456 
     | 
    
         
             
                        })[];
         
     | 
| 
       372 
     | 
    
         
            -
                         
     | 
| 
      
 457 
     | 
    
         
            +
                        image_label: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       373 
458 
     | 
    
         
             
                            created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       374 
459 
     | 
    
         
             
                            modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       375 
460 
     | 
    
         
             
                            release_image: {
         
     | 
| 
         @@ -382,7 +467,7 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       382 
467 
     | 
    
         
             
                                __id: import("../../../balena-model.js").ImageIsPartOfRelease["Read"]["id"];
         
     | 
| 
       383 
468 
     | 
    
         
             
                            } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
         
     | 
| 
       384 
469 
     | 
    
         
             
                        }, "value" | "label_name">[];
         
     | 
| 
       385 
     | 
    
         
            -
                         
     | 
| 
      
 470 
     | 
    
         
            +
                        image_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       386 
471 
     | 
    
         
             
                            created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       387 
472 
     | 
    
         
             
                            modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       388 
473 
     | 
    
         
             
                            release_image: {
         
     | 
| 
         @@ -397,92 +482,7 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       397 
482 
     | 
    
         
             
                        }, "name" | "value">[];
         
     | 
| 
       398 
483 
     | 
    
         
             
                    })[];
         
     | 
| 
       399 
484 
     | 
    
         
             
                })[];
         
     | 
| 
       400 
     | 
    
         
            -
                 
     | 
| 
       401 
     | 
    
         
            -
                    created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       402 
     | 
    
         
            -
                    modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       403 
     | 
    
         
            -
                    device: {
         
     | 
| 
       404 
     | 
    
         
            -
                        __id: import("../../../balena-model.js").Device["Read"]["id"];
         
     | 
| 
       405 
     | 
    
         
            -
                    } | [import("../../../balena-model.js").Device["Read"]];
         
     | 
| 
       406 
     | 
    
         
            -
                    service: {
         
     | 
| 
       407 
     | 
    
         
            -
                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       408 
     | 
    
         
            -
                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       409 
     | 
    
         
            -
                    name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
       410 
     | 
    
         
            -
                    id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       411 
     | 
    
         
            -
                    value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       412 
     | 
    
         
            -
                    service_install: {
         
     | 
| 
       413 
     | 
    
         
            -
                        __id: import("../../../balena-model.js").ServiceInstall["Read"]["id"];
         
     | 
| 
       414 
     | 
    
         
            -
                    } | [import("../../../balena-model.js").ServiceInstall["Read"]];
         
     | 
| 
       415 
     | 
    
         
            -
                    device__installs__application__has__service_name: {
         
     | 
| 
       416 
     | 
    
         
            -
                        __id: import("../../../balena-model.js").ServiceInstall["Read"]["id"];
         
     | 
| 
       417 
     | 
    
         
            -
                    } | [import("../../../balena-model.js").ServiceInstall["Read"]];
         
     | 
| 
       418 
     | 
    
         
            -
                    device__installs__service: {
         
     | 
| 
       419 
     | 
    
         
            -
                        __id: import("../../../balena-model.js").ServiceInstall["Read"]["id"];
         
     | 
| 
       420 
     | 
    
         
            -
                    } | [import("../../../balena-model.js").ServiceInstall["Read"]];
         
     | 
| 
       421 
     | 
    
         
            -
                    application__has__service_name: {
         
     | 
| 
       422 
     | 
    
         
            -
                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       423 
     | 
    
         
            -
                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       424 
     | 
    
         
            -
                }, "name" | "value" | "service">[];
         
     | 
| 
       425 
     | 
    
         
            -
                readonly belongs_to__application: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       426 
     | 
    
         
            -
                    created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       427 
     | 
    
         
            -
                    modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       428 
     | 
    
         
            -
                    id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       429 
     | 
    
         
            -
                    actor: {
         
     | 
| 
       430 
     | 
    
         
            -
                        __id: import("../../../balena-model.js").Actor["Read"]["id"];
         
     | 
| 
       431 
     | 
    
         
            -
                    } | [import("../../../balena-model.js").Actor["Read"]];
         
     | 
| 
       432 
     | 
    
         
            -
                    should_track_latest_release: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
       433 
     | 
    
         
            -
                    is_of__class: "fleet" | "block" | "app";
         
     | 
| 
       434 
     | 
    
         
            -
                    organization: {
         
     | 
| 
       435 
     | 
    
         
            -
                        __id: import("../../../balena-model.js").Organization["Read"]["id"];
         
     | 
| 
       436 
     | 
    
         
            -
                    } | [import("../../../balena-model.js").Organization["Read"]];
         
     | 
| 
       437 
     | 
    
         
            -
                    app_name: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       438 
     | 
    
         
            -
                    slug: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
       439 
     | 
    
         
            -
                    is_for__device_type: {
         
     | 
| 
       440 
     | 
    
         
            -
                        __id: import("../../../balena-model.js").DeviceType["Read"]["id"];
         
     | 
| 
       441 
     | 
    
         
            -
                    } | [import("../../../balena-model.js").DeviceType["Read"]];
         
     | 
| 
       442 
     | 
    
         
            -
                    should_be_running__release: {
         
     | 
| 
       443 
     | 
    
         
            -
                        __id: import("../../../balena-model.js").Release["Read"]["id"];
         
     | 
| 
       444 
     | 
    
         
            -
                    } | [import("../../../balena-model.js").Release["Read"]] | [] | null;
         
     | 
| 
       445 
     | 
    
         
            -
                    application_type: {
         
     | 
| 
       446 
     | 
    
         
            -
                        __id: import("../../../balena-model.js").ApplicationType["Read"]["id"];
         
     | 
| 
       447 
     | 
    
         
            -
                    } | [import("../../../balena-model.js").ApplicationType["Read"]];
         
     | 
| 
       448 
     | 
    
         
            -
                    is_host: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
       449 
     | 
    
         
            -
                    is_archived: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
       450 
     | 
    
         
            -
                    uuid: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       451 
     | 
    
         
            -
                    is_public: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
       452 
     | 
    
         
            -
                    application__has__env_var_name?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
         
     | 
| 
       453 
     | 
    
         
            -
                    application_environment_variable?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
         
     | 
| 
       454 
     | 
    
         
            -
                    application__has__config_var_name?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
         
     | 
| 
       455 
     | 
    
         
            -
                    application_config_variable?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
         
     | 
| 
       456 
     | 
    
         
            -
                    application__has__service_name?: Array<import("../../../balena-model.js").Service["Read"]>;
         
     | 
| 
       457 
     | 
    
         
            -
                    service?: Array<import("../../../balena-model.js").Service["Read"]>;
         
     | 
| 
       458 
     | 
    
         
            -
                    application__has__tag_key?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
         
     | 
| 
       459 
     | 
    
         
            -
                    application_tag?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
         
     | 
| 
       460 
     | 
    
         
            -
                    owns__device?: Array<import("../../../balena-model.js").Device["Read"]>;
         
     | 
| 
       461 
     | 
    
         
            -
                    owns__release?: Array<import("../../../balena-model.js").Release["Read"]>;
         
     | 
| 
       462 
     | 
    
         
            -
                    is_directly_accessible_by__user?: Array<import("../../../balena-model.js").UserHasDirectAccessToApplication["Read"]>;
         
     | 
| 
       463 
     | 
    
         
            -
                }, "id" | "is_of__class" | "app_name" | "uuid" | "is_host"> & {
         
     | 
| 
       464 
     | 
    
         
            -
                    readonly application_config_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       465 
     | 
    
         
            -
                        created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       466 
     | 
    
         
            -
                        modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       467 
     | 
    
         
            -
                        application: {
         
     | 
| 
       468 
     | 
    
         
            -
                            __id: Application["Read"]["id"];
         
     | 
| 
       469 
     | 
    
         
            -
                        } | [Application["Read"]];
         
     | 
| 
       470 
     | 
    
         
            -
                        name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
       471 
     | 
    
         
            -
                        id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       472 
     | 
    
         
            -
                        value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       473 
     | 
    
         
            -
                    }, "name" | "value">[];
         
     | 
| 
       474 
     | 
    
         
            -
                    readonly application_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       475 
     | 
    
         
            -
                        created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       476 
     | 
    
         
            -
                        modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       477 
     | 
    
         
            -
                        application: {
         
     | 
| 
       478 
     | 
    
         
            -
                            __id: Application["Read"]["id"];
         
     | 
| 
       479 
     | 
    
         
            -
                        } | [Application["Read"]];
         
     | 
| 
       480 
     | 
    
         
            -
                        name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
       481 
     | 
    
         
            -
                        id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       482 
     | 
    
         
            -
                        value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       483 
     | 
    
         
            -
                    }, "name" | "value">[];
         
     | 
| 
       484 
     | 
    
         
            -
                })[];
         
     | 
| 
       485 
     | 
    
         
            -
                readonly should_be_managed_by__release: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
      
 485 
     | 
    
         
            +
                should_be_operated_by__release: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       486 
486 
     | 
    
         
             
                    created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       487 
487 
     | 
    
         
             
                    modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       488 
488 
     | 
    
         
             
                    id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
         @@ -533,57 +533,7 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       533 
533 
     | 
    
         
             
                    provides__device__installs__image?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
         
     | 
| 
       534 
534 
     | 
    
         
             
                    provides__image_install?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
         
     | 
| 
       535 
535 
     | 
    
         
             
                }, "id" | "commit" | "composition"> & {
         
     | 
| 
       536 
     | 
    
         
            -
                     
     | 
| 
       537 
     | 
    
         
            -
                        created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       538 
     | 
    
         
            -
                        modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       539 
     | 
    
         
            -
                        id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       540 
     | 
    
         
            -
                        actor: {
         
     | 
| 
       541 
     | 
    
         
            -
                            __id: import("../../../balena-model.js").Actor["Read"]["id"];
         
     | 
| 
       542 
     | 
    
         
            -
                        } | [import("../../../balena-model.js").Actor["Read"]];
         
     | 
| 
       543 
     | 
    
         
            -
                        should_track_latest_release: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
       544 
     | 
    
         
            -
                        is_of__class: "fleet" | "block" | "app";
         
     | 
| 
       545 
     | 
    
         
            -
                        organization: {
         
     | 
| 
       546 
     | 
    
         
            -
                            __id: import("../../../balena-model.js").Organization["Read"]["id"];
         
     | 
| 
       547 
     | 
    
         
            -
                        } | [import("../../../balena-model.js").Organization["Read"]];
         
     | 
| 
       548 
     | 
    
         
            -
                        app_name: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       549 
     | 
    
         
            -
                        slug: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
       550 
     | 
    
         
            -
                        is_for__device_type: {
         
     | 
| 
       551 
     | 
    
         
            -
                            __id: import("../../../balena-model.js").DeviceType["Read"]["id"];
         
     | 
| 
       552 
     | 
    
         
            -
                        } | [import("../../../balena-model.js").DeviceType["Read"]];
         
     | 
| 
       553 
     | 
    
         
            -
                        should_be_running__release: {
         
     | 
| 
       554 
     | 
    
         
            -
                            __id: import("../../../balena-model.js").Release["Read"]["id"];
         
     | 
| 
       555 
     | 
    
         
            -
                        } | [import("../../../balena-model.js").Release["Read"]] | [] | null;
         
     | 
| 
       556 
     | 
    
         
            -
                        application_type: {
         
     | 
| 
       557 
     | 
    
         
            -
                            __id: import("../../../balena-model.js").ApplicationType["Read"]["id"];
         
     | 
| 
       558 
     | 
    
         
            -
                        } | [import("../../../balena-model.js").ApplicationType["Read"]];
         
     | 
| 
       559 
     | 
    
         
            -
                        is_host: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
       560 
     | 
    
         
            -
                        is_archived: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
       561 
     | 
    
         
            -
                        uuid: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       562 
     | 
    
         
            -
                        is_public: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
       563 
     | 
    
         
            -
                        application__has__env_var_name?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
         
     | 
| 
       564 
     | 
    
         
            -
                        application_environment_variable?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
         
     | 
| 
       565 
     | 
    
         
            -
                        application__has__config_var_name?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
         
     | 
| 
       566 
     | 
    
         
            -
                        application_config_variable?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
         
     | 
| 
       567 
     | 
    
         
            -
                        application__has__service_name?: Array<import("../../../balena-model.js").Service["Read"]>;
         
     | 
| 
       568 
     | 
    
         
            -
                        service?: Array<import("../../../balena-model.js").Service["Read"]>;
         
     | 
| 
       569 
     | 
    
         
            -
                        application__has__tag_key?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
         
     | 
| 
       570 
     | 
    
         
            -
                        application_tag?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
         
     | 
| 
       571 
     | 
    
         
            -
                        owns__device?: Array<import("../../../balena-model.js").Device["Read"]>;
         
     | 
| 
       572 
     | 
    
         
            -
                        owns__release?: Array<import("../../../balena-model.js").Release["Read"]>;
         
     | 
| 
       573 
     | 
    
         
            -
                        is_directly_accessible_by__user?: Array<import("../../../balena-model.js").UserHasDirectAccessToApplication["Read"]>;
         
     | 
| 
       574 
     | 
    
         
            -
                    }, "id" | "is_of__class" | "app_name" | "uuid" | "is_host"> & {
         
     | 
| 
       575 
     | 
    
         
            -
                        readonly application_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       576 
     | 
    
         
            -
                            created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       577 
     | 
    
         
            -
                            modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       578 
     | 
    
         
            -
                            application: {
         
     | 
| 
       579 
     | 
    
         
            -
                                __id: Application["Read"]["id"];
         
     | 
| 
       580 
     | 
    
         
            -
                            } | [Application["Read"]];
         
     | 
| 
       581 
     | 
    
         
            -
                            name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
       582 
     | 
    
         
            -
                            id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       583 
     | 
    
         
            -
                            value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       584 
     | 
    
         
            -
                        }, "name" | "value">[];
         
     | 
| 
       585 
     | 
    
         
            -
                    })[];
         
     | 
| 
       586 
     | 
    
         
            -
                    readonly release_image: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
      
 536 
     | 
    
         
            +
                    release_image: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       587 
537 
     | 
    
         
             
                        created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       588 
538 
     | 
    
         
             
                        modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       589 
539 
     | 
    
         
             
                        image: {
         
     | 
| 
         @@ -606,7 +556,7 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       606 
556 
     | 
    
         
             
                            __id: import("../../../balena-model.js").Image["Read"]["id"];
         
     | 
| 
       607 
557 
     | 
    
         
             
                        } | [import("../../../balena-model.js").Image["Read"]];
         
     | 
| 
       608 
558 
     | 
    
         
             
                    }, "id"> & {
         
     | 
| 
       609 
     | 
    
         
            -
                         
     | 
| 
      
 559 
     | 
    
         
            +
                        image: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       610 
560 
     | 
    
         
             
                            created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       611 
561 
     | 
    
         
             
                            modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       612 
562 
     | 
    
         
             
                            id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
         @@ -635,7 +585,7 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       635 
585 
     | 
    
         
             
                                __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       636 
586 
     | 
    
         
             
                            } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       637 
587 
     | 
    
         
             
                        }, "id" | "contract" | "is_stored_at__image_location" | "content_hash"> & {
         
     | 
| 
       638 
     | 
    
         
            -
                             
     | 
| 
      
 588 
     | 
    
         
            +
                            is_a_build_of__service: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       639 
589 
     | 
    
         
             
                                created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       640 
590 
     | 
    
         
             
                                modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       641 
591 
     | 
    
         
             
                                application: {
         
     | 
| 
         @@ -659,35 +609,35 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       659 
609 
     | 
    
         
             
                                is_installed_on__device?: Array<import("../../../balena-model.js").ServiceInstall["Read"]>;
         
     | 
| 
       660 
610 
     | 
    
         
             
                                is_built_by__image?: Array<import("../../../balena-model.js").Image["Read"]>;
         
     | 
| 
       661 
611 
     | 
    
         
             
                            }, "id" | "service_name"> & {
         
     | 
| 
       662 
     | 
    
         
            -
                                 
     | 
| 
      
 612 
     | 
    
         
            +
                                service_label: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       663 
613 
     | 
    
         
             
                                    created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       664 
614 
     | 
    
         
             
                                    modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       665 
615 
     | 
    
         
             
                                    service: {
         
     | 
| 
       666 
616 
     | 
    
         
             
                                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       667 
617 
     | 
    
         
             
                                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       668 
     | 
    
         
            -
                                     
     | 
| 
      
 618 
     | 
    
         
            +
                                    label_name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
       669 
619 
     | 
    
         
             
                                    id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       670 
620 
     | 
    
         
             
                                    value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       671 
621 
     | 
    
         
             
                                    application__has__service_name: {
         
     | 
| 
       672 
622 
     | 
    
         
             
                                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       673 
623 
     | 
    
         
             
                                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       674 
     | 
    
         
            -
                                }, " 
     | 
| 
       675 
     | 
    
         
            -
                                 
     | 
| 
      
 624 
     | 
    
         
            +
                                }, "value" | "label_name">[];
         
     | 
| 
      
 625 
     | 
    
         
            +
                                service_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       676 
626 
     | 
    
         
             
                                    created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       677 
627 
     | 
    
         
             
                                    modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       678 
628 
     | 
    
         
             
                                    service: {
         
     | 
| 
       679 
629 
     | 
    
         
             
                                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       680 
630 
     | 
    
         
             
                                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       681 
     | 
    
         
            -
                                     
     | 
| 
      
 631 
     | 
    
         
            +
                                    name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
       682 
632 
     | 
    
         
             
                                    id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       683 
633 
     | 
    
         
             
                                    value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       684 
634 
     | 
    
         
             
                                    application__has__service_name: {
         
     | 
| 
       685 
635 
     | 
    
         
             
                                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       686 
636 
     | 
    
         
             
                                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       687 
     | 
    
         
            -
                                }, " 
     | 
| 
      
 637 
     | 
    
         
            +
                                }, "name" | "value">[];
         
     | 
| 
       688 
638 
     | 
    
         
             
                            })[];
         
     | 
| 
       689 
639 
     | 
    
         
             
                        })[];
         
     | 
| 
       690 
     | 
    
         
            -
                         
     | 
| 
      
 640 
     | 
    
         
            +
                        image_label: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       691 
641 
     | 
    
         
             
                            created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       692 
642 
     | 
    
         
             
                            modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       693 
643 
     | 
    
         
             
                            release_image: {
         
     | 
| 
         @@ -700,7 +650,7 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       700 
650 
     | 
    
         
             
                                __id: import("../../../balena-model.js").ImageIsPartOfRelease["Read"]["id"];
         
     | 
| 
       701 
651 
     | 
    
         
             
                            } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
         
     | 
| 
       702 
652 
     | 
    
         
             
                        }, "value" | "label_name">[];
         
     | 
| 
       703 
     | 
    
         
            -
                         
     | 
| 
      
 653 
     | 
    
         
            +
                        image_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       704 
654 
     | 
    
         
             
                            created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       705 
655 
     | 
    
         
             
                            modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       706 
656 
     | 
    
         
             
                            release_image: {
         
     | 
| 
         @@ -714,8 +664,58 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       714 
664 
     | 
    
         
             
                            } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
         
     | 
| 
       715 
665 
     | 
    
         
             
                        }, "name" | "value">[];
         
     | 
| 
       716 
666 
     | 
    
         
             
                    })[];
         
     | 
| 
      
 667 
     | 
    
         
            +
                    belongs_to__application: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
      
 668 
     | 
    
         
            +
                        created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 669 
     | 
    
         
            +
                        modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 670 
     | 
    
         
            +
                        id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
      
 671 
     | 
    
         
            +
                        actor: {
         
     | 
| 
      
 672 
     | 
    
         
            +
                            __id: import("../../../balena-model.js").Actor["Read"]["id"];
         
     | 
| 
      
 673 
     | 
    
         
            +
                        } | [import("../../../balena-model.js").Actor["Read"]];
         
     | 
| 
      
 674 
     | 
    
         
            +
                        should_track_latest_release: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
      
 675 
     | 
    
         
            +
                        is_of__class: "fleet" | "block" | "app";
         
     | 
| 
      
 676 
     | 
    
         
            +
                        organization: {
         
     | 
| 
      
 677 
     | 
    
         
            +
                            __id: import("../../../balena-model.js").Organization["Read"]["id"];
         
     | 
| 
      
 678 
     | 
    
         
            +
                        } | [import("../../../balena-model.js").Organization["Read"]];
         
     | 
| 
      
 679 
     | 
    
         
            +
                        app_name: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
      
 680 
     | 
    
         
            +
                        slug: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
      
 681 
     | 
    
         
            +
                        is_for__device_type: {
         
     | 
| 
      
 682 
     | 
    
         
            +
                            __id: import("../../../balena-model.js").DeviceType["Read"]["id"];
         
     | 
| 
      
 683 
     | 
    
         
            +
                        } | [import("../../../balena-model.js").DeviceType["Read"]];
         
     | 
| 
      
 684 
     | 
    
         
            +
                        should_be_running__release: {
         
     | 
| 
      
 685 
     | 
    
         
            +
                            __id: import("../../../balena-model.js").Release["Read"]["id"];
         
     | 
| 
      
 686 
     | 
    
         
            +
                        } | [import("../../../balena-model.js").Release["Read"]] | [] | null;
         
     | 
| 
      
 687 
     | 
    
         
            +
                        application_type: {
         
     | 
| 
      
 688 
     | 
    
         
            +
                            __id: import("../../../balena-model.js").ApplicationType["Read"]["id"];
         
     | 
| 
      
 689 
     | 
    
         
            +
                        } | [import("../../../balena-model.js").ApplicationType["Read"]];
         
     | 
| 
      
 690 
     | 
    
         
            +
                        is_host: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
      
 691 
     | 
    
         
            +
                        is_archived: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
      
 692 
     | 
    
         
            +
                        uuid: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
      
 693 
     | 
    
         
            +
                        is_public: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
      
 694 
     | 
    
         
            +
                        application__has__env_var_name?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
         
     | 
| 
      
 695 
     | 
    
         
            +
                        application_environment_variable?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
         
     | 
| 
      
 696 
     | 
    
         
            +
                        application__has__config_var_name?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
         
     | 
| 
      
 697 
     | 
    
         
            +
                        application_config_variable?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
         
     | 
| 
      
 698 
     | 
    
         
            +
                        application__has__service_name?: Array<import("../../../balena-model.js").Service["Read"]>;
         
     | 
| 
      
 699 
     | 
    
         
            +
                        service?: Array<import("../../../balena-model.js").Service["Read"]>;
         
     | 
| 
      
 700 
     | 
    
         
            +
                        application__has__tag_key?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
         
     | 
| 
      
 701 
     | 
    
         
            +
                        application_tag?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
         
     | 
| 
      
 702 
     | 
    
         
            +
                        owns__device?: Array<import("../../../balena-model.js").Device["Read"]>;
         
     | 
| 
      
 703 
     | 
    
         
            +
                        owns__release?: Array<import("../../../balena-model.js").Release["Read"]>;
         
     | 
| 
      
 704 
     | 
    
         
            +
                        is_directly_accessible_by__user?: Array<import("../../../balena-model.js").UserHasDirectAccessToApplication["Read"]>;
         
     | 
| 
      
 705 
     | 
    
         
            +
                    }, "id" | "is_of__class" | "app_name" | "uuid" | "is_host"> & {
         
     | 
| 
      
 706 
     | 
    
         
            +
                        application_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
      
 707 
     | 
    
         
            +
                            created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 708 
     | 
    
         
            +
                            modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 709 
     | 
    
         
            +
                            application: {
         
     | 
| 
      
 710 
     | 
    
         
            +
                                __id: Application["Read"]["id"];
         
     | 
| 
      
 711 
     | 
    
         
            +
                            } | [Application["Read"]];
         
     | 
| 
      
 712 
     | 
    
         
            +
                            name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
      
 713 
     | 
    
         
            +
                            id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
      
 714 
     | 
    
         
            +
                            value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
      
 715 
     | 
    
         
            +
                        }, "name" | "value">[];
         
     | 
| 
      
 716 
     | 
    
         
            +
                    })[];
         
     | 
| 
       717 
717 
     | 
    
         
             
                })[];
         
     | 
| 
       718 
     | 
    
         
            -
                 
     | 
| 
      
 718 
     | 
    
         
            +
                should_be_managed_by__release: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       719 
719 
     | 
    
         
             
                    created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       720 
720 
     | 
    
         
             
                    modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       721 
721 
     | 
    
         
             
                    id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
         @@ -766,57 +766,7 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       766 
766 
     | 
    
         
             
                    provides__device__installs__image?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
         
     | 
| 
       767 
767 
     | 
    
         
             
                    provides__image_install?: Array<import("../../../balena-model.js").ImageInstall["Read"]>;
         
     | 
| 
       768 
768 
     | 
    
         
             
                }, "id" | "commit" | "composition"> & {
         
     | 
| 
       769 
     | 
    
         
            -
                     
     | 
| 
       770 
     | 
    
         
            -
                        created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       771 
     | 
    
         
            -
                        modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       772 
     | 
    
         
            -
                        id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       773 
     | 
    
         
            -
                        actor: {
         
     | 
| 
       774 
     | 
    
         
            -
                            __id: import("../../../balena-model.js").Actor["Read"]["id"];
         
     | 
| 
       775 
     | 
    
         
            -
                        } | [import("../../../balena-model.js").Actor["Read"]];
         
     | 
| 
       776 
     | 
    
         
            -
                        should_track_latest_release: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
       777 
     | 
    
         
            -
                        is_of__class: "fleet" | "block" | "app";
         
     | 
| 
       778 
     | 
    
         
            -
                        organization: {
         
     | 
| 
       779 
     | 
    
         
            -
                            __id: import("../../../balena-model.js").Organization["Read"]["id"];
         
     | 
| 
       780 
     | 
    
         
            -
                        } | [import("../../../balena-model.js").Organization["Read"]];
         
     | 
| 
       781 
     | 
    
         
            -
                        app_name: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       782 
     | 
    
         
            -
                        slug: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
       783 
     | 
    
         
            -
                        is_for__device_type: {
         
     | 
| 
       784 
     | 
    
         
            -
                            __id: import("../../../balena-model.js").DeviceType["Read"]["id"];
         
     | 
| 
       785 
     | 
    
         
            -
                        } | [import("../../../balena-model.js").DeviceType["Read"]];
         
     | 
| 
       786 
     | 
    
         
            -
                        should_be_running__release: {
         
     | 
| 
       787 
     | 
    
         
            -
                            __id: import("../../../balena-model.js").Release["Read"]["id"];
         
     | 
| 
       788 
     | 
    
         
            -
                        } | [import("../../../balena-model.js").Release["Read"]] | [] | null;
         
     | 
| 
       789 
     | 
    
         
            -
                        application_type: {
         
     | 
| 
       790 
     | 
    
         
            -
                            __id: import("../../../balena-model.js").ApplicationType["Read"]["id"];
         
     | 
| 
       791 
     | 
    
         
            -
                        } | [import("../../../balena-model.js").ApplicationType["Read"]];
         
     | 
| 
       792 
     | 
    
         
            -
                        is_host: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
       793 
     | 
    
         
            -
                        is_archived: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
       794 
     | 
    
         
            -
                        uuid: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       795 
     | 
    
         
            -
                        is_public: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
       796 
     | 
    
         
            -
                        application__has__env_var_name?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
         
     | 
| 
       797 
     | 
    
         
            -
                        application_environment_variable?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
         
     | 
| 
       798 
     | 
    
         
            -
                        application__has__config_var_name?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
         
     | 
| 
       799 
     | 
    
         
            -
                        application_config_variable?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
         
     | 
| 
       800 
     | 
    
         
            -
                        application__has__service_name?: Array<import("../../../balena-model.js").Service["Read"]>;
         
     | 
| 
       801 
     | 
    
         
            -
                        service?: Array<import("../../../balena-model.js").Service["Read"]>;
         
     | 
| 
       802 
     | 
    
         
            -
                        application__has__tag_key?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
         
     | 
| 
       803 
     | 
    
         
            -
                        application_tag?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
         
     | 
| 
       804 
     | 
    
         
            -
                        owns__device?: Array<import("../../../balena-model.js").Device["Read"]>;
         
     | 
| 
       805 
     | 
    
         
            -
                        owns__release?: Array<import("../../../balena-model.js").Release["Read"]>;
         
     | 
| 
       806 
     | 
    
         
            -
                        is_directly_accessible_by__user?: Array<import("../../../balena-model.js").UserHasDirectAccessToApplication["Read"]>;
         
     | 
| 
       807 
     | 
    
         
            -
                    }, "id" | "is_of__class" | "app_name" | "uuid" | "is_host"> & {
         
     | 
| 
       808 
     | 
    
         
            -
                        readonly application_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       809 
     | 
    
         
            -
                            created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       810 
     | 
    
         
            -
                            modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       811 
     | 
    
         
            -
                            application: {
         
     | 
| 
       812 
     | 
    
         
            -
                                __id: Application["Read"]["id"];
         
     | 
| 
       813 
     | 
    
         
            -
                            } | [Application["Read"]];
         
     | 
| 
       814 
     | 
    
         
            -
                            name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
       815 
     | 
    
         
            -
                            id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       816 
     | 
    
         
            -
                            value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       817 
     | 
    
         
            -
                        }, "name" | "value">[];
         
     | 
| 
       818 
     | 
    
         
            -
                    })[];
         
     | 
| 
       819 
     | 
    
         
            -
                    readonly release_image: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
      
 769 
     | 
    
         
            +
                    release_image: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       820 
770 
     | 
    
         
             
                        created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       821 
771 
     | 
    
         
             
                        modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       822 
772 
     | 
    
         
             
                        image: {
         
     | 
| 
         @@ -839,7 +789,7 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       839 
789 
     | 
    
         
             
                            __id: import("../../../balena-model.js").Image["Read"]["id"];
         
     | 
| 
       840 
790 
     | 
    
         
             
                        } | [import("../../../balena-model.js").Image["Read"]];
         
     | 
| 
       841 
791 
     | 
    
         
             
                    }, "id"> & {
         
     | 
| 
       842 
     | 
    
         
            -
                         
     | 
| 
      
 792 
     | 
    
         
            +
                        image: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       843 
793 
     | 
    
         
             
                            created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       844 
794 
     | 
    
         
             
                            modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       845 
795 
     | 
    
         
             
                            id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
         @@ -868,7 +818,7 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       868 
818 
     | 
    
         
             
                                __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       869 
819 
     | 
    
         
             
                            } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       870 
820 
     | 
    
         
             
                        }, "id" | "contract" | "is_stored_at__image_location" | "content_hash"> & {
         
     | 
| 
       871 
     | 
    
         
            -
                             
     | 
| 
      
 821 
     | 
    
         
            +
                            is_a_build_of__service: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       872 
822 
     | 
    
         
             
                                created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       873 
823 
     | 
    
         
             
                                modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       874 
824 
     | 
    
         
             
                                application: {
         
     | 
| 
         @@ -892,35 +842,35 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       892 
842 
     | 
    
         
             
                                is_installed_on__device?: Array<import("../../../balena-model.js").ServiceInstall["Read"]>;
         
     | 
| 
       893 
843 
     | 
    
         
             
                                is_built_by__image?: Array<import("../../../balena-model.js").Image["Read"]>;
         
     | 
| 
       894 
844 
     | 
    
         
             
                            }, "id" | "service_name"> & {
         
     | 
| 
       895 
     | 
    
         
            -
                                 
     | 
| 
      
 845 
     | 
    
         
            +
                                service_label: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       896 
846 
     | 
    
         
             
                                    created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       897 
847 
     | 
    
         
             
                                    modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       898 
848 
     | 
    
         
             
                                    service: {
         
     | 
| 
       899 
849 
     | 
    
         
             
                                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       900 
850 
     | 
    
         
             
                                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       901 
     | 
    
         
            -
                                     
     | 
| 
      
 851 
     | 
    
         
            +
                                    label_name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
       902 
852 
     | 
    
         
             
                                    id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       903 
853 
     | 
    
         
             
                                    value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       904 
854 
     | 
    
         
             
                                    application__has__service_name: {
         
     | 
| 
       905 
855 
     | 
    
         
             
                                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       906 
856 
     | 
    
         
             
                                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       907 
     | 
    
         
            -
                                }, " 
     | 
| 
       908 
     | 
    
         
            -
                                 
     | 
| 
      
 857 
     | 
    
         
            +
                                }, "value" | "label_name">[];
         
     | 
| 
      
 858 
     | 
    
         
            +
                                service_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       909 
859 
     | 
    
         
             
                                    created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       910 
860 
     | 
    
         
             
                                    modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       911 
861 
     | 
    
         
             
                                    service: {
         
     | 
| 
       912 
862 
     | 
    
         
             
                                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       913 
863 
     | 
    
         
             
                                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       914 
     | 
    
         
            -
                                     
     | 
| 
      
 864 
     | 
    
         
            +
                                    name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
       915 
865 
     | 
    
         
             
                                    id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
       916 
866 
     | 
    
         
             
                                    value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
       917 
867 
     | 
    
         
             
                                    application__has__service_name: {
         
     | 
| 
       918 
868 
     | 
    
         
             
                                        __id: import("../../../balena-model.js").Service["Read"]["id"];
         
     | 
| 
       919 
869 
     | 
    
         
             
                                    } | [import("../../../balena-model.js").Service["Read"]];
         
     | 
| 
       920 
     | 
    
         
            -
                                }, " 
     | 
| 
      
 870 
     | 
    
         
            +
                                }, "name" | "value">[];
         
     | 
| 
       921 
871 
     | 
    
         
             
                            })[];
         
     | 
| 
       922 
872 
     | 
    
         
             
                        })[];
         
     | 
| 
       923 
     | 
    
         
            -
                         
     | 
| 
      
 873 
     | 
    
         
            +
                        image_label: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       924 
874 
     | 
    
         
             
                            created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       925 
875 
     | 
    
         
             
                            modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       926 
876 
     | 
    
         
             
                            release_image: {
         
     | 
| 
         @@ -933,7 +883,7 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       933 
883 
     | 
    
         
             
                                __id: import("../../../balena-model.js").ImageIsPartOfRelease["Read"]["id"];
         
     | 
| 
       934 
884 
     | 
    
         
             
                            } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
         
     | 
| 
       935 
885 
     | 
    
         
             
                        }, "value" | "label_name">[];
         
     | 
| 
       936 
     | 
    
         
            -
                         
     | 
| 
      
 886 
     | 
    
         
            +
                        image_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
       937 
887 
     | 
    
         
             
                            created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       938 
888 
     | 
    
         
             
                            modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
       939 
889 
     | 
    
         
             
                            release_image: {
         
     | 
| 
         @@ -947,6 +897,56 @@ declare const getDevice: (req: import("@balena/pinejs/out/sbvr-api/permissions.j 
     | 
|
| 
       947 
897 
     | 
    
         
             
                            } | [import("../../../balena-model.js").ImageIsPartOfRelease["Read"]];
         
     | 
| 
       948 
898 
     | 
    
         
             
                        }, "name" | "value">[];
         
     | 
| 
       949 
899 
     | 
    
         
             
                    })[];
         
     | 
| 
      
 900 
     | 
    
         
            +
                    belongs_to__application: (import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
      
 901 
     | 
    
         
            +
                        created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 902 
     | 
    
         
            +
                        modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 903 
     | 
    
         
            +
                        id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
      
 904 
     | 
    
         
            +
                        actor: {
         
     | 
| 
      
 905 
     | 
    
         
            +
                            __id: import("../../../balena-model.js").Actor["Read"]["id"];
         
     | 
| 
      
 906 
     | 
    
         
            +
                        } | [import("../../../balena-model.js").Actor["Read"]];
         
     | 
| 
      
 907 
     | 
    
         
            +
                        should_track_latest_release: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
      
 908 
     | 
    
         
            +
                        is_of__class: "fleet" | "block" | "app";
         
     | 
| 
      
 909 
     | 
    
         
            +
                        organization: {
         
     | 
| 
      
 910 
     | 
    
         
            +
                            __id: import("../../../balena-model.js").Organization["Read"]["id"];
         
     | 
| 
      
 911 
     | 
    
         
            +
                        } | [import("../../../balena-model.js").Organization["Read"]];
         
     | 
| 
      
 912 
     | 
    
         
            +
                        app_name: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
      
 913 
     | 
    
         
            +
                        slug: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
      
 914 
     | 
    
         
            +
                        is_for__device_type: {
         
     | 
| 
      
 915 
     | 
    
         
            +
                            __id: import("../../../balena-model.js").DeviceType["Read"]["id"];
         
     | 
| 
      
 916 
     | 
    
         
            +
                        } | [import("../../../balena-model.js").DeviceType["Read"]];
         
     | 
| 
      
 917 
     | 
    
         
            +
                        should_be_running__release: {
         
     | 
| 
      
 918 
     | 
    
         
            +
                            __id: import("../../../balena-model.js").Release["Read"]["id"];
         
     | 
| 
      
 919 
     | 
    
         
            +
                        } | [import("../../../balena-model.js").Release["Read"]] | [] | null;
         
     | 
| 
      
 920 
     | 
    
         
            +
                        application_type: {
         
     | 
| 
      
 921 
     | 
    
         
            +
                            __id: import("../../../balena-model.js").ApplicationType["Read"]["id"];
         
     | 
| 
      
 922 
     | 
    
         
            +
                        } | [import("../../../balena-model.js").ApplicationType["Read"]];
         
     | 
| 
      
 923 
     | 
    
         
            +
                        is_host: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
      
 924 
     | 
    
         
            +
                        is_archived: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
      
 925 
     | 
    
         
            +
                        uuid: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
      
 926 
     | 
    
         
            +
                        is_public: import("@balena/sbvr-types").Types["Boolean"]["Read"];
         
     | 
| 
      
 927 
     | 
    
         
            +
                        application__has__env_var_name?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
         
     | 
| 
      
 928 
     | 
    
         
            +
                        application_environment_variable?: Array<import("../../../balena-model.js").ApplicationEnvironmentVariable["Read"]>;
         
     | 
| 
      
 929 
     | 
    
         
            +
                        application__has__config_var_name?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
         
     | 
| 
      
 930 
     | 
    
         
            +
                        application_config_variable?: Array<import("../../../balena-model.js").ApplicationConfigVariable["Read"]>;
         
     | 
| 
      
 931 
     | 
    
         
            +
                        application__has__service_name?: Array<import("../../../balena-model.js").Service["Read"]>;
         
     | 
| 
      
 932 
     | 
    
         
            +
                        service?: Array<import("../../../balena-model.js").Service["Read"]>;
         
     | 
| 
      
 933 
     | 
    
         
            +
                        application__has__tag_key?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
         
     | 
| 
      
 934 
     | 
    
         
            +
                        application_tag?: Array<import("../../../balena-model.js").ApplicationTag["Read"]>;
         
     | 
| 
      
 935 
     | 
    
         
            +
                        owns__device?: Array<import("../../../balena-model.js").Device["Read"]>;
         
     | 
| 
      
 936 
     | 
    
         
            +
                        owns__release?: Array<import("../../../balena-model.js").Release["Read"]>;
         
     | 
| 
      
 937 
     | 
    
         
            +
                        is_directly_accessible_by__user?: Array<import("../../../balena-model.js").UserHasDirectAccessToApplication["Read"]>;
         
     | 
| 
      
 938 
     | 
    
         
            +
                    }, "id" | "is_of__class" | "app_name" | "uuid" | "is_host"> & {
         
     | 
| 
      
 939 
     | 
    
         
            +
                        application_environment_variable: import("@balena/abstract-sql-to-typescript").PickDeferred<{
         
     | 
| 
      
 940 
     | 
    
         
            +
                            created_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 941 
     | 
    
         
            +
                            modified_at: import("@balena/sbvr-types").Types["Date Time"]["Read"];
         
     | 
| 
      
 942 
     | 
    
         
            +
                            application: {
         
     | 
| 
      
 943 
     | 
    
         
            +
                                __id: Application["Read"]["id"];
         
     | 
| 
      
 944 
     | 
    
         
            +
                            } | [Application["Read"]];
         
     | 
| 
      
 945 
     | 
    
         
            +
                            name: import("@balena/sbvr-types").Types["Short Text"]["Read"];
         
     | 
| 
      
 946 
     | 
    
         
            +
                            id: import("@balena/sbvr-types").Types["Serial"]["Read"];
         
     | 
| 
      
 947 
     | 
    
         
            +
                            value: import("@balena/sbvr-types").Types["Text"]["Read"];
         
     | 
| 
      
 948 
     | 
    
         
            +
                        }, "name" | "value">[];
         
     | 
| 
      
 949 
     | 
    
         
            +
                    })[];
         
     | 
| 
       950 
950 
     | 
    
         
             
                })[];
         
     | 
| 
       951 
951 
     | 
    
         
             
            }>;
         
     | 
| 
       952 
952 
     | 
    
         
             
            export {};
         
     | 
| 
         @@ -21,13 +21,12 @@ if (ASYNC_TASKS_ENABLED && ASYNC_TASK_DELETE_REGISTRY_IMAGES_ENABLED) { 
     | 
|
| 
       21 
21 
     | 
    
         
             
                                },
         
     | 
| 
       22 
22 
     | 
    
         
             
                            },
         
     | 
| 
       23 
23 
     | 
    
         
             
                        });
         
     | 
| 
       24 
     | 
    
         
            -
                         
     | 
| 
       25 
     | 
    
         
            -
                            image.is_stored_at__image_location,
         
     | 
| 
       26 
     | 
    
         
            -
                            image.content_hash,
         
     | 
| 
       27 
     | 
    
         
            -
                        ]);
         
     | 
| 
       28 
     | 
    
         
            -
                        if (imagesToCleanup.length > 0) {
         
     | 
| 
      
 24 
     | 
    
         
            +
                        if (images.length > 0) {
         
     | 
| 
       29 
25 
     | 
    
         
             
                            request.custom.imagesToCleanup =
         
     | 
| 
       30 
     | 
    
         
            -
                                 
     | 
| 
      
 26 
     | 
    
         
            +
                                images.map((image) => [
         
     | 
| 
      
 27 
     | 
    
         
            +
                                    image.is_stored_at__image_location,
         
     | 
| 
      
 28 
     | 
    
         
            +
                                    image.content_hash,
         
     | 
| 
      
 29 
     | 
    
         
            +
                                ]);
         
     | 
| 
       31 
30 
     | 
    
         
             
                        }
         
     | 
| 
       32 
31 
     | 
    
         
             
                    },
         
     | 
| 
       33 
32 
     | 
    
         
             
                    POSTRUN: async ({ request, tx }) => {
         
     | 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"delete-registry-images.js","sourceRoot":"","sources":["../../../../src/features/images/hooks/delete-registry-images.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,CAAC,MAAM,QAAQ,CAAC;AAEvB,OAAO,EACN,wBAAwB,EACxB,4CAA4C,EAC5C,yCAAyC,EACzC,gDAAgD,EAChD,mBAAmB,GACnB,MAAM,wBAAwB,CAAC;AAMhC,IAAI,mBAAmB,IAAI,yCAAyC,EAAE,CAAC;IACtE,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE;QAC7C,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACtB,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;YAC9B,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YACzD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO;YACR,CAAC;YAED,6DAA6D;YAC7D,+DAA+D;YAC/D,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC;gBAC5B,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE;oBACR,OAAO,EAAE,CAAC,8BAA8B,EAAE,cAAc,CAAC;oBACzD,OAAO,EAAE;wBACR,EAAE,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE;wBACxB,YAAY,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE;qBAC3B;iBACD;aACD,CAAC,CAAC;YACH,MAAM, 
     | 
| 
      
 1 
     | 
    
         
            +
            {"version":3,"file":"delete-registry-images.js","sourceRoot":"","sources":["../../../../src/features/images/hooks/delete-registry-images.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,CAAC,MAAM,QAAQ,CAAC;AAEvB,OAAO,EACN,wBAAwB,EACxB,4CAA4C,EAC5C,yCAAyC,EACzC,gDAAgD,EAChD,mBAAmB,GACnB,MAAM,wBAAwB,CAAC;AAMhC,IAAI,mBAAmB,IAAI,yCAAyC,EAAE,CAAC;IACtE,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE;QAC7C,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACtB,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;YAC9B,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YACzD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO;YACR,CAAC;YAED,6DAA6D;YAC7D,+DAA+D;YAC/D,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC;gBAC5B,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE;oBACR,OAAO,EAAE,CAAC,8BAA8B,EAAE,cAAc,CAAC;oBACzD,OAAO,EAAE;wBACR,EAAE,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE;wBACxB,YAAY,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE;qBAC3B;iBACD;aACD,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,OAAO,CAAC,MAAoC,CAAC,eAAe;oBAC5D,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;wBACrB,KAAK,CAAC,4BAA4B;wBAClC,KAAK,CAAC,YAAa;qBACnB,CAAC,CAAC;YACL,CAAC;QACF,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE;YAClC,MAAM,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,MAAmC,CAAC;YACxE,IAAI,eAAe,IAAI,IAAI,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7D,OAAO;YACR,CAAC;YAED,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CACrB,eAAe,EACf,4CAA4C,CAC5C,CAAC;YACF,MAAM,OAAO,CAAC,GAAG,CAChB,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACpB,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;gBACxB,QAAQ,EAAE,MAAM;gBAChB,WAAW,EAAE,EAAE,GAAG,EAAE,WAAW,CAAC,IAAI,EAAE,EAAE,EAAE;gBAC1C,IAAI,EAAE;oBACL,uBAAuB,EAAE,wBAAwB;oBACjD,+BAA+B,EAAE;wBAChC,MAAM,EAAE,KAAK;qBAC4B;oBAC1C,gCAAgC,EAAE,IAAI,IAAI,CACzC,IAAI,CAAC,GAAG,EAAE;wBACT,gDAAgD,GAAG,IAAI,CACxD;oBACD,aAAa,EAAE,wBAAwB;iBACvC;aACD,CAAC,CACF,CACD,CAAC;QACH,CAAC;KACD,CAAC,CAAC;AACJ,CAAC"}
         
     | 
| 
         @@ -26,9 +26,9 @@ const schema = { 
     | 
|
| 
       26 
26 
     | 
    
         
             
                },
         
     | 
| 
       27 
27 
     | 
    
         
             
                required: ['images'],
         
     | 
| 
       28 
28 
     | 
    
         
             
            };
         
     | 
| 
       29 
     | 
    
         
            -
            const  
     | 
| 
       30 
     | 
    
         
            -
            const logHeader =  
     | 
| 
       31 
     | 
    
         
            -
            tasks.addTaskHandler( 
     | 
| 
      
 29 
     | 
    
         
            +
            const handlerName = 'delete_registry_images';
         
     | 
| 
      
 30 
     | 
    
         
            +
            const logHeader = handlerName.replace(/_/g, '-');
         
     | 
| 
      
 31 
     | 
    
         
            +
            tasks.addTaskHandler(handlerName, async (options) => {
         
     | 
| 
       32 
32 
     | 
    
         
             
                try {
         
     | 
| 
       33 
33 
     | 
    
         
             
                    const images = options.params.images ?? [];
         
     | 
| 
       34 
34 
     | 
    
         
             
                    if (images.length === 0) {
         
     | 
| 
         @@ -62,6 +62,10 @@ tasks.addTaskHandler(name, async (options) => { 
     | 
|
| 
       62 
62 
     | 
    
         
             
                        const safeToDelete = chunk.filter(([repo, hash]) => !stillReferenced.some((image) => image.is_stored_at__image_location === repo &&
         
     | 
| 
       63 
63 
     | 
    
         
             
                            image.content_hash === hash));
         
     | 
| 
       64 
64 
     | 
    
         
             
                        for (const [repo, hash] of safeToDelete) {
         
     | 
| 
      
 65 
     | 
    
         
            +
                            if (repo === '' || hash === '') {
         
     | 
| 
      
 66 
     | 
    
         
            +
                                console.warn(`[${logHeader}] Skipping deletion of image with empty repo or hash: ${repo}/${hash}`);
         
     | 
| 
      
 67 
     | 
    
         
            +
                                continue;
         
     | 
| 
      
 68 
     | 
    
         
            +
                            }
         
     | 
| 
       65 
69 
     | 
    
         
             
                            await markForDeletion(repo, hash);
         
     | 
| 
       66 
70 
     | 
    
         
             
                        }
         
     | 
| 
       67 
71 
     | 
    
         
             
                    }
         
     | 
| 
         @@ -119,12 +123,14 @@ async function markForDeletion(repo, hash) { 
     | 
|
| 
       119 
123 
     | 
    
         
             
                        }
         
     | 
| 
       120 
124 
     | 
    
         
             
                        // Apply some jitter for good measure
         
     | 
| 
       121 
125 
     | 
    
         
             
                        delay += Math.random() * 1000;
         
     | 
| 
       122 
     | 
    
         
            -
                        console.warn(`[${logHeader}] Received 429 for ${repo}/${hash}. Retrying in ${delay}ms 
     | 
| 
      
 126 
     | 
    
         
            +
                        console.warn(`[${logHeader}] Received 429 for ${repo}/${hash}. Retrying in ${delay}ms...`);
         
     | 
| 
       123 
127 
     | 
    
         
             
                        await setTimeout(delay);
         
     | 
| 
       124 
128 
     | 
    
         
             
                    }
         
     | 
| 
       125 
129 
     | 
    
         
             
                    else {
         
     | 
| 
       126 
130 
     | 
    
         
             
                        throw new Error(`Failed to mark ${repo}/${hash} for deletion: [${statusCode}] ${statusMessage}`);
         
     | 
| 
       127 
131 
     | 
    
         
             
                    }
         
     | 
| 
      
 132 
     | 
    
         
            +
                    // If we get here, it means we ran out of retries due to rate limiting
         
     | 
| 
      
 133 
     | 
    
         
            +
                    throw new Error(`Failed to mark ${repo}/${hash} for deletion: exceeded retry limit due to rate limiting`);
         
     | 
| 
       128 
134 
     | 
    
         
             
                }
         
     | 
| 
       129 
135 
     | 
    
         
             
            }
         
     | 
| 
       130 
136 
     | 
    
         
             
            //# sourceMappingURL=delete-registry-images.js.map
         
     | 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"delete-registry-images.js","sourceRoot":"","sources":["../../../../src/features/images/tasks/delete-registry-images.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,CAAC,MAAM,QAAQ,CAAC;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACN,4CAA4C,EAC5C,cAAc,GACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,MAAM,EAAE,GAAG,EAAE,GAAG,SAAS,CAAC;AAE1B,4BAA4B;AAC5B,MAAM,KAAK,GAAG,GAAG,CAAC;AAClB,MAAM,qBAAqB,GAAG,IAAI,CAAC;AACnC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAE7B,MAAM,MAAM,GAAG;IACd,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACX,MAAM,EAAE;YACP,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACN,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE;oBACN,IAAI,EAAE,QAAQ;iBACd;gBACD,QAAQ,EAAE,CAAC;gBACX,QAAQ,EAAE,CAAC;aACX;SACD;KACD;IACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;CACpB,CAAC;AAMF,MAAM, 
     | 
| 
      
 1 
     | 
    
         
            +
            {"version":3,"file":"delete-registry-images.js","sourceRoot":"","sources":["../../../../src/features/images/tasks/delete-registry-images.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,CAAC,MAAM,QAAQ,CAAC;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACN,4CAA4C,EAC5C,cAAc,GACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,MAAM,EAAE,GAAG,EAAE,GAAG,SAAS,CAAC;AAE1B,4BAA4B;AAC5B,MAAM,KAAK,GAAG,GAAG,CAAC;AAClB,MAAM,qBAAqB,GAAG,IAAI,CAAC;AACnC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAE7B,MAAM,MAAM,GAAG;IACd,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACX,MAAM,EAAE;YACP,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACN,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE;oBACN,IAAI,EAAE,QAAQ;iBACd;gBACD,QAAQ,EAAE,CAAC;gBACX,QAAQ,EAAE,CAAC;aACX;SACD;KACD;IACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;CACpB,CAAC;AAMF,MAAM,WAAW,GAAG,wBAAwB,CAAC;AAC7C,MAAM,SAAS,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AACjD,KAAK,CAAC,cAAc,CACnB,WAAW,EACX,KAAK,EAAE,OAAO,EAAE,EAAE;IACjB,IAAI,CAAC;QACJ,MAAM,MAAM,GACV,OAAO,CAAC,MAAyC,CAAC,MAAM,IAAI,EAAE,CAAC;QACjE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO;gBACN,MAAM,EAAE,WAAW;aACnB,CAAC;QACH,CAAC;QAED,4EAA4E;QAC5E,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,KAAK,CAC1B,MAAM,EACN,4CAA4C,CAC5C,EAAE,CAAC;YACH,qEAAqE;YACrE,uEAAuE;YACvE,uEAAuE;YACvE,MAAM,eAAe,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;gBAC3C,QAAQ,EAAE,OAAO;gBACjB,WAAW,EAAE,EAAE,GAAG,EAAE,WAAW,CAAC,QAAQ,EAAE;gBAC1C,OAAO,EAAE;oBACR,OAAO,EAAE,CAAC,IAAI,EAAE,8BAA8B,EAAE,cAAc,CAAC;oBAC/D,OAAO,EACN,KAAK,CAAC,MAAM,KAAK,CAAC;wBACjB,CAAC,CAAC;4BACA,4BAA4B,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BACzC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;yBACzB;wBACF,CAAC,CAAC;4BACA,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gCACjC,4BAA4B,EAAE,IAAI;gCAClC,YAAY,EAAE,IAAI;6BAClB,CAAC,CAAC;yBACH;iBACJ;aACD,CAAC,CAAC;YACH,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAChC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAChB,CAAC,eAAe,CAAC,IAAI,CACpB,CAAC,KAAK,EAAE,EAAE,CACT,KAAK,CAAC,4BAA4B,KAAK,IAAI;gBAC3C,KAAK,CAAC,YAAY,KAAK,IAAI,CAC5B,CACF,CAAC;YACF,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,YAAY,EAAE,CAAC;gBACzC,IAAI,IAAI,KAAK,EAAE,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;oBAChC,OAAO,CAAC,IAAI,CACX,IAAI,SAAS,yDAAyD,IAAI,IAAI,IAAI,EAAE,CACpF,CAAC;oBACF,SAAS;gBACV,CAAC;gBACD,MAAM,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACnC,CAAC;QACF,CAAC;QAED,OAAO;YACN,MAAM,EAAE,WAAW;SACnB,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,IAAI,SAAS,wCAAwC,CAAC,EAAE,CAAC,CAAC;QACxE,OAAO;YACN,KAAK,EAAE,GAAG,CAAC,EAAE;YACb,MAAM,EAAE,QAAQ;SAChB,CAAC;IACH,CAAC;AACF,CAAC,EACD,MAAM,CACN,CAAC;AAEF,kGAAkG;AAClG,KAAK,UAAU,eAAe,CAAC,IAAY,EAAE,IAAY;IACxD,uDAAuD;IACvD,MAAM,KAAK,GAAG,aAAa,CAAC,OAAO,EAAE,cAAc,EAAE;QACpD;YACC,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,CAAC,QAAQ,CAAC;SACnB;KACD,CAAC,CAAC;IAEH,yEAAyE;IACzE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,kBAAkB,EAAE,OAAO,EAAE,EAAE,CAAC;QAC/D,MAAM,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,GAAG,MAAM,YAAY,CAAC;YACnE,GAAG,EAAE,WAAW,cAAc,OAAO,IAAI,cAAc,IAAI,EAAE;YAC7D,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE;YAC7C,MAAM,EAAE,QAAQ;SAChB,CAAC,CAAC;QAEH,iCAAiC;QACjC,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;YAC9C,MAAM,UAAU,CAAC,KAAK,CAAC,CAAC;YACxB,OAAO;QACR,CAAC;aAAM,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;YAC/B,6CAA6C;YAC7C,IAAI,KAAK,GAAG,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAEzD,gDAAgD;YAChD,MAAM,gBAAgB,GAAG,OAAO,EAAE,CAAC,aAAa,CAAC,CAAC;YAClD,IAAI,gBAAgB,EAAE,CAAC;gBACtB,MAAM,WAAW,GAAG,QAAQ,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;gBACnD,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;oBACzB,KAAK,GAAG,WAAW,GAAG,IAAI,CAAC;gBAC5B,CAAC;qBAAM,CAAC;oBACP,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;oBAC/C,MAAM,UAAU,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBAC1C,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;wBACpB,KAAK,GAAG,UAAU,CAAC;oBACpB,CAAC;gBACF,CAAC;YACF,CAAC;YAED,qCAAqC;YACrC,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;YAE9B,OAAO,CAAC,IAAI,CACX,IAAI,SAAS,sBAAsB,IAAI,IAAI,IAAI,iBAAiB,KAAK,OAAO,CAC5E,CAAC;YACF,MAAM,UAAU,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,KAAK,CACd,kBAAkB,IAAI,IAAI,IAAI,mBAAmB,UAAU,KAAK,aAAa,EAAE,CAC/E,CAAC;QACH,CAAC;QAED,sEAAsE;QACtE,MAAM,IAAI,KAAK,CACd,kBAAkB,IAAI,IAAI,IAAI,0DAA0D,CACxF,CAAC;IACH,CAAC;AACF,CAAC"}
         
     | 
    
        package/package.json
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            {
         
     | 
| 
       2 
2 
     | 
    
         
             
              "name": "@balena/open-balena-api",
         
     | 
| 
       3 
3 
     | 
    
         
             
              "description": "Internet of things, Made Simple",
         
     | 
| 
       4 
     | 
    
         
            -
              "version": "43.1.0-build-joshbwlng-releases- 
     | 
| 
      
 4 
     | 
    
         
            +
              "version": "43.1.0-build-joshbwlng-releases-f453f27106ff517a51d5180e8a43f2a0017fce2f-1",
         
     | 
| 
       5 
5 
     | 
    
         
             
              "license": "AGPL-3.0",
         
     | 
| 
       6 
6 
     | 
    
         
             
              "repository": {
         
     | 
| 
       7 
7 
     | 
    
         
             
                "type": "git",
         
     | 
| 
         @@ -45,14 +45,14 @@ 
     | 
|
| 
       45 
45 
     | 
    
         
             
                "prepare": "node -e \"try { (await import('husky')).default() } catch (e) { if (e.code !== 'ERR_MODULE_NOT_FOUND') throw e }\" --input-type module"
         
     | 
| 
       46 
46 
     | 
    
         
             
              },
         
     | 
| 
       47 
47 
     | 
    
         
             
              "dependencies": {
         
     | 
| 
       48 
     | 
    
         
            -
                "@balena/abstract-sql-compiler": "^11.2. 
     | 
| 
      
 48 
     | 
    
         
            +
                "@balena/abstract-sql-compiler": "^11.2.3",
         
     | 
| 
       49 
49 
     | 
    
         
             
                "@balena/abstract-sql-to-typescript": "^6.1.2",
         
     | 
| 
       50 
     | 
    
         
            -
                "@balena/env-parsing": "^1.2. 
     | 
| 
      
 50 
     | 
    
         
            +
                "@balena/env-parsing": "^1.2.6",
         
     | 
| 
       51 
51 
     | 
    
         
             
                "@balena/es-version": "^1.0.3",
         
     | 
| 
       52 
52 
     | 
    
         
             
                "@balena/node-metrics-gatherer": "^6.0.3",
         
     | 
| 
       53 
     | 
    
         
            -
                "@balena/pinejs": "^23.1. 
     | 
| 
       54 
     | 
    
         
            -
                "@balena/pinejs-webresource-cloudfront": "^2.0. 
     | 
| 
       55 
     | 
    
         
            -
                "@balena/pinejs-webresource-s3": "^2.1. 
     | 
| 
      
 53 
     | 
    
         
            +
                "@balena/pinejs": "^23.1.14",
         
     | 
| 
      
 54 
     | 
    
         
            +
                "@balena/pinejs-webresource-cloudfront": "^2.0.1",
         
     | 
| 
      
 55 
     | 
    
         
            +
                "@balena/pinejs-webresource-s3": "^2.1.10",
         
     | 
| 
       56 
56 
     | 
    
         
             
                "@opentelemetry/api": "^1.9.0",
         
     | 
| 
       57 
57 
     | 
    
         
             
                "@opentelemetry/instrumentation-express": "^0.47.1",
         
     | 
| 
       58 
58 
     | 
    
         
             
                "@opentelemetry/instrumentation-http": "^0.57.2",
         
     | 
| 
         @@ -69,14 +69,14 @@ 
     | 
|
| 
       69 
69 
     | 
    
         
             
                "@types/cookie-session": "^2.0.49",
         
     | 
| 
       70 
70 
     | 
    
         
             
                "@types/escape-html": "^1.0.4",
         
     | 
| 
       71 
71 
     | 
    
         
             
                "@types/express": "^4.17.23",
         
     | 
| 
       72 
     | 
    
         
            -
                "@types/express-serve-static-core": "^4.19. 
     | 
| 
      
 72 
     | 
    
         
            +
                "@types/express-serve-static-core": "^4.19.7",
         
     | 
| 
       73 
73 
     | 
    
         
             
                "@types/json-schema": "^7.0.15",
         
     | 
| 
       74 
74 
     | 
    
         
             
                "@types/jsonwebtoken": "^9.0.10",
         
     | 
| 
       75 
75 
     | 
    
         
             
                "@types/lodash": "^4.17.20",
         
     | 
| 
       76 
76 
     | 
    
         
             
                "@types/memoizee": "^0.4.12",
         
     | 
| 
       77 
77 
     | 
    
         
             
                "@types/morgan": "^1.9.10",
         
     | 
| 
       78 
78 
     | 
    
         
             
                "@types/ndjson": "^2.0.4",
         
     | 
| 
       79 
     | 
    
         
            -
                "@types/node": "^24. 
     | 
| 
      
 79 
     | 
    
         
            +
                "@types/node": "^24.7.2",
         
     | 
| 
       80 
80 
     | 
    
         
             
                "@types/node-schedule": "^2.1.8",
         
     | 
| 
       81 
81 
     | 
    
         
             
                "@types/on-finished": "^2.3.5",
         
     | 
| 
       82 
82 
     | 
    
         
             
                "@types/passport-jwt": "^4.0.1",
         
     | 
| 
         @@ -106,7 +106,7 @@ 
     | 
|
| 
       106 
106 
     | 
    
         
             
                "eventemitter3": "^5.0.1",
         
     | 
| 
       107 
107 
     | 
    
         
             
                "express": "^4.21.2",
         
     | 
| 
       108 
108 
     | 
    
         
             
                "fast-glob": "^3.3.3",
         
     | 
| 
       109 
     | 
    
         
            -
                "ioredis": "^5. 
     | 
| 
      
 109 
     | 
    
         
            +
                "ioredis": "^5.8.1",
         
     | 
| 
       110 
110 
     | 
    
         
             
                "ipaddr.js": "^2.2.0",
         
     | 
| 
       111 
111 
     | 
    
         
             
                "jsonwebtoken": "^9.0.2",
         
     | 
| 
       112 
112 
     | 
    
         
             
                "lodash": "^4.17.21",
         
     | 
| 
         @@ -117,45 +117,45 @@ 
     | 
|
| 
       117 
117 
     | 
    
         
             
                "node-schedule": "^2.1.1",
         
     | 
| 
       118 
118 
     | 
    
         
             
                "on-finished": "^2.4.1",
         
     | 
| 
       119 
119 
     | 
    
         
             
                "p-map": "^7.0.3",
         
     | 
| 
       120 
     | 
    
         
            -
                "p-props": "^6. 
     | 
| 
      
 120 
     | 
    
         
            +
                "p-props": "^6.1.0",
         
     | 
| 
       121 
121 
     | 
    
         
             
                "passport": "^0.7.0",
         
     | 
| 
       122 
122 
     | 
    
         
             
                "passport-jwt": "^4.0.1",
         
     | 
| 
       123 
     | 
    
         
            -
                "pinejs-client-core": "^8. 
     | 
| 
      
 123 
     | 
    
         
            +
                "pinejs-client-core": "^8.4.0",
         
     | 
| 
       124 
124 
     | 
    
         
             
                "proxy-addr": "^2.0.7",
         
     | 
| 
       125 
125 
     | 
    
         
             
                "randomstring": "^1.3.1",
         
     | 
| 
       126 
     | 
    
         
            -
                "rate-limiter-flexible": "^ 
     | 
| 
      
 126 
     | 
    
         
            +
                "rate-limiter-flexible": "^8.1.0",
         
     | 
| 
       127 
127 
     | 
    
         
             
                "redis": "^4.7.1",
         
     | 
| 
       128 
128 
     | 
    
         
             
                "redlock": "^4.2.0",
         
     | 
| 
       129 
129 
     | 
    
         
             
                "request": "^2.88.2",
         
     | 
| 
       130 
130 
     | 
    
         
             
                "rsmq": "^0.12.4",
         
     | 
| 
       131 
     | 
    
         
            -
                "semver": "^7.7. 
     | 
| 
       132 
     | 
    
         
            -
                "snappy": "^7.3. 
     | 
| 
      
 131 
     | 
    
         
            +
                "semver": "^7.7.3",
         
     | 
| 
      
 132 
     | 
    
         
            +
                "snappy": "^7.3.3",
         
     | 
| 
       133 
133 
     | 
    
         
             
                "statuses": "^2.0.2",
         
     | 
| 
       134 
134 
     | 
    
         
             
                "strict-event-emitter-types": "^2.0.0",
         
     | 
| 
       135 
135 
     | 
    
         
             
                "supervisor": "^0.12.0",
         
     | 
| 
       136 
     | 
    
         
            -
                "tar": "^7. 
     | 
| 
      
 136 
     | 
    
         
            +
                "tar": "^7.5.1",
         
     | 
| 
       137 
137 
     | 
    
         
             
                "thirty-two": "^1.0.2",
         
     | 
| 
       138 
138 
     | 
    
         
             
                "typed-error": "^3.2.2",
         
     | 
| 
       139 
     | 
    
         
            -
                "typescript": "^5.9. 
     | 
| 
       140 
     | 
    
         
            -
                "uuid": "^ 
     | 
| 
      
 139 
     | 
    
         
            +
                "typescript": "^5.9.3",
         
     | 
| 
      
 140 
     | 
    
         
            +
                "uuid": "^13.0.0",
         
     | 
| 
       141 
141 
     | 
    
         
             
                "validator": "^13.15.15",
         
     | 
| 
       142 
142 
     | 
    
         
             
                "ws": "^8.18.3"
         
     | 
| 
       143 
143 
     | 
    
         
             
              },
         
     | 
| 
       144 
144 
     | 
    
         
             
              "devDependencies": {
         
     | 
| 
       145 
     | 
    
         
            -
                "@balena/lint": "^9.3. 
     | 
| 
      
 145 
     | 
    
         
            +
                "@balena/lint": "^9.3.8",
         
     | 
| 
       146 
146 
     | 
    
         
             
                "@types/chai": "^5.2.2",
         
     | 
| 
       147 
147 
     | 
    
         
             
                "@types/mocha": "^10.0.10",
         
     | 
| 
       148 
148 
     | 
    
         
             
                "@types/mockery": "^1.4.33",
         
     | 
| 
       149 
149 
     | 
    
         
             
                "@types/sinon": "^17.0.4",
         
     | 
| 
       150 
150 
     | 
    
         
             
                "@types/supertest": "^6.0.3",
         
     | 
| 
       151 
151 
     | 
    
         
             
                "@types/temp": "^0.9.4",
         
     | 
| 
       152 
     | 
    
         
            -
                "chai": "^6.0 
     | 
| 
      
 152 
     | 
    
         
            +
                "chai": "^6.2.0",
         
     | 
| 
       153 
153 
     | 
    
         
             
                "copyfiles": "^2.4.1",
         
     | 
| 
       154 
154 
     | 
    
         
             
                "husky": "^9.1.7",
         
     | 
| 
       155 
     | 
    
         
            -
                "lint-staged": "^16. 
     | 
| 
       156 
     | 
    
         
            -
                "mocha": "^11.7. 
     | 
| 
      
 155 
     | 
    
         
            +
                "lint-staged": "^16.2.4",
         
     | 
| 
      
 156 
     | 
    
         
            +
                "mocha": "^11.7.4",
         
     | 
| 
       157 
157 
     | 
    
         
             
                "nock": "^13.5.6",
         
     | 
| 
       158 
     | 
    
         
            -
                "p-timeout": "^7.0. 
     | 
| 
      
 158 
     | 
    
         
            +
                "p-timeout": "^7.0.1",
         
     | 
| 
       159 
159 
     | 
    
         
             
                "pinejs-client-supertest": "^3.1.1",
         
     | 
| 
       160 
160 
     | 
    
         
             
                "rimraf": "^6.0.1",
         
     | 
| 
       161 
161 
     | 
    
         
             
                "sinon": "^21.0.0",
         
     | 
| 
         @@ -175,6 +175,6 @@ 
     | 
|
| 
       175 
175 
     | 
    
         
             
                "import": "@swc-node/register/esm-register"
         
     | 
| 
       176 
176 
     | 
    
         
             
              },
         
     | 
| 
       177 
177 
     | 
    
         
             
              "versionist": {
         
     | 
| 
       178 
     | 
    
         
            -
                "publishedAt": "2025-10- 
     | 
| 
      
 178 
     | 
    
         
            +
                "publishedAt": "2025-10-16T05:54:47.781Z"
         
     | 
| 
       179 
179 
     | 
    
         
             
              }
         
     | 
| 
       180 
180 
     | 
    
         
             
            }
         
     |