@camstack/types 1.1.39 → 1.1.40

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/addon.js CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_sleep = require("./sleep-BtS3xMHv.js");
2
+ const require_sleep = require("./sleep-Dqd2OlRi.js");
3
3
  const require_err_msg = require("./err-msg-COpsHMw2.js");
4
4
  exports.BaseAddon = require_sleep.BaseAddon;
5
5
  exports.DATAPLANE_SECRET_HEADER = require_sleep.DATAPLANE_SECRET_HEADER;
package/dist/addon.mjs CHANGED
@@ -1,3 +1,3 @@
1
- import { A as DATAPLANE_SECRET_HEADER, E as asString, F as scopeKey, M as ReadinessTimeoutError, a as viewerUiCapability, bt as DisposerChain, ct as normalizeAddonInitResult, dt as emitReadiness, i as deviceOpsCapability, j as ReadinessRegistry, k as parseJsonUnknown, m as expandCapMethods, o as adminUiCapability, s as createDeviceProxy, st as BaseAddon, t as sleep, w as asJsonObject, x as DeviceType, yt as EventCategory } from "./sleep-DJaTV2D7.mjs";
1
+ import { A as parseJsonUnknown, D as asString, I as scopeKey, M as ReadinessRegistry, N as ReadinessTimeoutError, S as DeviceType, T as asJsonObject, a as viewerUiCapability, bt as EventCategory, ct as BaseAddon, ft as emitReadiness, i as deviceOpsCapability, j as DATAPLANE_SECRET_HEADER, lt as normalizeAddonInitResult, m as expandCapMethods, o as adminUiCapability, s as createDeviceProxy, t as sleep, xt as DisposerChain } from "./sleep-b4Jf2n33.mjs";
2
2
  import { t as errMsg } from "./err-msg-IQTHeDzc.mjs";
3
3
  export { BaseAddon, DATAPLANE_SECRET_HEADER, DeviceType, DisposerChain, EventCategory, ReadinessRegistry, ReadinessTimeoutError, adminUiCapability, asJsonObject, asString, createDeviceProxy, deviceOpsCapability, emitReadiness, errMsg, expandCapMethods, normalizeAddonInitResult, parseJsonUnknown, scopeKey, sleep, viewerUiCapability };
@@ -61,6 +61,14 @@ export interface CapabilityMethodSchema<TInput extends z.ZodType = z.ZodType, TO
61
61
  readonly access?: CapabilityMethodAccess;
62
62
  /** Moleculer action timeout override (ms). Overrides broker global requestTimeout for this action only. */
63
63
  readonly timeoutMs?: number;
64
+ /**
65
+ * When true the method is served ONLY by the cap's system/wrapper provider —
66
+ * it is required on `InferProvider` but OPTIONAL on `InferNativeProvider`, so
67
+ * per-device driver natives (RtspCamera, OnvifCamera, …) don't stub out a
68
+ * wrapper-only concern (e.g. a cross-device cache-overview batch). Same
69
+ * rationale as the status-Partial on native providers.
70
+ */
71
+ readonly systemOnly?: boolean;
64
72
  }
65
73
  /** Schema for a capability event (emitted to EventBus) */
