@mentra/sdk 2.1.30-beta.1 → 2.1.31-beta.2
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/app/server/index.d.ts +2 -1
- package/dist/app/server/index.d.ts.map +1 -1
- package/dist/app/session/device-state.d.ts +83 -0
- package/dist/app/session/device-state.d.ts.map +1 -0
- package/dist/app/session/index.d.ts +21 -7
- package/dist/app/session/index.d.ts.map +1 -1
- package/dist/index.d.ts +6 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +205 -9
- package/dist/index.js.map +12 -10
- package/dist/types/capabilities.d.ts +3 -90
- package/dist/types/capabilities.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/message-types.d.ts +3 -1
- package/dist/types/message-types.d.ts.map +1 -1
- package/dist/types/messages/app-to-cloud.d.ts +15 -1
- package/dist/types/messages/app-to-cloud.d.ts.map +1 -1
- package/dist/types/messages/cloud-to-app.d.ts +14 -1
- package/dist/types/messages/cloud-to-app.d.ts.map +1 -1
- package/dist/utils/Observable.d.ts +92 -0
- package/dist/utils/Observable.d.ts.map +1 -0
- package/node_modules/@mentra/types/README.md +134 -0
- package/node_modules/@mentra/types/dist/applet.d.ts +39 -0
- package/node_modules/@mentra/types/dist/applet.d.ts.map +1 -0
- package/node_modules/@mentra/types/dist/applet.js +5 -0
- package/node_modules/@mentra/types/dist/capabilities/even-realities-g1.d.ts +12 -0
- package/node_modules/@mentra/types/dist/capabilities/even-realities-g1.d.ts.map +1 -0
- package/node_modules/@mentra/types/dist/capabilities/even-realities-g1.js +54 -0
- package/node_modules/@mentra/types/dist/capabilities/mentra-live.d.ts +12 -0
- package/node_modules/@mentra/types/dist/capabilities/mentra-live.d.ts.map +1 -0
- package/node_modules/@mentra/types/dist/capabilities/mentra-live.js +94 -0
- package/node_modules/@mentra/types/dist/capabilities/simulated-glasses.d.ts +13 -0
- package/node_modules/@mentra/types/dist/capabilities/simulated-glasses.d.ts.map +1 -0
- package/node_modules/@mentra/types/dist/capabilities/simulated-glasses.js +67 -0
- package/node_modules/@mentra/types/dist/capabilities/vuzix-z100.d.ts +12 -0
- package/node_modules/@mentra/types/dist/capabilities/vuzix-z100.d.ts.map +1 -0
- package/node_modules/@mentra/types/dist/capabilities/vuzix-z100.js +51 -0
- package/node_modules/@mentra/types/dist/cli.d.ts +130 -0
- package/node_modules/@mentra/types/dist/cli.d.ts.map +1 -0
- package/node_modules/@mentra/types/dist/cli.js +7 -0
- package/node_modules/@mentra/types/dist/device.d.ts +32 -0
- package/node_modules/@mentra/types/dist/device.d.ts.map +1 -0
- package/node_modules/@mentra/types/dist/device.js +6 -0
- package/node_modules/@mentra/types/dist/enums.d.ts +34 -0
- package/node_modules/@mentra/types/dist/enums.d.ts.map +1 -0
- package/node_modules/@mentra/types/dist/enums.js +39 -0
- package/node_modules/@mentra/types/dist/hardware.d.ts +141 -0
- package/node_modules/@mentra/types/dist/hardware.d.ts.map +1 -0
- package/node_modules/@mentra/types/dist/hardware.js +33 -0
- package/node_modules/@mentra/types/dist/index.d.ts +18 -0
- package/node_modules/@mentra/types/dist/index.d.ts.map +1 -0
- package/node_modules/@mentra/types/dist/index.js +25 -0
- package/node_modules/@mentra/types/package.json +31 -0
- package/node_modules/@mentra/types/src/applet.ts +51 -0
- package/node_modules/@mentra/types/src/capabilities/even-realities-g1.ts +63 -0
- package/node_modules/@mentra/types/src/capabilities/mentra-live.ts +103 -0
- package/node_modules/@mentra/types/src/capabilities/simulated-glasses.ts +76 -0
- package/node_modules/@mentra/types/src/capabilities/vuzix-z100.ts +60 -0
- package/node_modules/@mentra/types/src/cli.ts +169 -0
- package/node_modules/@mentra/types/src/device.ts +43 -0
- package/node_modules/@mentra/types/src/enums.ts +36 -0
- package/node_modules/@mentra/types/src/hardware.ts +172 -0
- package/node_modules/@mentra/types/src/index.ts +64 -0
- package/node_modules/@mentra/types/tsconfig.json +22 -0
- package/node_modules/@mentra/types/tsconfig.tsbuildinfo +1 -0
- package/package.json +6 -3
|
@@ -1,95 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @fileoverview Capability Discovery Types
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* connected smart glasses.
|
|
4
|
+
* Re-exports capability types from @mentra/types to maintain backward compatibility.
|
|
5
|
+
* All capability types are now defined in @mentra/types to avoid circular dependencies.
|
|
7
6
|
*/
|
|
8
|
-
export
|
|
9
|
-
resolution?: {
|
|
10
|
-
width: number;
|
|
11
|
-
height: number;
|
|
12
|
-
};
|
|
13
|
-
hasHDR?: boolean;
|
|
14
|
-
hasFocus?: boolean;
|
|
15
|
-
video: {
|
|
16
|
-
canRecord: boolean;
|
|
17
|
-
canStream: boolean;
|
|
18
|
-
supportedStreamTypes?: string[];
|
|
19
|
-
supportedResolutions?: {
|
|
20
|
-
width: number;
|
|
21
|
-
height: number;
|
|
22
|
-
}[];
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
export interface DisplayCapabilities {
|
|
26
|
-
count?: number;
|
|
27
|
-
isColor?: boolean;
|
|
28
|
-
color?: string;
|
|
29
|
-
canDisplayBitmap?: boolean;
|
|
30
|
-
resolution?: {
|
|
31
|
-
width: number;
|
|
32
|
-
height: number;
|
|
33
|
-
};
|
|
34
|
-
fieldOfView?: {
|
|
35
|
-
horizontal?: number;
|
|
36
|
-
vertical?: number;
|
|
37
|
-
};
|
|
38
|
-
maxTextLines?: number;
|
|
39
|
-
adjustBrightness?: boolean;
|
|
40
|
-
}
|
|
41
|
-
export interface MicrophoneCapabilities {
|
|
42
|
-
count?: number;
|
|
43
|
-
hasVAD?: boolean;
|
|
44
|
-
}
|
|
45
|
-
export interface SpeakerCapabilities {
|
|
46
|
-
count?: number;
|
|
47
|
-
isPrivate?: boolean;
|
|
48
|
-
}
|
|
49
|
-
export interface IMUCapabilities {
|
|
50
|
-
axisCount?: number;
|
|
51
|
-
hasAccelerometer?: boolean;
|
|
52
|
-
hasCompass?: boolean;
|
|
53
|
-
hasGyroscope?: boolean;
|
|
54
|
-
}
|
|
55
|
-
export interface ButtonCapabilities {
|
|
56
|
-
count?: number;
|
|
57
|
-
buttons?: {
|
|
58
|
-
type: "press" | "swipe1d" | "swipe2d";
|
|
59
|
-
events: string[];
|
|
60
|
-
isCapacitive?: boolean;
|
|
61
|
-
}[];
|
|
62
|
-
}
|
|
63
|
-
export interface LightCapabilities {
|
|
64
|
-
count?: number;
|
|
65
|
-
lights?: {
|
|
66
|
-
id: string;
|
|
67
|
-
purpose: "privacy" | "user_feedback" | "general";
|
|
68
|
-
isFullColor: boolean;
|
|
69
|
-
color?: string;
|
|
70
|
-
position?: "front_facing" | "user_facing" | "side" | "unknown";
|
|
71
|
-
}[];
|
|
72
|
-
}
|
|
73
|
-
export interface PowerCapabilities {
|
|
74
|
-
hasExternalBattery: boolean;
|
|
75
|
-
}
|
|
76
|
-
export interface Capabilities {
|
|
77
|
-
modelName: string;
|
|
78
|
-
hasCamera: boolean;
|
|
79
|
-
camera: CameraCapabilities | null;
|
|
80
|
-
hasDisplay: boolean;
|
|
81
|
-
display: DisplayCapabilities | null;
|
|
82
|
-
hasMicrophone: boolean;
|
|
83
|
-
microphone: MicrophoneCapabilities | null;
|
|
84
|
-
hasSpeaker: boolean;
|
|
85
|
-
speaker: SpeakerCapabilities | null;
|
|
86
|
-
hasIMU: boolean;
|
|
87
|
-
imu: IMUCapabilities | null;
|
|
88
|
-
hasButton: boolean;
|
|
89
|
-
button: ButtonCapabilities | null;
|
|
90
|
-
hasLight: boolean;
|
|
91
|
-
light: LightCapabilities | null;
|
|
92
|
-
power: PowerCapabilities;
|
|
93
|
-
hasWifi: boolean;
|
|
94
|
-
}
|
|
7
|
+
export type { CameraCapabilities, DisplayCapabilities, MicrophoneCapabilities, SpeakerCapabilities, IMUCapabilities, ButtonCapabilities, LightCapabilities, PowerCapabilities, Capabilities, } from "@mentra/types";
|
|
95
8
|
//# sourceMappingURL=capabilities.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../src/types/capabilities.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../src/types/capabilities.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EACV,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACb,MAAM,eAAe,CAAC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export * from "./message-types";
|
|
|
3
3
|
export * from "./messages/base";
|
|
4
4
|
export * from "./messages/glasses-to-cloud";
|
|
5
5
|
export * from "./messages/cloud-to-glasses";
|
|
6
|
-
export { SubscriptionRequest, AppConnectionInit, AppSubscriptionUpdate, PhotoRequest, RgbLedControlRequest, RtmpStreamRequest, RtmpStreamStopRequest, AppLocationPollRequest, RestreamDestination, ManagedStreamRequest, ManagedStreamStopRequest, StreamStatusCheckRequest, AudioPlayRequest, AudioStopRequest, AppToCloudMessage, AppBroadcastMessage, AppDirectMessage, AppUserDiscovery, AppRoomJoin, AppRoomLeave, RequestWifiSetup, isAppConnectionInit, isAppSubscriptionUpdate, isDisplayRequest, isRgbLedControlRequest, isAudioPlayRequest, isAudioStopRequest, isDashboardContentUpdate, isDashboardModeChange, isDashboardSystemUpdate, isManagedStreamRequest, isManagedStreamStopRequest, isRtmpStreamRequest, isRtmpStreamStopRequest, isPhotoRequest as isPhotoRequestFromApp, } from "./messages/app-to-cloud";
|
|
6
|
+
export { SubscriptionRequest, AppConnectionInit, AppSubscriptionUpdate, PhotoRequest, RgbLedControlRequest, RtmpStreamRequest, RtmpStreamStopRequest, AppLocationPollRequest, RestreamDestination, ManagedStreamRequest, ManagedStreamStopRequest, StreamStatusCheckRequest, AudioPlayRequest, AudioStopRequest, AppToCloudMessage, AppBroadcastMessage, AppDirectMessage, AppUserDiscovery, AppRoomJoin, AppRoomLeave, RequestWifiSetup, OwnershipReleaseMessage, isAppConnectionInit, isAppSubscriptionUpdate, isDisplayRequest, isRgbLedControlRequest, isAudioPlayRequest, isAudioStopRequest, isDashboardContentUpdate, isDashboardModeChange, isDashboardSystemUpdate, isManagedStreamRequest, isManagedStreamStopRequest, isRtmpStreamRequest, isRtmpStreamStopRequest, isOwnershipRelease, isPhotoRequest as isPhotoRequestFromApp, } from "./messages/app-to-cloud";
|
|
7
7
|
export { AppConnectionAck, AppConnectionError, AppStopped, SettingsUpdate as AppSettingsUpdate, // Alias to avoid conflict with cloud-to-glasses SettingsUpdate
|
|
8
8
|
CapabilitiesUpdate, DataStream, CloudToAppMessage, AudioPlayResponse, TranslationData, ToolCall, StandardConnectionError, CustomMessage, ManagedStreamStatus, StreamStatusCheckResponse, OutputStatus, MentraosSettingsUpdate, TranscriptionData, TranscriptionMetadata, SonioxToken, AudioChunk, PermissionError, PermissionErrorDetail, isAppConnectionAck, isAppConnectionError, isAppStopped, isSettingsUpdate, isCapabilitiesUpdate, isDataStream, isAudioChunk, isAudioPlayResponse, isDashboardModeChanged, isDashboardAlwaysOnChanged, isManagedStreamStatus, isStreamStatusCheckResponse, isPhotoResponse as isPhotoResponseFromCloud, isRtmpStreamStatus as isRtmpStreamStatusFromCloud, isRgbLedControlResponse as isRgbLedControlResponseFromCloud, } from "./messages/cloud-to-app";
|
|
9
9
|
export * from "./streams";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAEA,cAAc,SAAS,CAAA;AAGvB,cAAc,iBAAiB,CAAA;AAG/B,cAAc,iBAAiB,CAAA;AAG/B,cAAc,6BAA6B,CAAA;AAC3C,cAAc,6BAA6B,CAAA;AAG3C,OAAO,EAEL,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,YAAY,EACZ,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,EACxB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAEA,cAAc,SAAS,CAAA;AAGvB,cAAc,iBAAiB,CAAA;AAG/B,cAAc,iBAAiB,CAAA;AAG/B,cAAc,6BAA6B,CAAA;AAC3C,cAAc,6BAA6B,CAAA;AAG3C,OAAO,EAEL,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,YAAY,EACZ,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,EACxB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EAEvB,mBAAmB,EACnB,uBAAuB,EACvB,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,EACvB,sBAAsB,EACtB,0BAA0B,EAC1B,mBAAmB,EACnB,uBAAuB,EACvB,kBAAkB,EAElB,cAAc,IAAI,qBAAqB,GACxC,MAAM,yBAAyB,CAAA;AAGhC,OAAO,EAEL,gBAAgB,EAChB,kBAAkB,EAClB,UAAU,EACV,cAAc,IAAI,iBAAiB,EAAE,+DAA+D;AACpG,kBAAkB,EAClB,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,QAAQ,EACR,uBAAuB,EACvB,aAAa,EACb,mBAAmB,EACnB,yBAAyB,EACzB,YAAY,EACZ,sBAAsB,EACtB,iBAAiB,EACjB,qBAAqB,EACrB,WAAW,EACX,UAAU,EACV,eAAe,EACf,qBAAqB,EAErB,kBAAkB,EAClB,oBAAoB,EACpB,YAAY,EACZ,gBAAgB,EAChB,oBAAoB,EACpB,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,EAC1B,qBAAqB,EACrB,2BAA2B,EAG3B,eAAe,IAAI,wBAAwB,EAC3C,kBAAkB,IAAI,2BAA2B,EACjD,uBAAuB,IAAI,gCAAgC,GAC5D,MAAM,yBAAyB,CAAA;AAGhC,cAAc,WAAW,CAAA;AAGzB,cAAc,WAAW,CAAA;AAGzB,cAAc,aAAa,CAAA;AAG3B,cAAc,eAAe,CAAA;AAG7B,cAAc,SAAS,CAAA;AAGvB,cAAc,UAAU,CAAA;AAGxB,cAAc,YAAY,CAAA;AAG1B,cAAc,gBAAgB,CAAA;AAG9B,cAAc,cAAc,CAAA;AAE5B;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,SAAS,CAAA;AACpC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,gBAAgB,CAAA;AAE9C,MAAM,WAAW,oBAAqB,SAAQ,OAAO;IACnD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,UAAU,GAAG,IAAI,CAAA;CACjC"}
|
|
@@ -82,7 +82,8 @@ export declare enum AppToCloudMessageType {
|
|
|
82
82
|
APP_DIRECT_MESSAGE = "app_direct_message",
|
|
83
83
|
APP_USER_DISCOVERY = "app_user_discovery",
|
|
84
84
|
APP_ROOM_JOIN = "app_room_join",
|
|
85
|
-
APP_ROOM_LEAVE = "app_room_leave"
|
|
85
|
+
APP_ROOM_LEAVE = "app_room_leave",
|
|
86
|
+
OWNERSHIP_RELEASE = "ownership_release"
|
|
86
87
|
}
|
|
87
88
|
/**
|
|
88
89
|
* Types of messages from cloud to Apps
|
|
@@ -93,6 +94,7 @@ export declare enum CloudToAppMessageType {
|
|
|
93
94
|
APP_STOPPED = "app_stopped",
|
|
94
95
|
SETTINGS_UPDATE = "settings_update",
|
|
95
96
|
CAPABILITIES_UPDATE = "capabilities_update",
|
|
97
|
+
DEVICE_STATE_UPDATE = "device_state_update",
|
|
96
98
|
DASHBOARD_MODE_CHANGED = "dashboard_mode_changed",
|
|
97
99
|
DASHBOARD_ALWAYS_ON_CHANGED = "dashboard_always_on_changed",
|
|
98
100
|
DATA_STREAM = "data_stream",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-types.d.ts","sourceRoot":"","sources":["../../src/types/message-types.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,oBAAY,yBAAyB;IAEnC,eAAe,oBAAoB;IACnC,gBAAgB,qBAAqB;IAErC,SAAS,cAAuB;IAChC,QAAQ,aAAsB;IAE9B,eAAe,oBAAoB;IACnC,cAAc,mBAA4B;IAG1C,cAAc,mBAA4B;IAG1C,mBAAmB,wBAAwB;IAG3C,kBAAkB,uBAAgC;IAClD,cAAc,mBAAmB;IAEjC,YAAY,iBAA0B;IACtC,aAAa,kBAA2B;IACxC,WAAW,gBAAyB;IACpC,sBAAsB,2BAAoC;IAC1D,oBAAoB,yBAAkC;IACtD,wBAAwB,6BAAsC;IAC9D,eAAe,oBAA6B;IAG5C,eAAe,oBAA6B;IAC5C,GAAG,QAAiB;IAGpB,kBAAkB,uBAAgC;IAClD,4BAA4B,iCAA0C;IAGtE,cAAc,mBAA4B;IAC1C,gCAAgC,4BAA8C;IAG9E,kBAAkB,uBAAgC;IAElD,WAAW,gBAAyB;IACpC,mBAAmB,wBAAwB;IAG3C,wBAAwB,6BAA6B;IAGrD,YAAY,iBAAiB;CAC9B;AAED;;GAEG;AACH,oBAAY,yBAAyB;IAEnC,cAAc,mBAAmB;IACjC,gBAAgB,qBAAqB;IACrC,UAAU,eAAe;IAGzB,aAAa,kBAAkB;IAC/B,gBAAgB,qBAAqB;IACrC,uBAAuB,4BAA4B;IACnD,eAAe,oBAAoB;IAGnC,aAAa,kBAAkB;IAC/B,kBAAkB,uBAAuB;IACzC,kBAAkB,uBAAuB;IACzC,eAAe,oBAAoB;IACnC,eAAe,oBAAoB;IAGnC,iBAAiB,sBAAsB;IACvC,gBAAgB,qBAAqB;IACrC,sBAAsB,2BAA2B;IAGjD,qBAAqB,0BAA0B;IAC/C,0BAA0B,+BAA+B;IAGzD,iBAAiB,sBAAsB;IACvC,uBAAuB,4BAA4B;IAEnD,eAAe,oBAAoB;IAGnC,YAAY,iBAAiB;CAC9B;AAED;;GAEG;AACH,oBAAY,qBAAqB;IAE/B,eAAe,wBAAwB;IACvC,mBAAmB,wBAAwB;IAC3C,qBAAqB,0BAA0B;IAG/C,eAAe,kBAAkB;IACjC,aAAa,kBAAkB;IAC/B,kBAAkB,uBAAuB;IACzC,kBAAkB,uBAAuB;IACzC,eAAe,oBAAoB;IACnC,kBAAkB,uBAAuB;IAGzC,mBAAmB,wBAAwB;IAC3C,gBAAgB,qBAAqB;IAGrC,sBAAsB,2BAA2B;IACjD,mBAAmB,wBAAwB;IAG3C,mBAAmB,wBAAwB;IAG3C,wBAAwB,6BAA6B;IACrD,qBAAqB,0BAA0B;IAC/C,uBAAuB,4BAA4B;IAInD,qBAAqB,0BAA0B;IAC/C,kBAAkB,uBAAuB;IACzC,kBAAkB,uBAAuB;IACzC,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;
|
|
1
|
+
{"version":3,"file":"message-types.d.ts","sourceRoot":"","sources":["../../src/types/message-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -161,10 +161,20 @@ export interface RequestWifiSetup extends BaseMessage {
|
|
|
161
161
|
sessionId: string;
|
|
162
162
|
reason?: string;
|
|
163
163
|
}
|
|
164
|
+
/**
|
|
165
|
+
* Ownership release message from App
|
|
166
|
+
* Sent before intentional disconnect to signal clean handoff (no resurrection needed)
|
|
167
|
+
*/
|
|
168
|
+
export interface OwnershipReleaseMessage extends BaseMessage {
|
|
169
|
+
type: AppToCloudMessageType.OWNERSHIP_RELEASE;
|
|
170
|
+
packageName: string;
|
|
171
|
+
sessionId: string;
|
|
172
|
+
reason: "switching_clouds" | "clean_shutdown" | "user_logout";
|
|
173
|
+
}
|
|
164
174
|
/**
|
|
165
175
|
* Union type for all messages from Apps to cloud
|
|
166
176
|
*/
|
|
167
|
-
export type AppToCloudMessage = AppConnectionInit | AppSubscriptionUpdate | AppLocationPollRequest | DisplayRequest | PhotoRequest | RgbLedControlRequest | AudioPlayRequest | AudioStopRequest | RtmpStreamRequest | RtmpStreamStopRequest | ManagedStreamRequest | ManagedStreamStopRequest | StreamStatusCheckRequest | DashboardContentUpdate | DashboardModeChange | DashboardSystemUpdate | RequestWifiSetup | AppBroadcastMessage | AppDirectMessage | AppUserDiscovery | AppRoomJoin | AppRoomLeave;
|
|
177
|
+
export type AppToCloudMessage = AppConnectionInit | AppSubscriptionUpdate | AppLocationPollRequest | DisplayRequest | PhotoRequest | RgbLedControlRequest | AudioPlayRequest | AudioStopRequest | RtmpStreamRequest | RtmpStreamStopRequest | ManagedStreamRequest | ManagedStreamStopRequest | StreamStatusCheckRequest | DashboardContentUpdate | DashboardModeChange | DashboardSystemUpdate | RequestWifiSetup | OwnershipReleaseMessage | AppBroadcastMessage | AppDirectMessage | AppUserDiscovery | AppRoomJoin | AppRoomLeave;
|
|
168
178
|
/**
|
|
169
179
|
* Type guard to check if a message is a App connection init
|
|
170
180
|
*/
|
|
@@ -276,4 +286,8 @@ export declare function isRtmpStreamRequest(message: AppToCloudMessage): message
|
|
|
276
286
|
* Type guard to check if a message is an RTMP stream stop request
|
|
277
287
|
*/
|
|
278
288
|
export declare function isRtmpStreamStopRequest(message: AppToCloudMessage): message is RtmpStreamStopRequest;
|
|
289
|
+
/**
|
|
290
|
+
* Type guard to check if a message is an ownership release message
|
|
291
|
+
*/
|
|
292
|
+
export declare function isOwnershipRelease(message: AppToCloudMessage): message is OwnershipReleaseMessage;
|
|
279
293
|
//# sourceMappingURL=app-to-cloud.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-to-cloud.d.ts","sourceRoot":"","sources":["../../../src/types/messages/app-to-cloud.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"app-to-cloud.d.ts","sourceRoot":"","sources":["../../../src/types/messages/app-to-cloud.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ import type { DashboardMode } from "../dashboard";
|
|
|
6
6
|
import type { Capabilities } from "../capabilities";
|
|
7
7
|
import type { LocationUpdate, CalendarEvent, RtmpStreamStatus, PhotoResponse, RgbLedControlResponse } from "./glasses-to-cloud";
|
|
8
8
|
import type { AppSession } from "../../app/session";
|
|
9
|
+
import type { GlassesInfo } from "@mentra/types";
|
|
9
10
|
/**
|
|
10
11
|
* Connection acknowledgment to App
|
|
11
12
|
*/
|
|
@@ -71,6 +72,17 @@ export interface CapabilitiesUpdate extends BaseMessage {
|
|
|
71
72
|
capabilities: Capabilities | null;
|
|
72
73
|
modelName: string | null;
|
|
73
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* Device state update to App
|
|
77
|
+
* Sent when any device state changes (WiFi, battery, hotspot, connection, etc.)
|
|
78
|
+
* Apps receive this automatically - no subscription needed
|
|
79
|
+
*/
|
|
80
|
+
export interface DeviceStateUpdate extends BaseMessage {
|
|
81
|
+
type: CloudToAppMessageType.DEVICE_STATE_UPDATE;
|
|
82
|
+
state: Partial<GlassesInfo>;
|
|
83
|
+
fullSnapshot?: boolean;
|
|
84
|
+
timestamp: Date;
|
|
85
|
+
}
|
|
74
86
|
/**
|
|
75
87
|
* MentraOS settings update to App
|
|
76
88
|
*/
|
|
@@ -265,12 +277,13 @@ export interface AudioPlayResponse extends BaseMessage {
|
|
|
265
277
|
/**
|
|
266
278
|
* Union type for all messages from cloud to Apps
|
|
267
279
|
*/
|
|
268
|
-
export type CloudToAppMessage = AppConnectionAck | AppConnectionError | StandardConnectionError | DataStream | AppStopped | SettingsUpdate | CapabilitiesUpdate | TranscriptionData | TranslationData | AudioChunk | LocationUpdate | CalendarEvent | PhotoResponse | DashboardModeChanged | DashboardAlwaysOnChanged | CustomMessage | ManagedStreamStatus | StreamStatusCheckResponse | MentraosSettingsUpdate | AppMessageReceived | AppUserJoined | AppUserLeft | AppRoomUpdated | AppDirectMessageResponse | RtmpStreamStatus | PhotoResponse | RgbLedControlResponse | PermissionError | AudioPlayResponse;
|
|
280
|
+
export type CloudToAppMessage = AppConnectionAck | AppConnectionError | StandardConnectionError | DataStream | AppStopped | SettingsUpdate | CapabilitiesUpdate | DeviceStateUpdate | TranscriptionData | TranslationData | AudioChunk | LocationUpdate | CalendarEvent | PhotoResponse | DashboardModeChanged | DashboardAlwaysOnChanged | CustomMessage | ManagedStreamStatus | StreamStatusCheckResponse | MentraosSettingsUpdate | AppMessageReceived | AppUserJoined | AppUserLeft | AppRoomUpdated | AppDirectMessageResponse | RtmpStreamStatus | PhotoResponse | RgbLedControlResponse | PermissionError | AudioPlayResponse;
|
|
269
281
|
export declare function isAppConnectionAck(message: CloudToAppMessage): message is AppConnectionAck;
|
|
270
282
|
export declare function isAppConnectionError(message: CloudToAppMessage): message is AppConnectionError;
|
|
271
283
|
export declare function isAppStopped(message: CloudToAppMessage): message is AppStopped;
|
|
272
284
|
export declare function isSettingsUpdate(message: CloudToAppMessage): message is SettingsUpdate;
|
|
273
285
|
export declare function isCapabilitiesUpdate(message: CloudToAppMessage): message is CapabilitiesUpdate;
|
|
286
|
+
export declare function isDeviceStateUpdate(message: CloudToAppMessage): message is DeviceStateUpdate;
|
|
274
287
|
export declare function isDataStream(message: CloudToAppMessage): message is DataStream;
|
|
275
288
|
export declare function isAudioChunk(message: CloudToAppMessage): message is AudioChunk;
|
|
276
289
|
export declare function isDashboardModeChanged(message: CloudToAppMessage): message is DashboardModeChanged;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloud-to-app.d.ts","sourceRoot":"","sources":["../../../src/types/messages/cloud-to-app.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,WAAW,EAAC,MAAM,QAAQ,CAAA;AAClC,OAAO,EAAC,qBAAqB,EAA4B,MAAM,kBAAkB,CAAA;AACjF,OAAO,EAAC,kBAAkB,EAAE,UAAU,EAAC,MAAM,YAAY,CAAA;AACzD,OAAO,KAAK,EAAC,WAAW,EAAE,SAAS,EAAC,MAAM,WAAW,CAAA;AACrD,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,cAAc,CAAA;AAC/C,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAA;AACjD,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,qBAAqB,EACtB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"cloud-to-app.d.ts","sourceRoot":"","sources":["../../../src/types/messages/cloud-to-app.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Observable<T> - A reactive value wrapper that notifies listeners of changes
|
|
3
|
+
*
|
|
4
|
+
* Provides synchronous value access and reactive subscriptions via onChange().
|
|
5
|
+
* Supports implicit coercion for use in conditionals and comparisons.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* const wifiStatus = new Observable(false);
|
|
10
|
+
*
|
|
11
|
+
* // Synchronous read
|
|
12
|
+
* console.log(wifiStatus.value); // false
|
|
13
|
+
*
|
|
14
|
+
* // Implicit coercion
|
|
15
|
+
* if (wifiStatus) { ... } // Works via valueOf()
|
|
16
|
+
*
|
|
17
|
+
* // Reactive subscription
|
|
18
|
+
* const cleanup = wifiStatus.onChange((connected) => {
|
|
19
|
+
* console.log("WiFi:", connected);
|
|
20
|
+
* });
|
|
21
|
+
*
|
|
22
|
+
* // Update (triggers callbacks)
|
|
23
|
+
* wifiStatus.setValue(true);
|
|
24
|
+
*
|
|
25
|
+
* // Cleanup
|
|
26
|
+
* cleanup();
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export declare class Observable<T> {
|
|
30
|
+
private _value;
|
|
31
|
+
private _listeners;
|
|
32
|
+
private _initialized;
|
|
33
|
+
constructor(initialValue: T);
|
|
34
|
+
/**
|
|
35
|
+
* Get the current value synchronously
|
|
36
|
+
*/
|
|
37
|
+
get value(): T;
|
|
38
|
+
/**
|
|
39
|
+
* Implicit coercion to primitive value (for conditionals/comparisons)
|
|
40
|
+
*/
|
|
41
|
+
valueOf(): T;
|
|
42
|
+
/**
|
|
43
|
+
* String representation
|
|
44
|
+
*/
|
|
45
|
+
toString(): string;
|
|
46
|
+
/**
|
|
47
|
+
* Symbol.toPrimitive for implicit type coercion
|
|
48
|
+
* Allows usage in conditionals: if (observable) { ... }
|
|
49
|
+
*/
|
|
50
|
+
[Symbol.toPrimitive](hint: string): T | string;
|
|
51
|
+
/**
|
|
52
|
+
* Subscribe to value changes
|
|
53
|
+
*
|
|
54
|
+
* The callback is called immediately with the current value ONLY if
|
|
55
|
+
* the Observable has been initialized (setValue() called at least once).
|
|
56
|
+
* This prevents callbacks from firing with default/uninitialized values.
|
|
57
|
+
*
|
|
58
|
+
* @param callback - Function to call when value changes
|
|
59
|
+
* @returns Cleanup function to unsubscribe
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```typescript
|
|
63
|
+
* const cleanup = observable.onChange((value) => {
|
|
64
|
+
* console.log("New value:", value);
|
|
65
|
+
* });
|
|
66
|
+
*
|
|
67
|
+
* // Later: unsubscribe
|
|
68
|
+
* cleanup();
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
71
|
+
onChange(callback: (value: T) => void): () => void;
|
|
72
|
+
/**
|
|
73
|
+
* Update the value and notify listeners
|
|
74
|
+
*
|
|
75
|
+
* Triggers callbacks if:
|
|
76
|
+
* 1. This is the first setValue() call (initialization from WebSocket), OR
|
|
77
|
+
* 2. The new value is different from current value
|
|
78
|
+
*
|
|
79
|
+
* Uses strict equality (===) for comparison.
|
|
80
|
+
*
|
|
81
|
+
* @param value - New value to set
|
|
82
|
+
*
|
|
83
|
+
* @internal This method is called by DeviceState when receiving WebSocket updates
|
|
84
|
+
*/
|
|
85
|
+
setValue(value: T): void;
|
|
86
|
+
/**
|
|
87
|
+
* Get the number of active listeners
|
|
88
|
+
* @internal Used for debugging/testing
|
|
89
|
+
*/
|
|
90
|
+
get listenerCount(): number;
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=Observable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Observable.d.ts","sourceRoot":"","sources":["../../src/utils/Observable.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,qBAAa,UAAU,CAAC,CAAC;IACvB,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,UAAU,CAAsC;IACxD,OAAO,CAAC,YAAY,CAAkB;gBAE1B,YAAY,EAAE,CAAC;IAI3B;;OAEG;IACH,IAAI,KAAK,IAAI,CAAC,CAEb;IAED;;OAEG;IACH,OAAO,IAAI,CAAC;IAIZ;;OAEG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;OAGG;IACH,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,MAAM;IAO9C;;;;;;;;;;;;;;;;;;;OAmBG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI;IAUlD;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI;IAsBxB;;;OAGG;IACH,IAAI,aAAa,IAAI,MAAM,CAE1B;CACF"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
# @mentra/types
|
|
2
|
+
|
|
3
|
+
Shared TypeScript types for MentraOS client and cloud.
|
|
4
|
+
|
|
5
|
+
## Purpose
|
|
6
|
+
|
|
7
|
+
Single source of truth for client-facing types used by both mobile app and cloud backend. Eliminates type drift and duplication.
|
|
8
|
+
|
|
9
|
+
## What's Included
|
|
10
|
+
|
|
11
|
+
- `AppletInterface` - Minimal app interface for home screen (8 fields)
|
|
12
|
+
- `HardwareRequirement` - Hardware requirements for apps
|
|
13
|
+
- `Capabilities` - Device hardware capabilities
|
|
14
|
+
- `AppletPermission` - App permission types
|
|
15
|
+
- Enums: `HardwareType`, `HardwareRequirementLevel`
|
|
16
|
+
|
|
17
|
+
## Installation
|
|
18
|
+
|
|
19
|
+
Already linked via Bun workspace. Just import:
|
|
20
|
+
|
|
21
|
+
```typescript
|
|
22
|
+
import { AppletInterface, HardwareType, Capabilities } from "@mentra/types";
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Development
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
# Build (compile TypeScript)
|
|
29
|
+
bun run build
|
|
30
|
+
|
|
31
|
+
# Watch mode
|
|
32
|
+
bun run dev
|
|
33
|
+
|
|
34
|
+
# Type check only
|
|
35
|
+
bun run typecheck
|
|
36
|
+
|
|
37
|
+
# Test Bun compatibility
|
|
38
|
+
bun run src/index.ts # Should output nothing (no errors)
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Bun Compatibility
|
|
42
|
+
|
|
43
|
+
This package uses **explicit exports** to work with Bun's runtime TypeScript execution:
|
|
44
|
+
|
|
45
|
+
```typescript
|
|
46
|
+
// ✅ Types/Interfaces - export type
|
|
47
|
+
export type { AppletInterface, Capabilities } from "./applet";
|
|
48
|
+
|
|
49
|
+
// ✅ Enums (runtime) - export
|
|
50
|
+
export { HardwareType } from "./enums";
|
|
51
|
+
|
|
52
|
+
// ❌ Never use this (breaks Bun)
|
|
53
|
+
export * from "./applet";
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
See `cloud/issues/todo/sdk-type-exports/README.md` for details.
|
|
57
|
+
|
|
58
|
+
## Usage Examples
|
|
59
|
+
|
|
60
|
+
### In Cloud Services
|
|
61
|
+
|
|
62
|
+
```typescript
|
|
63
|
+
import { AppletInterface } from "@mentra/types";
|
|
64
|
+
|
|
65
|
+
export class ClientAppsService {
|
|
66
|
+
static async getAppsForHomeScreen(
|
|
67
|
+
userId: string,
|
|
68
|
+
): Promise<AppletInterface[]> {
|
|
69
|
+
// Return minimal interface for client
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### In Mobile Client
|
|
75
|
+
|
|
76
|
+
```typescript
|
|
77
|
+
import { AppletInterface, HardwareType } from "@mentra/types";
|
|
78
|
+
|
|
79
|
+
function renderAppList(apps: AppletInterface[]) {
|
|
80
|
+
// Render home screen
|
|
81
|
+
}
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
## What NOT to Include
|
|
85
|
+
|
|
86
|
+
- ❌ Internal database models (`AppI`, `UserI`)
|
|
87
|
+
- ❌ Service logic or business rules
|
|
88
|
+
- ❌ Validation schemas
|
|
89
|
+
- ❌ Complex SDK types (webhooks, tool schemas)
|
|
90
|
+
- ❌ Runtime dependencies
|
|
91
|
+
|
|
92
|
+
## What to Include
|
|
93
|
+
|
|
94
|
+
- ✅ Client-facing app types
|
|
95
|
+
- ✅ Hardware capability types
|
|
96
|
+
- ✅ Permission types
|
|
97
|
+
- ✅ Shared enums
|
|
98
|
+
- ✅ Minimal DTOs
|
|
99
|
+
|
|
100
|
+
## Adding New Types
|
|
101
|
+
|
|
102
|
+
1. Add type definition in appropriate file (`applet.ts`, `hardware.ts`, etc.)
|
|
103
|
+
2. Add explicit export in `src/index.ts`:
|
|
104
|
+
|
|
105
|
+
```typescript
|
|
106
|
+
// For types/interfaces
|
|
107
|
+
export type { MyNewType } from "./file";
|
|
108
|
+
|
|
109
|
+
// For enums/values
|
|
110
|
+
export { MyNewEnum } from "./file";
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
3. Test Bun compatibility: `bun run src/index.ts`
|
|
114
|
+
4. Build: `bun run build`
|
|
115
|
+
5. Bump version in `package.json` (semver)
|
|
116
|
+
|
|
117
|
+
## Versioning
|
|
118
|
+
|
|
119
|
+
- **Major**: Breaking changes to existing types
|
|
120
|
+
- **Minor**: New optional fields or new types
|
|
121
|
+
- **Patch**: Documentation, internal changes
|
|
122
|
+
|
|
123
|
+
## Files
|
|
124
|
+
|
|
125
|
+
- `src/enums.ts` - Runtime enums (HardwareType, etc.)
|
|
126
|
+
- `src/hardware.ts` - Hardware capability types
|
|
127
|
+
- `src/applet.ts` - App/applet types for clients
|
|
128
|
+
- `src/index.ts` - Main export (Bun-compatible)
|
|
129
|
+
|
|
130
|
+
## Links
|
|
131
|
+
|
|
132
|
+
- [Design Docs](../../issues/client-apps-api/)
|
|
133
|
+
- [Bun Export Pattern](../../issues/client-apps-api/bun-export-pattern.md)
|
|
134
|
+
- [SDK Type Export Issue](../../issues/todo/sdk-type-exports/)
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @mentra/types - App/Applet types for client interfaces
|
|
3
|
+
*/
|
|
4
|
+
import { HardwareRequirement } from "./hardware";
|
|
5
|
+
/**
|
|
6
|
+
* App execution model types
|
|
7
|
+
*/
|
|
8
|
+
export type AppletType = "standard" | "background" | "system_dashboard";
|
|
9
|
+
/**
|
|
10
|
+
* Permission types that apps can request
|
|
11
|
+
*/
|
|
12
|
+
export type AppPermissionType = "ALL" | "MICROPHONE" | "CAMERA" | "CALENDAR" | "LOCATION" | "BACKGROUND_LOCATION" | "READ_NOTIFICATIONS" | "POST_NOTIFICATIONS";
|
|
13
|
+
/**
|
|
14
|
+
* Permission object with type and description
|
|
15
|
+
*/
|
|
16
|
+
export interface AppletPermission {
|
|
17
|
+
type: AppPermissionType;
|
|
18
|
+
description?: string;
|
|
19
|
+
required?: boolean;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Minimal app interface for client home screen display
|
|
23
|
+
* Optimized for fast rendering - only essential fields (9 fields)
|
|
24
|
+
*
|
|
25
|
+
* This is the client-facing interface used by mobile apps.
|
|
26
|
+
* Internal cloud services use AppI from models (more fields).
|
|
27
|
+
*/
|
|
28
|
+
export interface AppletInterface {
|
|
29
|
+
packageName: string;
|
|
30
|
+
name: string;
|
|
31
|
+
webviewUrl: string;
|
|
32
|
+
logoUrl: string;
|
|
33
|
+
type: AppletType;
|
|
34
|
+
permissions: AppletPermission[];
|
|
35
|
+
running: boolean;
|
|
36
|
+
healthy: boolean;
|
|
37
|
+
hardwareRequirements: HardwareRequirement[];
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=applet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"applet.d.ts","sourceRoot":"","sources":["../src/applet.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAC,mBAAmB,EAAC,MAAM,YAAY,CAAA;AAE9C;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,YAAY,GAAG,kBAAkB,CAAC;AAExE;;GAEG;AACH,MAAM,MAAM,iBAAiB,GACzB,KAAK,GACL,YAAY,GACZ,QAAQ,GACR,UAAU,GACV,UAAU,GACV,qBAAqB,GACrB,oBAAoB,GACpB,oBAAoB,CAAC;AAEzB;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,iBAAiB,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,UAAU,CAAC;IACjB,WAAW,EAAE,gBAAgB,EAAE,CAAC;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;CAC7C"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Even Realities G1 Hardware Capabilities
|
|
3
|
+
*
|
|
4
|
+
* Capability profile for the Even Realities G1 smart glasses model.
|
|
5
|
+
* Defines the hardware and software features available on this device.
|
|
6
|
+
*/
|
|
7
|
+
import type { Capabilities } from "../hardware";
|
|
8
|
+
/**
|
|
9
|
+
* Even Realities G1 capability profile
|
|
10
|
+
*/
|
|
11
|
+
export declare const evenRealitiesG1: Capabilities;
|
|
12
|
+
//# sourceMappingURL=even-realities-g1.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"even-realities-g1.d.ts","sourceRoot":"","sources":["../../src/capabilities/even-realities-g1.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,YAkD7B,CAAC"}
|