66
74
  export interface CapabilityEventSchema<TData extends z.ZodType = z.ZodType> {
@@ -659,8 +667,15 @@ export type InferProvider<T extends CapabilityDefinition> = {
659
667
  * separate stops every device class (RtspCamera, OnvifCamera, …) from
660
668
  * having to stub out three unused methods.
661
669
  */
670
+ type NativeMethodFn<M> = M extends CapabilityMethodSchema<infer TIn, infer TOut> ? M['kind'] extends 'subscription' ? (input: z.infer<TIn>, push: (value: z.infer<TOut>) => void) => (() => void) | void : (input: z.infer<TIn>) => Promise<z.infer<TOut>> : never;
662
671
  export type InferNativeProvider<T extends CapabilityDefinition> = {
663
- readonly [K in keyof T['methods']]: T['methods'][K] extends CapabilityMethodSchema<infer TIn, infer TOut> ? T['methods'][K]['kind'] extends 'subscription' ? (input: z.infer<TIn>, push: (value: z.infer<TOut>) => void) => (() => void) | void : (input: z.infer<TIn>) => Promise<z.infer<TOut>> : never;
672
+ readonly [K in keyof T['methods'] as T['methods'][K] extends {
673
+ systemOnly: true;
674
+ } ? never : K]: NativeMethodFn<T['methods'][K]>;
675
+ } & {
676
+ readonly [K in keyof T['methods'] as T['methods'][K] extends {
677
+ systemOnly: true;
678
+ } ? K : never]?: NativeMethodFn<T['methods'][K]>;
664
679
  } & (T extends {
665
680
  status: CapabilityStatusSchema;
666
681
  } ? Partial<DeviceStatusContribution<InferStatus<T>>> : Record<never, never>);
@@ -736,9 +751,19 @@ export interface CapabilityMethodOptions<TKind extends CapabilityMethodKind = Ca
736
751
  }
737
752
  /** Shorthand to define a method schema */
738
753
  export declare function method<TIn extends z.ZodType, TOut extends z.ZodType, TKind extends CapabilityMethodKind = 'query'>(input: TIn, output: TOut, options?: CapabilityMethodOptions<TKind>): CapabilityMethodSchema<TIn, TOut, TKind>;
754
+ /**
755
+ * A wrapper/system-only method: served exclusively by the cap's system-level
756
+ * provider (`InferProvider`), and OPTIONAL on `InferNativeProvider` so per-device
757
+ * driver natives don't stub out a wrapper concern (e.g. a cross-device cache
758
+ * overview). The `systemOnly: true` literal is what `InferNativeProvider` keys on.
759
+ */
760
+ export declare function systemMethod<TIn extends z.ZodType, TOut extends z.ZodType, TKind extends CapabilityMethodKind = 'query'>(input: TIn, output: TOut, options?: CapabilityMethodOptions<TKind>): CapabilityMethodSchema<TIn, TOut, TKind> & {
761
+ readonly systemOnly: true;
762
+ };
739
763
  /** Shorthand to define an event schema */
740
764
  export declare function event<TData extends z.ZodType>(data: TData): CapabilityEventSchema<TData>;
741
765
  /** Type guard: does this cap declare the D14 device-config archetype? */
742
766
  export declare function isDeviceConfigCap(def: CapabilityDefinition | undefined): def is CapabilityDefinition & {
743
767
  deviceConfig: DeviceConfigSpec;
744
768
  };
769
+ export {};
@@ -65,6 +65,23 @@ export declare const snapshotCapability: {
65
65
  readonly invalidateCache: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
66
66
  deviceId: z.ZodNumber;
67
67
  }, z.core.$strip>, z.ZodVoid, "mutation">;
68
+ /**
69
+ * Cache-only batch overview — answers from the wrapper's in-memory cache in
70
+ * O(n) and NEVER triggers a capture. Lets a grid skip requesting images for
71
+ * devices that never produced a frame, and gives it an ETag per device for
72
+ * conditional (304-able) image fetches. `lastCapturedAt`/`cacheAgeMs`/`etag`
73
+ * are null for a device with no cached frame.
74
+ */
75
+ readonly getSnapshotOverview: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
76
+ deviceIds: z.ZodArray<z.ZodNumber>;
77
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
78
+ deviceId: z.ZodNumber;
79
+ lastCapturedAt: z.ZodNullable<z.ZodNumber>;
80
+ cacheAgeMs: z.ZodNullable<z.ZodNumber>;
81
+ etag: z.ZodNullable<z.ZodString>;
82
+ }, z.core.$strip>>, import("./capability-definition.js").CapabilityMethodKind> & {
83
+ readonly systemOnly: true;
84
+ };
68
85
  };
69
86
  readonly status: {
70
87
  readonly schema: z.ZodObject<{
@@ -12060,6 +12060,19 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
12060
12060
  output: void;
12061
12061
  meta: object;
12062
12062
  }>;
12063
+ getSnapshotOverview: import("@trpc/server").TRPCQueryProcedure<{
12064
+ input: {
12065
+ [x: string]: unknown;
12066
+ deviceIds: number[];
12067
+ };
12068
+ output: {
12069
+ deviceId: number;
12070
+ lastCapturedAt: number | null;
12071
+ cacheAgeMs: number | null;
12072
+ etag: string | null;
12073
+ }[];
12074
+ meta: object;
12075
+ }>;
12063
12076
  }>>;
12064
12077
  ssoBridge: import("@trpc/server").TRPCBuiltRouter<{
12065
12078
  ctx: TrpcContext;
@@ -26963,6 +26976,19 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
26963
26976
  output: void;
26964
26977
  meta: object;
26965
26978
  }>;
26979
+ getSnapshotOverview: import("@trpc/server").TRPCQueryProcedure<{
26980
+ input: {
26981
+ [x: string]: unknown;
26982
+ deviceIds: number[];
26983
+ };
26984
+ output: {
26985
+ deviceId: number;
26986
+ lastCapturedAt: number | null;
26987
+ cacheAgeMs: number | null;
26988
+ etag: string | null;
26989
+ }[];
26990
+ meta: object;
26991
+ }>;
26966
26992
  }>>;
26967
26993
  ssoBridge: import("@trpc/server").TRPCBuiltRouter<{
26968
26994
  ctx: TrpcContext;
@@ -6,7 +6,7 @@
6
6
  * scope+access check inside `protectedProcedure` (see
7
7
  * `server/backend/src/api/trpc/trpc.middleware.ts`).
8
8
  *
9
- * Coverage: 734 method paths across 112 capabilities.
9
+ * Coverage: 735 method paths across 112 capabilities.
10
10
  */
11
11
  import type { CapabilityMethodAccess } from '../capabilities/capability-definition.js';
12
12
  export interface MethodAccessRecord {
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_sleep = require("./sleep-BtS3xMHv.js");
2
+ const require_sleep = require("./sleep-Dqd2OlRi.js");
3
3
  const require_err_msg = require("./err-msg-COpsHMw2.js");
4
4
  let zod = require("zod");
5
5
  //#region src/health/wiring-health.ts
@@ -18751,7 +18751,20 @@ var snapshotCapability = {
18751
18751
  invalidateCache: require_sleep.method(zod.z.object({ deviceId: zod.z.number() }), zod.z.void(), {
18752
18752
  kind: "mutation",
18753
18753
  auth: "admin"
18754
- })
18754
+ }),
18755
+ /**
18756
+ * Cache-only batch overview — answers from the wrapper's in-memory cache in
18757
+ * O(n) and NEVER triggers a capture. Lets a grid skip requesting images for
18758
+ * devices that never produced a frame, and gives it an ETag per device for
18759
+ * conditional (304-able) image fetches. `lastCapturedAt`/`cacheAgeMs`/`etag`
18760
+ * are null for a device with no cached frame.
18761
+ */
18762
+ getSnapshotOverview: require_sleep.systemMethod(zod.z.object({ deviceIds: zod.z.array(zod.z.number()).min(1).max(200) }), zod.z.array(zod.z.object({
18763
+ deviceId: zod.z.number(),
18764
+ lastCapturedAt: zod.z.number().nullable(),
18765
+ cacheAgeMs: zod.z.number().nullable(),
18766
+ etag: zod.z.string().nullable()
18767
+ })))
18755
18768
  },
18756
18769
  status: {
18757
18770
  schema: SnapshotStatusSchema,
@@ -27258,6 +27271,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
27258
27271
  addonId: null,
27259
27272
  access: "view"
27260
27273
  },
27274
+ "snapshot.getSnapshotOverview": {
27275
+ capName: "snapshot",
27276
+ capScope: "device",
27277
+ addonId: null,
27278
+ access: "view"
27279
+ },
27261
27280
  "snapshot.invalidateCache": {
27262
27281
  capName: "snapshot",
27263
27282
  capScope: "device",
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as SubscribeAudioChunksInputSchema, A as DATAPLANE_SECRET_HEADER, B as CamStreamKindSchema, C as asJsonArray, D as parseJsonArray, E as asString, F as scopeKey, G as EncodedPacketSchema, H as CameraStreamSchema, I as BrokerStatsSchema, J as ProfileRtspEntrySchema, K as FrameHandleFormatSchema, L as BrokerStatusSchema, M as ReadinessTimeoutError, N as emitDownForOwnedCaps, O as parseJsonObject, P as readinessKey, Q as StreamSourceSchema, R as CAM_PROFILE_ORDER, S as asBoolean, T as asNumber, U as DecodedAudioChunkSchema, V as CamStreamResolutionSchema, W as DecodedFrameSchema, X as ProfileSlotStatusSchema, Y as ProfileSlotSchema, Z as StreamSourceEntrySchema, _ as resolveCapMount, _t as hydrateSchema, a as viewerUiCapability, at as parseProfileBrokerId, b as DeviceRole, bt as DisposerChain, c as createLazyTrpcSource, ct as normalizeAddonInitResult, d as DEVICE_SETTINGS_CONTRIBUTION_METHODS, dt as emitReadiness, et as SubscribeAudioChunksResultSchema, f as DEVICE_STATUS_METHOD, ft as isEvent, g as method, gt as collectHydratedFieldValues, h as isDeviceConfigCap, ht as collectHydratedFieldEntries, i as deviceOpsCapability, it as makeSourceBrokerId, j as ReadinessRegistry, k as parseJsonUnknown, l as createMirrorSource, lt as createDurableState, m as expandCapMethods, mt as WELL_KNOWN_TAB_MAP, n as sleepCancellable, nt as SubscribeFramesResultSchema, o as adminUiCapability, ot as selectAssignedProfileSlots, p as event, pt as WELL_KNOWN_TABS, q as FrameHandleSchema, r as RawStateResultSchema, rt as makeProfileBrokerId, s as createDeviceProxy, st as BaseAddon, t as sleep, tt as SubscribeFramesInputSchema, u as createSliceHandle, ut as createEvent, v as ChargingStatus, vt as resolveHydratedFieldValue, w as asJsonObject, x as DeviceType, y as DeviceFeature, yt as EventCategory, z as CamProfileSchema } from "./sleep-DJaTV2D7.mjs";
1
+ import { $ as StreamSourceSchema, A as parseJsonUnknown, B as CamProfileSchema, C as asBoolean, D as asString, E as asNumber, F as readinessKey, G as DecodedFrameSchema, H as CamStreamResolutionSchema, I as scopeKey, J as FrameHandleSchema, K as EncodedPacketSchema, L as BrokerStatsSchema, M as ReadinessRegistry, N as ReadinessTimeoutError, O as parseJsonArray, P as emitDownForOwnedCaps, Q as StreamSourceEntrySchema, R as BrokerStatusSchema, S as DeviceType, T as asJsonObject, U as CameraStreamSchema, V as CamStreamKindSchema, W as DecodedAudioChunkSchema, X as ProfileSlotSchema, Y as ProfileRtspEntrySchema, Z as ProfileSlotStatusSchema, _ as resolveCapMount, _t as collectHydratedFieldValues, a as viewerUiCapability, at as makeSourceBrokerId, b as DeviceFeature, bt as EventCategory, c as createLazyTrpcSource, ct as BaseAddon, d as DEVICE_SETTINGS_CONTRIBUTION_METHODS, dt as createEvent, et as SubscribeAudioChunksInputSchema, f as DEVICE_STATUS_METHOD, ft as emitReadiness, g as method, gt as collectHydratedFieldEntries, h as isDeviceConfigCap, ht as WELL_KNOWN_TAB_MAP, i as deviceOpsCapability, it as makeProfileBrokerId, j as DATAPLANE_SECRET_HEADER, k as parseJsonObject, l as createMirrorSource, lt as normalizeAddonInitResult, m as expandCapMethods, mt as WELL_KNOWN_TABS, n as sleepCancellable, nt as SubscribeFramesInputSchema, o as adminUiCapability, ot as parseProfileBrokerId, p as event, pt as isEvent, q as FrameHandleFormatSchema, r as RawStateResultSchema, rt as SubscribeFramesResultSchema, s as createDeviceProxy, st as selectAssignedProfileSlots, t as sleep, tt as SubscribeAudioChunksResultSchema, u as createSliceHandle, ut as createDurableState, v as systemMethod, vt as hydrateSchema, w as asJsonArray, x as DeviceRole, xt as DisposerChain, y as ChargingStatus, yt as resolveHydratedFieldValue, z as CAM_PROFILE_ORDER } from "./sleep-b4Jf2n33.mjs";
2
2
  import { t as errMsg } from "./err-msg-IQTHeDzc.mjs";
3
3
  import { z } from "zod";
4
4
  //#region src/health/wiring-health.ts
@@ -18750,7 +18750,20 @@ var snapshotCapability = {
18750
18750
  invalidateCache: method(z.object({ deviceId: z.number() }), z.void(), {
18751
18751
  kind: "mutation",
18752
18752
  auth: "admin"
18753
- })
18753
+ }),
18754
+ /**
18755
+ * Cache-only batch overview — answers from the wrapper's in-memory cache in
18756
+ * O(n) and NEVER triggers a capture. Lets a grid skip requesting images for
18757
+ * devices that never produced a frame, and gives it an ETag per device for
18758
+ * conditional (304-able) image fetches. `lastCapturedAt`/`cacheAgeMs`/`etag`
18759
+ * are null for a device with no cached frame.
18760
+ */
18761
+ getSnapshotOverview: systemMethod(z.object({ deviceIds: z.array(z.number()).min(1).max(200) }), z.array(z.object({
18762
+ deviceId: z.number(),
18763
+ lastCapturedAt: z.number().nullable(),
18764
+ cacheAgeMs: z.number().nullable(),
18765
+ etag: z.string().nullable()
18766
+ })))
18754
18767
  },
18755
18768
  status: {
18756
18769
  schema: SnapshotStatusSchema,
@@ -27257,6 +27270,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
27257
27270
  addonId: null,
27258
27271
  access: "view"
27259
27272
  },
27273
+ "snapshot.getSnapshotOverview": {
27274
+ capName: "snapshot",
27275
+ capScope: "device",
27276
+ addonId: null,
27277
+ access: "view"
27278
+ },
27260
27279
  "snapshot.invalidateCache": {
27261
27280
  capName: "snapshot",
27262
27281
  capScope: "device",
@@ -2853,6 +2853,18 @@ function method(input, output, options) {
2853
2853
  timeoutMs: options?.timeoutMs
2854
2854
  };
2855
2855
  }
2856
+ /**
2857
+ * A wrapper/system-only method: served exclusively by the cap's system-level
2858
+ * provider (`InferProvider`), and OPTIONAL on `InferNativeProvider` so per-device
2859
+ * driver natives don't stub out a wrapper concern (e.g. a cross-device cache
2860
+ * overview). The `systemOnly: true` literal is what `InferNativeProvider` keys on.
2861
+ */
2862
+ function systemMethod(input, output, options) {
2863
+ return {
2864
+ ...method(input, output, options),
2865
+ systemOnly: true
2866
+ };
2867
+ }
2856
2868
  /** Shorthand to define an event schema */
2857
2869
  function event(data) {
2858
2870
  return { data };
@@ -3443,6 +3455,7 @@ function createDeviceProxy(api, binding, opts) {
3443
3455
  snapshot: {
3444
3456
  getSnapshot: (input) => dispatch("snapshot", "snapshot", "getSnapshot", "query", input),
3445
3457
  invalidateCache: (input) => dispatch("snapshot", "snapshot", "invalidateCache", "mutation", input),
3458
+ getSnapshotOverview: (input) => dispatch("snapshot", "snapshot", "getSnapshotOverview", "query", input),
3446
3459
  getStatus: (input) => dispatch("snapshot", "snapshot", "getStatus", "query", input),
3447
3460
  getDeviceSettingsContribution: (input) => dispatch("snapshot", "snapshot", "getDeviceSettingsContribution", "query", input),
3448
3461
  getDeviceLiveContribution: (input) => dispatch("snapshot", "snapshot", "getDeviceLiveContribution", "query", input),
@@ -4290,6 +4303,12 @@ Object.defineProperty(exports, "sleepCancellable", {
4290
4303
  return sleepCancellable;
4291
4304
  }
4292
4305
  });
4306
+ Object.defineProperty(exports, "systemMethod", {
4307
+ enumerable: true,
4308
+ get: function() {
4309
+ return systemMethod;
4310
+ }
4311
+ });
4293
4312
  Object.defineProperty(exports, "viewerUiCapability", {
4294
4313
  enumerable: true,
4295
4314
  get: function() {
@@ -2853,6 +2853,18 @@ function method(input, output, options) {
2853
2853
  timeoutMs: options?.timeoutMs
2854
2854
  };
2855
2855
  }
2856
+ /**
2857
+ * A wrapper/system-only method: served exclusively by the cap's system-level
2858
+ * provider (`InferProvider`), and OPTIONAL on `InferNativeProvider` so per-device
2859
+ * driver natives don't stub out a wrapper concern (e.g. a cross-device cache
2860
+ * overview). The `systemOnly: true` literal is what `InferNativeProvider` keys on.
2861
+ */
2862
+ function systemMethod(input, output, options) {
2863
+ return {
2864
+ ...method(input, output, options),
2865
+ systemOnly: true
2866
+ };
2867
+ }
2856
2868
  /** Shorthand to define an event schema */
2857
2869
  function event(data) {
2858
2870
  return { data };
@@ -3443,6 +3455,7 @@ function createDeviceProxy(api, binding, opts) {
3443
3455
  snapshot: {
3444
3456
  getSnapshot: (input) => dispatch("snapshot", "snapshot", "getSnapshot", "query", input),
3445
3457
  invalidateCache: (input) => dispatch("snapshot", "snapshot", "invalidateCache", "mutation", input),
3458
+ getSnapshotOverview: (input) => dispatch("snapshot", "snapshot", "getSnapshotOverview", "query", input),
3446
3459
  getStatus: (input) => dispatch("snapshot", "snapshot", "getStatus", "query", input),
3447
3460
  getDeviceSettingsContribution: (input) => dispatch("snapshot", "snapshot", "getDeviceSettingsContribution", "query", input),
3448
3461
  getDeviceLiveContribution: (input) => dispatch("snapshot", "snapshot", "getDeviceLiveContribution", "query", input),
@@ -3852,4 +3865,4 @@ function sleepCancellable(ms, signal) {
3852
3865
  });
3853
3866
  }
3854
3867
  //#endregion
3855
- export { SubscribeAudioChunksInputSchema as $, DATAPLANE_SECRET_HEADER as A, CamStreamKindSchema as B, asJsonArray as C, parseJsonArray as D, asString as E, scopeKey as F, EncodedPacketSchema as G, CameraStreamSchema as H, BrokerStatsSchema as I, ProfileRtspEntrySchema as J, FrameHandleFormatSchema as K, BrokerStatusSchema as L, ReadinessTimeoutError as M, emitDownForOwnedCaps as N, parseJsonObject as O, readinessKey as P, StreamSourceSchema as Q, CAM_PROFILE_ORDER as R, asBoolean as S, asNumber as T, DecodedAudioChunkSchema as U, CamStreamResolutionSchema as V, DecodedFrameSchema as W, ProfileSlotStatusSchema as X, ProfileSlotSchema as Y, StreamSourceEntrySchema$1 as Z, resolveCapMount as _, hydrateSchema as _t, viewerUiCapability as a, parseProfileBrokerId as at, DeviceRole as b, DisposerChain as bt, createLazyTrpcSource as c, normalizeAddonInitResult as ct, DEVICE_SETTINGS_CONTRIBUTION_METHODS as d, emitReadiness as dt, SubscribeAudioChunksResultSchema as et, DEVICE_STATUS_METHOD as f, isEvent as ft, method as g, collectHydratedFieldValues as gt, isDeviceConfigCap as h, collectHydratedFieldEntries as ht, deviceOpsCapability as i, makeSourceBrokerId as it, ReadinessRegistry as j, parseJsonUnknown as k, createMirrorSource as l, createDurableState as lt, expandCapMethods as m, WELL_KNOWN_TAB_MAP as mt, sleepCancellable as n, SubscribeFramesResultSchema as nt, adminUiCapability as o, selectAssignedProfileSlots as ot, event as p, WELL_KNOWN_TABS as pt, FrameHandleSchema as q, RawStateResultSchema as r, makeProfileBrokerId as rt, createDeviceProxy as s, BaseAddon as st, sleep as t, SubscribeFramesInputSchema as tt, createSliceHandle as u, createEvent as ut, ChargingStatus as v, resolveHydratedFieldValue as vt, asJsonObject as w, DeviceType as x, DeviceFeature as y, EventCategory as yt, CamProfileSchema as z };
3868
+ export { StreamSourceSchema as $, parseJsonUnknown as A, CamProfileSchema as B, asBoolean as C, asString as D, asNumber as E, readinessKey as F, DecodedFrameSchema as G, CamStreamResolutionSchema as H, scopeKey as I, FrameHandleSchema as J, EncodedPacketSchema as K, BrokerStatsSchema as L, ReadinessRegistry as M, ReadinessTimeoutError as N, parseJsonArray as O, emitDownForOwnedCaps as P, StreamSourceEntrySchema$1 as Q, BrokerStatusSchema as R, DeviceType as S, asJsonObject as T, CameraStreamSchema as U, CamStreamKindSchema as V, DecodedAudioChunkSchema as W, ProfileSlotSchema as X, ProfileRtspEntrySchema as Y, ProfileSlotStatusSchema as Z, resolveCapMount as _, collectHydratedFieldValues as _t, viewerUiCapability as a, makeSourceBrokerId as at, DeviceFeature as b, EventCategory as bt, createLazyTrpcSource as c, BaseAddon as ct, DEVICE_SETTINGS_CONTRIBUTION_METHODS as d, createEvent as dt, SubscribeAudioChunksInputSchema as et, DEVICE_STATUS_METHOD as f, emitReadiness as ft, method as g, collectHydratedFieldEntries as gt, isDeviceConfigCap as h, WELL_KNOWN_TAB_MAP as ht, deviceOpsCapability as i, makeProfileBrokerId as it, DATAPLANE_SECRET_HEADER as j, parseJsonObject as k, createMirrorSource as l, normalizeAddonInitResult as lt, expandCapMethods as m, WELL_KNOWN_TABS as mt, sleepCancellable as n, SubscribeFramesInputSchema as nt, adminUiCapability as o, parseProfileBrokerId as ot, event as p, isEvent as pt, FrameHandleFormatSchema as q, RawStateResultSchema as r, SubscribeFramesResultSchema as rt, createDeviceProxy as s, selectAssignedProfileSlots as st, sleep as t, SubscribeAudioChunksResultSchema as tt, createSliceHandle as u, createDurableState as ut, systemMethod as v, hydrateSchema as vt, asJsonArray as w, DeviceRole as x, DisposerChain as xt, ChargingStatus as y, resolveHydratedFieldValue as yt, CAM_PROFILE_ORDER as z };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/types",
3
- "version": "1.1.39",
3
+ "version": "1.1.40",
4
4
  "description": "Shared types, interfaces, and model catalogs for the CamStack detection ecosystem",
5
5
  "keywords": [
6
6
  "camstack",