@elizaos/shared 2.0.0-alpha.144

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.
Files changed (186) hide show
  1. package/LICENSE +21 -0
  2. package/awareness/index.d.ts +2 -0
  3. package/awareness/index.d.ts.map +1 -0
  4. package/awareness/index.js +2 -0
  5. package/awareness/index.js.map +1 -0
  6. package/awareness/registry.d.ts +27 -0
  7. package/awareness/registry.d.ts.map +1 -0
  8. package/awareness/registry.js +162 -0
  9. package/awareness/registry.js.map +1 -0
  10. package/config/types.agent-defaults.d.ts +333 -0
  11. package/config/types.agent-defaults.d.ts.map +1 -0
  12. package/config/types.agent-defaults.js +2 -0
  13. package/config/types.agent-defaults.js.map +1 -0
  14. package/config/types.agents.d.ts +112 -0
  15. package/config/types.agents.d.ts.map +1 -0
  16. package/config/types.agents.js +2 -0
  17. package/config/types.agents.js.map +1 -0
  18. package/config/types.d.ts +8 -0
  19. package/config/types.d.ts.map +1 -0
  20. package/config/types.eliza.d.ts +648 -0
  21. package/config/types.eliza.d.ts.map +1 -0
  22. package/config/types.eliza.js +2 -0
  23. package/config/types.eliza.js.map +1 -0
  24. package/config/types.gateway.d.ts +216 -0
  25. package/config/types.gateway.d.ts.map +1 -0
  26. package/config/types.gateway.js +2 -0
  27. package/config/types.gateway.js.map +1 -0
  28. package/config/types.hooks.d.ts +107 -0
  29. package/config/types.hooks.d.ts.map +1 -0
  30. package/config/types.hooks.js +2 -0
  31. package/config/types.hooks.js.map +1 -0
  32. package/config/types.js +8 -0
  33. package/config/types.js.map +1 -0
  34. package/config/types.messages.d.ts +176 -0
  35. package/config/types.messages.d.ts.map +1 -0
  36. package/config/types.messages.js +2 -0
  37. package/config/types.messages.js.map +1 -0
  38. package/config/types.tools.d.ts +400 -0
  39. package/config/types.tools.d.ts.map +1 -0
  40. package/config/types.tools.js +2 -0
  41. package/config/types.tools.js.map +1 -0
  42. package/connectors.d.ts +13 -0
  43. package/connectors.d.ts.map +1 -0
  44. package/connectors.js +92 -0
  45. package/connectors.js.map +1 -0
  46. package/contracts/apps.d.ts +204 -0
  47. package/contracts/apps.d.ts.map +1 -0
  48. package/contracts/apps.js +189 -0
  49. package/contracts/apps.js.map +1 -0
  50. package/contracts/awareness.d.ts +38 -0
  51. package/contracts/awareness.d.ts.map +1 -0
  52. package/contracts/awareness.js +8 -0
  53. package/contracts/awareness.js.map +1 -0
  54. package/contracts/cloud-topology.d.ts +13 -0
  55. package/contracts/cloud-topology.d.ts.map +1 -0
  56. package/contracts/cloud-topology.js +74 -0
  57. package/contracts/cloud-topology.js.map +1 -0
  58. package/contracts/config.d.ts +146 -0
  59. package/contracts/config.d.ts.map +1 -0
  60. package/contracts/config.js +5 -0
  61. package/contracts/config.js.map +1 -0
  62. package/contracts/content-pack.d.ts +131 -0
  63. package/contracts/content-pack.d.ts.map +1 -0
  64. package/contracts/content-pack.js +103 -0
  65. package/contracts/content-pack.js.map +1 -0
  66. package/contracts/drop.d.ts +20 -0
  67. package/contracts/drop.d.ts.map +1 -0
  68. package/contracts/drop.js +5 -0
  69. package/contracts/drop.js.map +1 -0
  70. package/contracts/index.d.ts +13 -0
  71. package/contracts/index.d.ts.map +1 -0
  72. package/contracts/index.js +13 -0
  73. package/contracts/index.js.map +1 -0
  74. package/contracts/lifeops.d.ts +1337 -0
  75. package/contracts/lifeops.d.ts.map +1 -0
  76. package/contracts/lifeops.js +279 -0
  77. package/contracts/lifeops.js.map +1 -0
  78. package/contracts/onboarding.d.ts +443 -0
  79. package/contracts/onboarding.d.ts.map +1 -0
  80. package/contracts/onboarding.js +1021 -0
  81. package/contracts/onboarding.js.map +1 -0
  82. package/contracts/permissions.d.ts +38 -0
  83. package/contracts/permissions.d.ts.map +1 -0
  84. package/contracts/permissions.js +5 -0
  85. package/contracts/permissions.js.map +1 -0
  86. package/contracts/service-routing.d.ts +77 -0
  87. package/contracts/service-routing.d.ts.map +1 -0
  88. package/contracts/service-routing.js +228 -0
  89. package/contracts/service-routing.js.map +1 -0
  90. package/contracts/theme.d.ts +136 -0
  91. package/contracts/theme.d.ts.map +1 -0
  92. package/contracts/theme.js +134 -0
  93. package/contracts/theme.js.map +1 -0
  94. package/contracts/verification.d.ts +9 -0
  95. package/contracts/verification.d.ts.map +1 -0
  96. package/contracts/verification.js +5 -0
  97. package/contracts/verification.js.map +1 -0
  98. package/contracts/wallet.d.ts +626 -0
  99. package/contracts/wallet.d.ts.map +1 -0
  100. package/contracts/wallet.js +61 -0
  101. package/contracts/wallet.js.map +1 -0
  102. package/dev-settings-banner-style.d.ts +14 -0
  103. package/dev-settings-banner-style.d.ts.map +1 -0
  104. package/dev-settings-banner-style.js +58 -0
  105. package/dev-settings-banner-style.js.map +1 -0
  106. package/dev-settings-figlet-heading.d.ts +22 -0
  107. package/dev-settings-figlet-heading.d.ts.map +1 -0
  108. package/dev-settings-figlet-heading.js +56 -0
  109. package/dev-settings-figlet-heading.js.map +1 -0
  110. package/dev-settings-table.d.ts +47 -0
  111. package/dev-settings-table.d.ts.map +1 -0
  112. package/dev-settings-table.js +189 -0
  113. package/dev-settings-table.js.map +1 -0
  114. package/eliza-core-roles.d.ts +70 -0
  115. package/eliza-core-roles.d.ts.map +1 -0
  116. package/eliza-core-roles.js +546 -0
  117. package/eliza-core-roles.js.map +1 -0
  118. package/env-utils.d.ts +5 -0
  119. package/env-utils.d.ts.map +1 -0
  120. package/env-utils.impl.d.ts +2 -0
  121. package/env-utils.impl.d.ts.map +1 -0
  122. package/env-utils.impl.js +17 -0
  123. package/env-utils.impl.js.map +1 -0
  124. package/env-utils.js +5 -0
  125. package/env-utils.js.map +1 -0
  126. package/i18n/generated/validation-keyword-data.d.ts +1030 -0
  127. package/i18n/generated/validation-keyword-data.d.ts.map +1 -0
  128. package/i18n/generated/validation-keyword-data.js +1034 -0
  129. package/i18n/generated/validation-keyword-data.js.map +1 -0
  130. package/i18n/keyword-matching.d.ts +23 -0
  131. package/i18n/keyword-matching.d.ts.map +1 -0
  132. package/i18n/keyword-matching.js +113 -0
  133. package/i18n/keyword-matching.js.map +1 -0
  134. package/i18n/validation-keywords.d.ts +13 -0
  135. package/i18n/validation-keywords.d.ts.map +1 -0
  136. package/i18n/validation-keywords.js +13 -0
  137. package/i18n/validation-keywords.js.map +1 -0
  138. package/index.d.ts +13 -0
  139. package/index.d.ts.map +1 -0
  140. package/index.js +13 -0
  141. package/index.js.map +1 -0
  142. package/onboarding-presets.characters.d.ts +22 -0
  143. package/onboarding-presets.characters.d.ts.map +1 -0
  144. package/onboarding-presets.characters.js +2607 -0
  145. package/onboarding-presets.characters.js.map +1 -0
  146. package/onboarding-presets.d.ts +40 -0
  147. package/onboarding-presets.d.ts.map +1 -0
  148. package/onboarding-presets.js +177 -0
  149. package/onboarding-presets.js.map +1 -0
  150. package/onboarding-presets.shared.d.ts +2 -0
  151. package/onboarding-presets.shared.d.ts.map +1 -0
  152. package/onboarding-presets.shared.js +8 -0
  153. package/onboarding-presets.shared.js.map +1 -0
  154. package/package.json +173 -0
  155. package/restart.d.ts +27 -0
  156. package/restart.d.ts.map +1 -0
  157. package/restart.js +29 -0
  158. package/restart.js.map +1 -0
  159. package/runtime-env.d.ts +82 -0
  160. package/runtime-env.d.ts.map +1 -0
  161. package/runtime-env.js +243 -0
  162. package/runtime-env.js.map +1 -0
  163. package/settings-debug.d.ts +20 -0
  164. package/settings-debug.d.ts.map +1 -0
  165. package/settings-debug.js +117 -0
  166. package/settings-debug.js.map +1 -0
  167. package/spoken-text.d.ts +2 -0
  168. package/spoken-text.d.ts.map +1 -0
  169. package/spoken-text.js +57 -0
  170. package/spoken-text.js.map +1 -0
  171. package/themes/index.d.ts +7 -0
  172. package/themes/index.d.ts.map +1 -0
  173. package/themes/index.js +6 -0
  174. package/themes/index.js.map +1 -0
  175. package/themes/presets.d.ts +15 -0
  176. package/themes/presets.d.ts.map +1 -0
  177. package/themes/presets.js +789 -0
  178. package/themes/presets.js.map +1 -0
  179. package/types.d.ts +27 -0
  180. package/types.d.ts.map +1 -0
  181. package/types.js +2 -0
  182. package/types.js.map +1 -0
  183. package/validation-keywords.d.ts +2 -0
  184. package/validation-keywords.d.ts.map +1 -0
  185. package/validation-keywords.js +2 -0
  186. package/validation-keywords.js.map +1 -0
@@ -0,0 +1,1337 @@
1
+ export declare const LIFEOPS_TIME_WINDOW_NAMES: readonly ["morning", "afternoon", "evening", "night", "custom"];
2
+ export type LifeOpsTimeWindowName = (typeof LIFEOPS_TIME_WINDOW_NAMES)[number];
3
+ export declare const LIFEOPS_DEFINITION_KINDS: readonly ["task", "habit", "routine"];
4
+ export type LifeOpsDefinitionKind = (typeof LIFEOPS_DEFINITION_KINDS)[number];
5
+ export declare const LIFEOPS_DEFINITION_STATUSES: readonly ["active", "paused", "archived"];
6
+ export type LifeOpsDefinitionStatus = (typeof LIFEOPS_DEFINITION_STATUSES)[number];
7
+ export declare const LIFEOPS_OCCURRENCE_STATES: readonly ["pending", "visible", "snoozed", "completed", "skipped", "expired", "muted"];
8
+ export type LifeOpsOccurrenceState = (typeof LIFEOPS_OCCURRENCE_STATES)[number];
9
+ export declare const LIFEOPS_GOAL_STATUSES: readonly ["active", "paused", "archived", "satisfied"];
10
+ export type LifeOpsGoalStatus = (typeof LIFEOPS_GOAL_STATUSES)[number];
11
+ export declare const LIFEOPS_REVIEW_STATES: readonly ["idle", "needs_attention", "on_track", "at_risk"];
12
+ export type LifeOpsGoalReviewState = (typeof LIFEOPS_REVIEW_STATES)[number];
13
+ export declare const LIFEOPS_WORKFLOW_STATUSES: readonly ["active", "paused", "archived"];
14
+ export type LifeOpsWorkflowStatus = (typeof LIFEOPS_WORKFLOW_STATUSES)[number];
15
+ export declare const LIFEOPS_WORKFLOW_RUN_STATUSES: readonly ["queued", "running", "success", "failed", "cancelled"];
16
+ export type LifeOpsWorkflowRunStatus = (typeof LIFEOPS_WORKFLOW_RUN_STATUSES)[number];
17
+ export declare const LIFEOPS_WORKFLOW_TRIGGER_TYPES: readonly ["manual", "schedule"];
18
+ export type LifeOpsWorkflowTriggerType = (typeof LIFEOPS_WORKFLOW_TRIGGER_TYPES)[number];
19
+ export declare const LIFEOPS_CONNECTOR_PROVIDERS: readonly ["google", "x", "telegram", "discord", "twilio", "signal", "whatsapp", "imessage"];
20
+ export type LifeOpsConnectorProvider = (typeof LIFEOPS_CONNECTOR_PROVIDERS)[number];
21
+ export declare const LIFEOPS_CONNECTOR_MODES: readonly ["local", "remote", "cloud_managed"];
22
+ export type LifeOpsConnectorMode = (typeof LIFEOPS_CONNECTOR_MODES)[number];
23
+ export declare const LIFEOPS_CONNECTOR_SIDES: readonly ["owner", "agent"];
24
+ export type LifeOpsConnectorSide = (typeof LIFEOPS_CONNECTOR_SIDES)[number];
25
+ export declare const LIFEOPS_CONNECTOR_EXECUTION_TARGETS: readonly ["local", "cloud"];
26
+ export type LifeOpsConnectorExecutionTarget = (typeof LIFEOPS_CONNECTOR_EXECUTION_TARGETS)[number];
27
+ export declare const LIFEOPS_CONNECTOR_SOURCES_OF_TRUTH: readonly ["local_storage", "cloud_connection"];
28
+ export type LifeOpsConnectorSourceOfTruth = (typeof LIFEOPS_CONNECTOR_SOURCES_OF_TRUTH)[number];
29
+ export declare const LIFEOPS_GOOGLE_CAPABILITIES: readonly ["google.basic_identity", "google.calendar.read", "google.calendar.write", "google.gmail.triage", "google.gmail.send"];
30
+ export type LifeOpsGoogleCapability = (typeof LIFEOPS_GOOGLE_CAPABILITIES)[number];
31
+ export declare const LIFEOPS_X_CAPABILITIES: readonly ["x.read", "x.write"];
32
+ export type LifeOpsXCapability = (typeof LIFEOPS_X_CAPABILITIES)[number];
33
+ export declare const LIFEOPS_REMINDER_CHANNELS: readonly ["in_app", "sms", "voice", "telegram", "discord", "signal", "whatsapp", "imessage"];
34
+ export type LifeOpsReminderChannel = (typeof LIFEOPS_REMINDER_CHANNELS)[number];
35
+ export declare const LIFEOPS_CHANNEL_TYPES: readonly ["in_app", "sms", "voice", "telegram", "discord", "signal", "whatsapp", "imessage", "x", "browser"];
36
+ export type LifeOpsChannelType = (typeof LIFEOPS_CHANNEL_TYPES)[number];
37
+ export declare const LIFEOPS_PRIVACY_CLASSES: readonly ["private", "shared", "public"];
38
+ export type LifeOpsPrivacyClass = (typeof LIFEOPS_PRIVACY_CLASSES)[number];
39
+ export declare const LIFEOPS_DOMAINS: readonly ["user_lifeops", "agent_ops"];
40
+ export type LifeOpsDomain = (typeof LIFEOPS_DOMAINS)[number];
41
+ export declare const LIFEOPS_SUBJECT_TYPES: readonly ["owner", "agent"];
42
+ export type LifeOpsSubjectType = (typeof LIFEOPS_SUBJECT_TYPES)[number];
43
+ export declare const LIFEOPS_VISIBILITY_SCOPES: readonly ["owner_only", "agent_and_admin", "owner_agent_admin"];
44
+ export type LifeOpsVisibilityScope = (typeof LIFEOPS_VISIBILITY_SCOPES)[number];
45
+ export declare const LIFEOPS_CONTEXT_POLICIES: readonly ["never", "explicit_only", "sidebar_only", "allowed_in_private_chat"];
46
+ export type LifeOpsContextPolicy = (typeof LIFEOPS_CONTEXT_POLICIES)[number];
47
+ export declare const LIFEOPS_REMINDER_URGENCY_LEVELS: readonly ["low", "medium", "high", "critical"];
48
+ export type LifeOpsReminderUrgency = (typeof LIFEOPS_REMINDER_URGENCY_LEVELS)[number];
49
+ export declare const LIFEOPS_REMINDER_INTENSITIES: readonly ["minimal", "normal", "persistent", "high_priority_only"];
50
+ export type LifeOpsReminderIntensity = (typeof LIFEOPS_REMINDER_INTENSITIES)[number];
51
+ export declare const LIFEOPS_REMINDER_INTENSITY_COMPATIBILITY_VALUES: readonly ["paused", "low", "high"];
52
+ export type LifeOpsReminderIntensityCompatibility = (typeof LIFEOPS_REMINDER_INTENSITY_COMPATIBILITY_VALUES)[number];
53
+ export type LifeOpsReminderIntensityInput = LifeOpsReminderIntensity | LifeOpsReminderIntensityCompatibility;
54
+ export declare const LIFEOPS_REMINDER_PREFERENCE_SOURCES: readonly ["default", "global_policy", "definition_metadata"];
55
+ export type LifeOpsReminderPreferenceSource = (typeof LIFEOPS_REMINDER_PREFERENCE_SOURCES)[number];
56
+ export declare const LIFEOPS_OWNER_TYPES: readonly ["definition", "occurrence", "goal", "workflow", "calendar_event", "gmail_message", "connector", "channel_policy", "browser_session"];
57
+ export type LifeOpsOwnerType = (typeof LIFEOPS_OWNER_TYPES)[number];
58
+ export declare const LIFEOPS_AUDIT_EVENT_TYPES: readonly ["definition_created", "definition_updated", "definition_deleted", "occurrence_generated", "occurrence_completed", "occurrence_skipped", "occurrence_snoozed", "goal_created", "goal_updated", "goal_deleted", "goal_reviewed", "calendar_event_created", "calendar_event_updated", "calendar_event_deleted", "gmail_triage_synced", "gmail_reply_drafted", "gmail_reply_sent", "gmail_message_sent", "reminder_due", "reminder_delivered", "reminder_blocked", "reminder_escalation_started", "reminder_escalation_resolved", "workflow_created", "workflow_updated", "workflow_run", "connector_grant_updated", "channel_policy_updated", "browser_session_created", "browser_session_updated", "x_post_sent", "seeding_offered"];
59
+ export type LifeOpsAuditEventType = (typeof LIFEOPS_AUDIT_EVENT_TYPES)[number];
60
+ export declare const LIFEOPS_ACTORS: readonly ["agent", "user", "workflow", "connector"];
61
+ export type LifeOpsActor = (typeof LIFEOPS_ACTORS)[number];
62
+ export interface LifeOpsOwnership {
63
+ domain: LifeOpsDomain;
64
+ subjectType: LifeOpsSubjectType;
65
+ subjectId: string;
66
+ visibilityScope: LifeOpsVisibilityScope;
67
+ contextPolicy: LifeOpsContextPolicy;
68
+ }
69
+ export interface LifeOpsOwnershipInput {
70
+ domain?: LifeOpsDomain;
71
+ subjectType?: LifeOpsSubjectType;
72
+ subjectId?: string;
73
+ visibilityScope?: LifeOpsVisibilityScope;
74
+ contextPolicy?: LifeOpsContextPolicy;
75
+ }
76
+ export interface LifeOpsTimeWindowDefinition {
77
+ name: LifeOpsTimeWindowName;
78
+ label: string;
79
+ startMinute: number;
80
+ endMinute: number;
81
+ }
82
+ export interface LifeOpsWindowPolicy {
83
+ timezone: string;
84
+ windows: LifeOpsTimeWindowDefinition[];
85
+ }
86
+ export interface LifeOpsDailySlot {
87
+ key: string;
88
+ label: string;
89
+ minuteOfDay: number;
90
+ durationMinutes: number;
91
+ }
92
+ export interface LifeOpsIntervalCadence {
93
+ kind: "interval";
94
+ everyMinutes: number;
95
+ windows: LifeOpsTimeWindowName[];
96
+ startMinuteOfDay?: number;
97
+ maxOccurrencesPerDay?: number;
98
+ durationMinutes?: number;
99
+ visibilityLeadMinutes?: number;
100
+ visibilityLagMinutes?: number;
101
+ }
102
+ export declare const LIFEOPS_WEBSITE_ACCESS_UNLOCK_MODES: readonly ["fixed_duration", "until_manual_lock", "until_callback"];
103
+ export type LifeOpsWebsiteAccessUnlockMode = (typeof LIFEOPS_WEBSITE_ACCESS_UNLOCK_MODES)[number];
104
+ export interface LifeOpsWebsiteAccessPolicy {
105
+ groupKey: string;
106
+ websites: string[];
107
+ unlockMode: LifeOpsWebsiteAccessUnlockMode;
108
+ unlockDurationMinutes?: number;
109
+ callbackKey?: string | null;
110
+ reason: string;
111
+ }
112
+ export type LifeOpsCadence = {
113
+ kind: "once";
114
+ dueAt: string;
115
+ visibilityLeadMinutes?: number;
116
+ visibilityLagMinutes?: number;
117
+ } | {
118
+ kind: "daily";
119
+ windows: LifeOpsTimeWindowName[];
120
+ visibilityLeadMinutes?: number;
121
+ visibilityLagMinutes?: number;
122
+ } | {
123
+ kind: "times_per_day";
124
+ slots: LifeOpsDailySlot[];
125
+ visibilityLeadMinutes?: number;
126
+ visibilityLagMinutes?: number;
127
+ } | LifeOpsIntervalCadence | {
128
+ kind: "weekly";
129
+ weekdays: number[];
130
+ windows: LifeOpsTimeWindowName[];
131
+ visibilityLeadMinutes?: number;
132
+ visibilityLagMinutes?: number;
133
+ };
134
+ export type LifeOpsProgressionRule = {
135
+ kind: "none";
136
+ } | {
137
+ kind: "linear_increment";
138
+ metric: string;
139
+ start: number;
140
+ step: number;
141
+ unit?: string;
142
+ };
143
+ export interface LifeOpsReminderStep {
144
+ channel: LifeOpsReminderChannel;
145
+ offsetMinutes: number;
146
+ label: string;
147
+ }
148
+ export interface LifeOpsQuietHoursPolicy {
149
+ timezone: string;
150
+ startMinute: number;
151
+ endMinute: number;
152
+ channels?: LifeOpsReminderChannel[];
153
+ }
154
+ export interface LifeOpsReminderPlan {
155
+ id: string;
156
+ agentId: string;
157
+ ownerType: LifeOpsOwnerType;
158
+ ownerId: string;
159
+ steps: LifeOpsReminderStep[];
160
+ mutePolicy: Record<string, unknown>;
161
+ quietHours: LifeOpsQuietHoursPolicy | Record<string, unknown>;
162
+ createdAt: string;
163
+ updatedAt: string;
164
+ }
165
+ export interface LifeOpsTaskDefinition {
166
+ id: string;
167
+ agentId: string;
168
+ domain: LifeOpsDomain;
169
+ subjectType: LifeOpsSubjectType;
170
+ subjectId: string;
171
+ visibilityScope: LifeOpsVisibilityScope;
172
+ contextPolicy: LifeOpsContextPolicy;
173
+ kind: LifeOpsDefinitionKind;
174
+ title: string;
175
+ description: string;
176
+ originalIntent: string;
177
+ timezone: string;
178
+ status: LifeOpsDefinitionStatus;
179
+ priority: number;
180
+ cadence: LifeOpsCadence;
181
+ windowPolicy: LifeOpsWindowPolicy;
182
+ progressionRule: LifeOpsProgressionRule;
183
+ websiteAccess: LifeOpsWebsiteAccessPolicy | null;
184
+ reminderPlanId: string | null;
185
+ goalId: string | null;
186
+ source: string;
187
+ metadata: Record<string, unknown>;
188
+ createdAt: string;
189
+ updatedAt: string;
190
+ }
191
+ export interface LifeOpsOccurrence {
192
+ id: string;
193
+ agentId: string;
194
+ domain: LifeOpsDomain;
195
+ subjectType: LifeOpsSubjectType;
196
+ subjectId: string;
197
+ visibilityScope: LifeOpsVisibilityScope;
198
+ contextPolicy: LifeOpsContextPolicy;
199
+ definitionId: string;
200
+ occurrenceKey: string;
201
+ scheduledAt: string | null;
202
+ dueAt: string | null;
203
+ relevanceStartAt: string;
204
+ relevanceEndAt: string;
205
+ windowName: string | null;
206
+ state: LifeOpsOccurrenceState;
207
+ snoozedUntil: string | null;
208
+ completionPayload: Record<string, unknown> | null;
209
+ derivedTarget: Record<string, unknown> | null;
210
+ metadata: Record<string, unknown>;
211
+ createdAt: string;
212
+ updatedAt: string;
213
+ }
214
+ export interface LifeOpsOccurrenceView extends LifeOpsOccurrence {
215
+ definitionKind: LifeOpsDefinitionKind;
216
+ definitionStatus: LifeOpsDefinitionStatus;
217
+ cadence: LifeOpsCadence;
218
+ title: string;
219
+ description: string;
220
+ priority: number;
221
+ timezone: string;
222
+ source: string;
223
+ goalId: string | null;
224
+ }
225
+ export interface LifeOpsGoalDefinition {
226
+ id: string;
227
+ agentId: string;
228
+ domain: LifeOpsDomain;
229
+ subjectType: LifeOpsSubjectType;
230
+ subjectId: string;
231
+ visibilityScope: LifeOpsVisibilityScope;
232
+ contextPolicy: LifeOpsContextPolicy;
233
+ title: string;
234
+ description: string;
235
+ cadence: Record<string, unknown> | null;
236
+ supportStrategy: Record<string, unknown>;
237
+ successCriteria: Record<string, unknown>;
238
+ status: LifeOpsGoalStatus;
239
+ reviewState: LifeOpsGoalReviewState;
240
+ metadata: Record<string, unknown>;
241
+ createdAt: string;
242
+ updatedAt: string;
243
+ }
244
+ export interface LifeOpsGoalLink {
245
+ id: string;
246
+ agentId: string;
247
+ goalId: string;
248
+ linkedType: LifeOpsOwnerType;
249
+ linkedId: string;
250
+ createdAt: string;
251
+ }
252
+ export interface LifeOpsWorkflowDefinition {
253
+ id: string;
254
+ agentId: string;
255
+ domain: LifeOpsDomain;
256
+ subjectType: LifeOpsSubjectType;
257
+ subjectId: string;
258
+ visibilityScope: LifeOpsVisibilityScope;
259
+ contextPolicy: LifeOpsContextPolicy;
260
+ title: string;
261
+ triggerType: LifeOpsWorkflowTriggerType;
262
+ schedule: LifeOpsWorkflowSchedule;
263
+ actionPlan: LifeOpsWorkflowActionPlan;
264
+ permissionPolicy: LifeOpsWorkflowPermissionPolicy;
265
+ status: LifeOpsWorkflowStatus;
266
+ createdBy: LifeOpsActor;
267
+ metadata: Record<string, unknown>;
268
+ createdAt: string;
269
+ updatedAt: string;
270
+ }
271
+ export interface LifeOpsWorkflowRun {
272
+ id: string;
273
+ agentId: string;
274
+ workflowId: string;
275
+ startedAt: string;
276
+ finishedAt: string | null;
277
+ status: LifeOpsWorkflowRunStatus;
278
+ result: Record<string, unknown>;
279
+ auditRef: string | null;
280
+ }
281
+ export type LifeOpsWorkflowSchedule = {
282
+ kind: "manual";
283
+ } | {
284
+ kind: "once";
285
+ runAt: string;
286
+ timezone: string;
287
+ } | {
288
+ kind: "interval";
289
+ everyMinutes: number;
290
+ timezone: string;
291
+ } | {
292
+ kind: "cron";
293
+ cronExpression: string;
294
+ timezone: string;
295
+ };
296
+ export interface LifeOpsWorkflowPermissionPolicy {
297
+ allowBrowserActions: boolean;
298
+ trustedBrowserActions: boolean;
299
+ allowXPosts: boolean;
300
+ trustedXPosting: boolean;
301
+ requireConfirmationForBrowserActions: boolean;
302
+ requireConfirmationForXPosts: boolean;
303
+ }
304
+ export declare const LIFEOPS_BROWSER_KINDS: readonly ["chrome", "safari"];
305
+ export type LifeOpsBrowserKind = (typeof LIFEOPS_BROWSER_KINDS)[number];
306
+ export declare const LIFEOPS_BROWSER_TRACKING_MODES: readonly ["off", "current_tab", "active_tabs"];
307
+ export type LifeOpsBrowserTrackingMode = (typeof LIFEOPS_BROWSER_TRACKING_MODES)[number];
308
+ export declare const LIFEOPS_BROWSER_SITE_ACCESS_MODES: readonly ["current_site_only", "granted_sites", "all_sites"];
309
+ export type LifeOpsBrowserSiteAccessMode = (typeof LIFEOPS_BROWSER_SITE_ACCESS_MODES)[number];
310
+ export declare const LIFEOPS_BROWSER_COMPANION_CONNECTION_STATES: readonly ["disconnected", "connected", "paused", "permission_blocked"];
311
+ export type LifeOpsBrowserCompanionConnectionState = (typeof LIFEOPS_BROWSER_COMPANION_CONNECTION_STATES)[number];
312
+ export declare const LIFEOPS_BROWSER_ACTION_KINDS: readonly ["open", "navigate", "focus_tab", "back", "forward", "reload", "click", "type", "submit", "read_page", "extract_links", "extract_forms"];
313
+ export type LifeOpsBrowserActionKind = (typeof LIFEOPS_BROWSER_ACTION_KINDS)[number];
314
+ export interface LifeOpsBrowserAction {
315
+ id: string;
316
+ kind: LifeOpsBrowserActionKind;
317
+ label: string;
318
+ browser?: LifeOpsBrowserKind | null;
319
+ windowId?: string | null;
320
+ tabId?: string | null;
321
+ url: string | null;
322
+ selector: string | null;
323
+ text: string | null;
324
+ accountAffecting: boolean;
325
+ requiresConfirmation: boolean;
326
+ metadata: Record<string, unknown>;
327
+ }
328
+ export interface LifeOpsBrowserPermissionState {
329
+ tabs: boolean;
330
+ scripting: boolean;
331
+ activeTab: boolean;
332
+ allOrigins: boolean;
333
+ grantedOrigins: string[];
334
+ incognitoEnabled: boolean;
335
+ }
336
+ export interface LifeOpsBrowserSettings {
337
+ enabled: boolean;
338
+ trackingMode: LifeOpsBrowserTrackingMode;
339
+ allowBrowserControl: boolean;
340
+ requireConfirmationForAccountAffecting: boolean;
341
+ incognitoEnabled: boolean;
342
+ siteAccessMode: LifeOpsBrowserSiteAccessMode;
343
+ grantedOrigins: string[];
344
+ blockedOrigins: string[];
345
+ maxRememberedTabs: number;
346
+ pauseUntil: string | null;
347
+ metadata: Record<string, unknown>;
348
+ updatedAt: string | null;
349
+ }
350
+ export interface UpdateLifeOpsBrowserSettingsRequest {
351
+ enabled?: boolean;
352
+ trackingMode?: LifeOpsBrowserTrackingMode;
353
+ allowBrowserControl?: boolean;
354
+ requireConfirmationForAccountAffecting?: boolean;
355
+ incognitoEnabled?: boolean;
356
+ siteAccessMode?: LifeOpsBrowserSiteAccessMode;
357
+ grantedOrigins?: string[];
358
+ blockedOrigins?: string[];
359
+ maxRememberedTabs?: number;
360
+ pauseUntil?: string | null;
361
+ metadata?: Record<string, unknown>;
362
+ }
363
+ export interface LifeOpsBrowserCompanionStatus {
364
+ id: string;
365
+ agentId: string;
366
+ browser: LifeOpsBrowserKind;
367
+ profileId: string;
368
+ profileLabel: string;
369
+ label: string;
370
+ extensionVersion: string | null;
371
+ connectionState: LifeOpsBrowserCompanionConnectionState;
372
+ permissions: LifeOpsBrowserPermissionState;
373
+ lastSeenAt: string | null;
374
+ pairedAt: string | null;
375
+ metadata: Record<string, unknown>;
376
+ createdAt: string;
377
+ updatedAt: string;
378
+ }
379
+ export interface LifeOpsBrowserTabSummary {
380
+ id: string;
381
+ agentId: string;
382
+ companionId: string | null;
383
+ browser: LifeOpsBrowserKind;
384
+ profileId: string;
385
+ windowId: string;
386
+ tabId: string;
387
+ url: string;
388
+ title: string;
389
+ activeInWindow: boolean;
390
+ focusedWindow: boolean;
391
+ focusedActive: boolean;
392
+ incognito: boolean;
393
+ faviconUrl: string | null;
394
+ lastSeenAt: string;
395
+ lastFocusedAt: string | null;
396
+ metadata: Record<string, unknown>;
397
+ createdAt: string;
398
+ updatedAt: string;
399
+ }
400
+ export interface LifeOpsBrowserPageContext {
401
+ id: string;
402
+ agentId: string;
403
+ browser: LifeOpsBrowserKind;
404
+ profileId: string;
405
+ windowId: string;
406
+ tabId: string;
407
+ url: string;
408
+ title: string;
409
+ selectionText: string | null;
410
+ mainText: string | null;
411
+ headings: string[];
412
+ links: Array<{
413
+ text: string;
414
+ href: string;
415
+ }>;
416
+ forms: Array<{
417
+ action: string | null;
418
+ fields: string[];
419
+ }>;
420
+ capturedAt: string;
421
+ metadata: Record<string, unknown>;
422
+ }
423
+ export interface UpsertLifeOpsBrowserCompanionRequest {
424
+ browser: LifeOpsBrowserKind;
425
+ profileId: string;
426
+ profileLabel?: string | null;
427
+ label: string;
428
+ extensionVersion?: string | null;
429
+ connectionState?: LifeOpsBrowserCompanionConnectionState;
430
+ permissions?: Partial<LifeOpsBrowserPermissionState>;
431
+ lastSeenAt?: string | null;
432
+ metadata?: Record<string, unknown>;
433
+ }
434
+ export interface SyncLifeOpsBrowserStateRequest {
435
+ companion: UpsertLifeOpsBrowserCompanionRequest;
436
+ tabs: Array<{
437
+ browser: LifeOpsBrowserKind;
438
+ profileId: string;
439
+ windowId: string;
440
+ tabId: string;
441
+ url: string;
442
+ title: string;
443
+ activeInWindow: boolean;
444
+ focusedWindow: boolean;
445
+ focusedActive: boolean;
446
+ incognito?: boolean;
447
+ faviconUrl?: string | null;
448
+ lastSeenAt?: string;
449
+ lastFocusedAt?: string | null;
450
+ metadata?: Record<string, unknown>;
451
+ }>;
452
+ pageContexts?: Array<{
453
+ browser: LifeOpsBrowserKind;
454
+ profileId: string;
455
+ windowId: string;
456
+ tabId: string;
457
+ url: string;
458
+ title: string;
459
+ selectionText?: string | null;
460
+ mainText?: string | null;
461
+ headings?: string[];
462
+ links?: Array<{
463
+ text: string;
464
+ href: string;
465
+ }>;
466
+ forms?: Array<{
467
+ action: string | null;
468
+ fields: string[];
469
+ }>;
470
+ capturedAt?: string;
471
+ metadata?: Record<string, unknown>;
472
+ }>;
473
+ }
474
+ export interface CreateLifeOpsBrowserCompanionPairingRequest {
475
+ browser: LifeOpsBrowserKind;
476
+ profileId: string;
477
+ profileLabel?: string | null;
478
+ label?: string | null;
479
+ extensionVersion?: string | null;
480
+ metadata?: Record<string, unknown>;
481
+ }
482
+ export interface LifeOpsBrowserCompanionPairingResponse {
483
+ companion: LifeOpsBrowserCompanionStatus;
484
+ pairingToken: string;
485
+ }
486
+ export interface UpdateLifeOpsBrowserSessionProgressRequest {
487
+ currentActionIndex?: number;
488
+ result?: Record<string, unknown>;
489
+ metadata?: Record<string, unknown>;
490
+ }
491
+ export interface LifeOpsBrowserCompanionSyncResponse {
492
+ companion: LifeOpsBrowserCompanionStatus;
493
+ tabs: LifeOpsBrowserTabSummary[];
494
+ currentPage: LifeOpsBrowserPageContext | null;
495
+ settings: LifeOpsBrowserSettings;
496
+ session: LifeOpsBrowserSession | null;
497
+ }
498
+ export interface LifeOpsBrowserCompanionPackageStatus {
499
+ extensionPath: string | null;
500
+ chromeBuildPath: string | null;
501
+ chromePackagePath: string | null;
502
+ safariWebExtensionPath: string | null;
503
+ safariAppPath: string | null;
504
+ safariPackagePath: string | null;
505
+ releaseManifest: LifeOpsBrowserCompanionReleaseManifest | null;
506
+ }
507
+ export interface LifeOpsBrowserCompanionReleaseAsset {
508
+ fileName: string;
509
+ downloadUrl: string | null;
510
+ }
511
+ export interface LifeOpsBrowserCompanionReleaseTarget {
512
+ installKind: "chrome_web_store" | "apple_app_store" | "github_release" | "local_download";
513
+ installUrl: string | null;
514
+ storeListingUrl: string | null;
515
+ asset: LifeOpsBrowserCompanionReleaseAsset;
516
+ }
517
+ export interface LifeOpsBrowserCompanionReleaseManifest {
518
+ schema: "lifeops_browser_release_v2";
519
+ releaseTag: string;
520
+ releaseVersion: string;
521
+ repository: string | null;
522
+ releasePageUrl: string | null;
523
+ chromeVersion: string;
524
+ chromeVersionName: string;
525
+ safariMarketingVersion: string;
526
+ safariBuildVersion: string;
527
+ chrome: LifeOpsBrowserCompanionReleaseTarget;
528
+ safari: LifeOpsBrowserCompanionReleaseTarget;
529
+ generatedAt: string;
530
+ }
531
+ export interface LifeOpsWorkflowActionBase {
532
+ id?: string;
533
+ resultKey?: string;
534
+ }
535
+ export type LifeOpsWorkflowAction = (LifeOpsWorkflowActionBase & {
536
+ kind: "create_task";
537
+ request: CreateLifeOpsDefinitionRequest;
538
+ }) | (LifeOpsWorkflowActionBase & {
539
+ kind: "relock_website_access";
540
+ request: {
541
+ groupKey: string;
542
+ };
543
+ }) | (LifeOpsWorkflowActionBase & {
544
+ kind: "resolve_website_access_callback";
545
+ request: {
546
+ callbackKey: string;
547
+ };
548
+ }) | (LifeOpsWorkflowActionBase & {
549
+ kind: "get_calendar_feed";
550
+ request?: GetLifeOpsCalendarFeedRequest;
551
+ }) | (LifeOpsWorkflowActionBase & {
552
+ kind: "get_gmail_triage";
553
+ request?: GetLifeOpsGmailTriageRequest;
554
+ }) | (LifeOpsWorkflowActionBase & {
555
+ kind: "summarize";
556
+ sourceKey?: string;
557
+ prompt?: string;
558
+ }) | (LifeOpsWorkflowActionBase & {
559
+ kind: "browser";
560
+ sessionTitle: string;
561
+ actions: Array<Omit<LifeOpsBrowserAction, "id">>;
562
+ });
563
+ export interface LifeOpsWorkflowActionPlan {
564
+ steps: LifeOpsWorkflowAction[];
565
+ }
566
+ export declare const LIFEOPS_REMINDER_ATTEMPT_OUTCOMES: readonly ["delivered", "delivered_read", "delivered_unread", "blocked_policy", "blocked_quiet_hours", "blocked_urgency", "blocked_acknowledged", "blocked_connector", "skipped_duplicate"];
567
+ export type LifeOpsReminderAttemptOutcome = (typeof LIFEOPS_REMINDER_ATTEMPT_OUTCOMES)[number];
568
+ export interface LifeOpsReminderAttempt {
569
+ id: string;
570
+ agentId: string;
571
+ planId: string;
572
+ ownerType: LifeOpsOwnerType;
573
+ ownerId: string;
574
+ occurrenceId: string | null;
575
+ channel: LifeOpsReminderChannel;
576
+ stepIndex: number;
577
+ scheduledFor: string;
578
+ attemptedAt: string | null;
579
+ outcome: LifeOpsReminderAttemptOutcome;
580
+ connectorRef: string | null;
581
+ deliveryMetadata: Record<string, unknown>;
582
+ }
583
+ export interface LifeOpsConnectorGrant {
584
+ id: string;
585
+ agentId: string;
586
+ provider: LifeOpsConnectorProvider;
587
+ side: LifeOpsConnectorSide;
588
+ identity: Record<string, unknown>;
589
+ grantedScopes: string[];
590
+ capabilities: string[];
591
+ tokenRef: string | null;
592
+ mode: LifeOpsConnectorMode;
593
+ executionTarget: LifeOpsConnectorExecutionTarget;
594
+ sourceOfTruth: LifeOpsConnectorSourceOfTruth;
595
+ preferredByAgent: boolean;
596
+ cloudConnectionId: string | null;
597
+ metadata: Record<string, unknown>;
598
+ lastRefreshAt: string | null;
599
+ createdAt: string;
600
+ updatedAt: string;
601
+ }
602
+ export interface LifeOpsChannelPolicy {
603
+ id: string;
604
+ agentId: string;
605
+ channelType: LifeOpsChannelType;
606
+ channelRef: string;
607
+ privacyClass: LifeOpsPrivacyClass;
608
+ allowReminders: boolean;
609
+ allowEscalation: boolean;
610
+ allowPosts: boolean;
611
+ requireConfirmationForActions: boolean;
612
+ metadata: Record<string, unknown>;
613
+ createdAt: string;
614
+ updatedAt: string;
615
+ }
616
+ export declare const LIFEOPS_ACTIVITY_SIGNAL_SOURCES: readonly ["app_lifecycle", "page_visibility", "desktop_power", "mobile_device", "mobile_health"];
617
+ export type LifeOpsActivitySignalSource = (typeof LIFEOPS_ACTIVITY_SIGNAL_SOURCES)[number];
618
+ export declare const LIFEOPS_ACTIVITY_SIGNAL_STATES: readonly ["active", "idle", "background", "locked", "sleeping"];
619
+ export type LifeOpsActivitySignalState = (typeof LIFEOPS_ACTIVITY_SIGNAL_STATES)[number];
620
+ export declare const LIFEOPS_HEALTH_SIGNAL_SOURCES: readonly ["healthkit", "health_connect"];
621
+ export type LifeOpsHealthSignalSource = (typeof LIFEOPS_HEALTH_SIGNAL_SOURCES)[number];
622
+ export interface LifeOpsHealthSignalSleepSummary {
623
+ available: boolean;
624
+ isSleeping: boolean;
625
+ asleepAt: string | null;
626
+ awakeAt: string | null;
627
+ durationMinutes: number | null;
628
+ stage: string | null;
629
+ }
630
+ export interface LifeOpsHealthSignalBiometrics {
631
+ sampleAt: string | null;
632
+ heartRateBpm: number | null;
633
+ restingHeartRateBpm: number | null;
634
+ heartRateVariabilityMs: number | null;
635
+ respiratoryRate: number | null;
636
+ bloodOxygenPercent: number | null;
637
+ }
638
+ export interface LifeOpsHealthSignal {
639
+ source: LifeOpsHealthSignalSource;
640
+ permissions: {
641
+ sleep: boolean;
642
+ biometrics: boolean;
643
+ };
644
+ sleep: LifeOpsHealthSignalSleepSummary;
645
+ biometrics: LifeOpsHealthSignalBiometrics;
646
+ warnings: string[];
647
+ }
648
+ export interface LifeOpsActivitySignal {
649
+ id: string;
650
+ agentId: string;
651
+ source: LifeOpsActivitySignalSource;
652
+ platform: string;
653
+ state: LifeOpsActivitySignalState;
654
+ observedAt: string;
655
+ idleState: "active" | "idle" | "locked" | "unknown" | null;
656
+ idleTimeSeconds: number | null;
657
+ onBattery: boolean | null;
658
+ health: LifeOpsHealthSignal | null;
659
+ metadata: Record<string, unknown>;
660
+ createdAt: string;
661
+ }
662
+ export interface LifeOpsReminderPreferenceSetting {
663
+ intensity: LifeOpsReminderIntensity;
664
+ source: LifeOpsReminderPreferenceSource;
665
+ updatedAt: string | null;
666
+ note: string | null;
667
+ }
668
+ export interface LifeOpsReminderPreference {
669
+ definitionId: string | null;
670
+ definitionTitle: string | null;
671
+ global: LifeOpsReminderPreferenceSetting;
672
+ definition: LifeOpsReminderPreferenceSetting | null;
673
+ effective: LifeOpsReminderPreferenceSetting;
674
+ }
675
+ export interface LifeOpsAuditEvent {
676
+ id: string;
677
+ agentId: string;
678
+ eventType: LifeOpsAuditEventType;
679
+ ownerType: LifeOpsOwnerType;
680
+ ownerId: string;
681
+ reason: string;
682
+ inputs: Record<string, unknown>;
683
+ decision: Record<string, unknown>;
684
+ actor: LifeOpsActor;
685
+ createdAt: string;
686
+ }
687
+ export interface LifeOpsActiveReminderView {
688
+ domain: LifeOpsDomain;
689
+ subjectType: LifeOpsSubjectType;
690
+ subjectId: string;
691
+ ownerType: "occurrence" | "calendar_event";
692
+ ownerId: string;
693
+ occurrenceId: string | null;
694
+ definitionId: string | null;
695
+ eventId: string | null;
696
+ title: string;
697
+ channel: LifeOpsReminderChannel;
698
+ stepIndex: number;
699
+ stepLabel: string;
700
+ scheduledFor: string;
701
+ dueAt: string | null;
702
+ state: LifeOpsOccurrenceState | "upcoming";
703
+ htmlLink?: string | null;
704
+ eventStartAt?: string | null;
705
+ }
706
+ export interface LifeOpsOverviewSummary {
707
+ activeOccurrenceCount: number;
708
+ overdueOccurrenceCount: number;
709
+ snoozedOccurrenceCount: number;
710
+ activeReminderCount: number;
711
+ activeGoalCount: number;
712
+ }
713
+ export interface LifeOpsOverviewSection {
714
+ occurrences: LifeOpsOccurrenceView[];
715
+ goals: LifeOpsGoalDefinition[];
716
+ reminders: LifeOpsActiveReminderView[];
717
+ summary: LifeOpsOverviewSummary;
718
+ }
719
+ export interface LifeOpsOverview {
720
+ occurrences: LifeOpsOccurrenceView[];
721
+ goals: LifeOpsGoalDefinition[];
722
+ reminders: LifeOpsActiveReminderView[];
723
+ summary: LifeOpsOverviewSummary;
724
+ owner: LifeOpsOverviewSection;
725
+ agentOps: LifeOpsOverviewSection;
726
+ }
727
+ export interface LifeOpsCalendarEventAttendee {
728
+ email: string | null;
729
+ displayName: string | null;
730
+ responseStatus: string | null;
731
+ self: boolean;
732
+ organizer: boolean;
733
+ optional: boolean;
734
+ }
735
+ export interface LifeOpsCalendarEvent {
736
+ id: string;
737
+ externalId: string;
738
+ agentId: string;
739
+ provider: "google";
740
+ side: LifeOpsConnectorSide;
741
+ calendarId: string;
742
+ title: string;
743
+ description: string;
744
+ location: string;
745
+ status: string;
746
+ startAt: string;
747
+ endAt: string;
748
+ isAllDay: boolean;
749
+ timezone: string | null;
750
+ htmlLink: string | null;
751
+ conferenceLink: string | null;
752
+ organizer: Record<string, unknown> | null;
753
+ attendees: LifeOpsCalendarEventAttendee[];
754
+ metadata: Record<string, unknown>;
755
+ syncedAt: string;
756
+ updatedAt: string;
757
+ }
758
+ export interface LifeOpsCalendarFeed {
759
+ calendarId: string;
760
+ events: LifeOpsCalendarEvent[];
761
+ source: "cache" | "synced";
762
+ timeMin: string;
763
+ timeMax: string;
764
+ syncedAt: string | null;
765
+ }
766
+ export interface GetLifeOpsCalendarFeedRequest {
767
+ side?: LifeOpsConnectorSide;
768
+ mode?: LifeOpsConnectorMode;
769
+ calendarId?: string;
770
+ timeMin?: string;
771
+ timeMax?: string;
772
+ timeZone?: string;
773
+ forceSync?: boolean;
774
+ }
775
+ export interface LifeOpsGmailMessageSummary {
776
+ id: string;
777
+ externalId: string;
778
+ agentId: string;
779
+ provider: "google";
780
+ side: LifeOpsConnectorSide;
781
+ threadId: string;
782
+ subject: string;
783
+ from: string;
784
+ fromEmail: string | null;
785
+ replyTo: string | null;
786
+ to: string[];
787
+ cc: string[];
788
+ snippet: string;
789
+ receivedAt: string;
790
+ isUnread: boolean;
791
+ isImportant: boolean;
792
+ likelyReplyNeeded: boolean;
793
+ triageScore: number;
794
+ triageReason: string;
795
+ labels: string[];
796
+ htmlLink: string | null;
797
+ metadata: Record<string, unknown>;
798
+ syncedAt: string;
799
+ updatedAt: string;
800
+ }
801
+ export interface LifeOpsGmailTriageSummary {
802
+ unreadCount: number;
803
+ importantNewCount: number;
804
+ likelyReplyNeededCount: number;
805
+ }
806
+ export interface LifeOpsGmailTriageFeed {
807
+ messages: LifeOpsGmailMessageSummary[];
808
+ source: "cache" | "synced";
809
+ syncedAt: string | null;
810
+ summary: LifeOpsGmailTriageSummary;
811
+ }
812
+ export interface LifeOpsGmailNeedsResponseSummary {
813
+ totalCount: number;
814
+ unreadCount: number;
815
+ importantCount: number;
816
+ }
817
+ export interface LifeOpsGmailNeedsResponseFeed {
818
+ messages: LifeOpsGmailMessageSummary[];
819
+ source: "cache" | "synced";
820
+ syncedAt: string | null;
821
+ summary: LifeOpsGmailNeedsResponseSummary;
822
+ }
823
+ export interface GetLifeOpsGmailTriageRequest {
824
+ side?: LifeOpsConnectorSide;
825
+ mode?: LifeOpsConnectorMode;
826
+ forceSync?: boolean;
827
+ maxResults?: number;
828
+ }
829
+ export interface GetLifeOpsGmailSearchRequest {
830
+ side?: LifeOpsConnectorSide;
831
+ mode?: LifeOpsConnectorMode;
832
+ forceSync?: boolean;
833
+ maxResults?: number;
834
+ query: string;
835
+ replyNeededOnly?: boolean;
836
+ }
837
+ export interface LifeOpsGmailSearchSummary {
838
+ totalCount: number;
839
+ unreadCount: number;
840
+ importantCount: number;
841
+ replyNeededCount: number;
842
+ }
843
+ export interface LifeOpsGmailSearchFeed {
844
+ query: string;
845
+ messages: LifeOpsGmailMessageSummary[];
846
+ source: "cache" | "synced";
847
+ syncedAt: string | null;
848
+ summary: LifeOpsGmailSearchSummary;
849
+ }
850
+ export declare const LIFEOPS_GMAIL_DRAFT_TONES: readonly ["brief", "neutral", "warm"];
851
+ export type LifeOpsGmailDraftTone = (typeof LIFEOPS_GMAIL_DRAFT_TONES)[number];
852
+ export interface CreateLifeOpsGmailReplyDraftRequest {
853
+ side?: LifeOpsConnectorSide;
854
+ mode?: LifeOpsConnectorMode;
855
+ messageId: string;
856
+ tone?: LifeOpsGmailDraftTone;
857
+ intent?: string;
858
+ includeQuotedOriginal?: boolean;
859
+ conversationContext?: string[];
860
+ actionHistory?: string[];
861
+ trajectorySummary?: string | null;
862
+ }
863
+ export interface LifeOpsGmailReplyDraft {
864
+ messageId: string;
865
+ threadId: string;
866
+ subject: string;
867
+ to: string[];
868
+ cc: string[];
869
+ bodyText: string;
870
+ previewLines: string[];
871
+ sendAllowed: boolean;
872
+ requiresConfirmation: boolean;
873
+ }
874
+ export interface CreateLifeOpsGmailBatchReplyDraftsRequest {
875
+ side?: LifeOpsConnectorSide;
876
+ mode?: LifeOpsConnectorMode;
877
+ forceSync?: boolean;
878
+ maxResults?: number;
879
+ query?: string;
880
+ messageIds?: string[];
881
+ tone?: LifeOpsGmailDraftTone;
882
+ intent?: string;
883
+ includeQuotedOriginal?: boolean;
884
+ replyNeededOnly?: boolean;
885
+ conversationContext?: string[];
886
+ actionHistory?: string[];
887
+ trajectorySummary?: string | null;
888
+ }
889
+ export interface LifeOpsGmailBatchReplyDraftsSummary {
890
+ totalCount: number;
891
+ sendAllowedCount: number;
892
+ requiresConfirmationCount: number;
893
+ }
894
+ export interface LifeOpsGmailBatchReplyDraftsFeed {
895
+ query: string | null;
896
+ messages: LifeOpsGmailMessageSummary[];
897
+ drafts: LifeOpsGmailReplyDraft[];
898
+ source: "cache" | "synced";
899
+ syncedAt: string | null;
900
+ summary: LifeOpsGmailBatchReplyDraftsSummary;
901
+ }
902
+ export interface SendLifeOpsGmailReplyRequest {
903
+ side?: LifeOpsConnectorSide;
904
+ mode?: LifeOpsConnectorMode;
905
+ messageId: string;
906
+ bodyText: string;
907
+ subject?: string;
908
+ to?: string[];
909
+ cc?: string[];
910
+ confirmSend?: boolean;
911
+ }
912
+ export interface SendLifeOpsGmailMessageRequest {
913
+ side?: LifeOpsConnectorSide;
914
+ mode?: LifeOpsConnectorMode;
915
+ to: string[];
916
+ cc?: string[];
917
+ bcc?: string[];
918
+ subject: string;
919
+ bodyText: string;
920
+ confirmSend?: boolean;
921
+ }
922
+ export interface LifeOpsGmailBatchReplySendItem {
923
+ messageId: string;
924
+ bodyText: string;
925
+ subject?: string;
926
+ to?: string[];
927
+ cc?: string[];
928
+ }
929
+ export interface SendLifeOpsGmailBatchReplyRequest {
930
+ side?: LifeOpsConnectorSide;
931
+ mode?: LifeOpsConnectorMode;
932
+ confirmSend?: boolean;
933
+ items: LifeOpsGmailBatchReplySendItem[];
934
+ }
935
+ export interface LifeOpsGmailBatchReplySendResult {
936
+ ok: true;
937
+ sentCount: number;
938
+ }
939
+ export declare const LIFEOPS_CALENDAR_WINDOW_PRESETS: readonly ["tomorrow_morning", "tomorrow_afternoon", "tomorrow_evening"];
940
+ export type LifeOpsCalendarWindowPreset = (typeof LIFEOPS_CALENDAR_WINDOW_PRESETS)[number];
941
+ export interface CreateLifeOpsCalendarEventAttendee {
942
+ email: string;
943
+ displayName?: string;
944
+ optional?: boolean;
945
+ }
946
+ export interface CreateLifeOpsCalendarEventRequest {
947
+ side?: LifeOpsConnectorSide;
948
+ mode?: LifeOpsConnectorMode;
949
+ calendarId?: string;
950
+ title: string;
951
+ description?: string;
952
+ location?: string;
953
+ startAt?: string;
954
+ endAt?: string;
955
+ timeZone?: string;
956
+ durationMinutes?: number;
957
+ windowPreset?: LifeOpsCalendarWindowPreset;
958
+ attendees?: CreateLifeOpsCalendarEventAttendee[];
959
+ }
960
+ export interface LifeOpsNextCalendarEventContext {
961
+ event: LifeOpsCalendarEvent | null;
962
+ startsAt: string | null;
963
+ startsInMinutes: number | null;
964
+ attendeeCount: number;
965
+ attendeeNames: string[];
966
+ location: string | null;
967
+ conferenceLink: string | null;
968
+ preparationChecklist: string[];
969
+ linkedMailState: "unavailable" | "cache" | "synced" | "error";
970
+ linkedMailError: string | null;
971
+ linkedMail: Array<Pick<LifeOpsGmailMessageSummary, "id" | "subject" | "from" | "receivedAt" | "snippet" | "htmlLink">>;
972
+ }
973
+ export declare const LIFEOPS_GOOGLE_CONNECTOR_REASONS: readonly ["connected", "disconnected", "config_missing", "token_missing", "needs_reauth"];
974
+ export type LifeOpsGoogleConnectorReason = (typeof LIFEOPS_GOOGLE_CONNECTOR_REASONS)[number];
975
+ export interface LifeOpsGoogleConnectorStatus {
976
+ provider: "google";
977
+ side: LifeOpsConnectorSide;
978
+ mode: LifeOpsConnectorMode;
979
+ defaultMode: LifeOpsConnectorMode;
980
+ availableModes: LifeOpsConnectorMode[];
981
+ executionTarget: LifeOpsConnectorExecutionTarget;
982
+ sourceOfTruth: LifeOpsConnectorSourceOfTruth;
983
+ configured: boolean;
984
+ connected: boolean;
985
+ reason: LifeOpsGoogleConnectorReason;
986
+ preferredByAgent: boolean;
987
+ cloudConnectionId: string | null;
988
+ identity: Record<string, unknown> | null;
989
+ grantedCapabilities: LifeOpsGoogleCapability[];
990
+ grantedScopes: string[];
991
+ expiresAt: string | null;
992
+ hasRefreshToken: boolean;
993
+ grant: LifeOpsConnectorGrant | null;
994
+ }
995
+ export interface LifeOpsXConnectorStatus {
996
+ provider: "x";
997
+ mode: LifeOpsConnectorMode;
998
+ connected: boolean;
999
+ grantedCapabilities: LifeOpsXCapability[];
1000
+ grantedScopes: string[];
1001
+ identity: Record<string, unknown> | null;
1002
+ hasCredentials: boolean;
1003
+ grant: LifeOpsConnectorGrant | null;
1004
+ }
1005
+ export interface StartLifeOpsGoogleConnectorRequest {
1006
+ side?: LifeOpsConnectorSide;
1007
+ mode?: LifeOpsConnectorMode;
1008
+ capabilities?: LifeOpsGoogleCapability[];
1009
+ redirectUrl?: string;
1010
+ }
1011
+ export interface StartLifeOpsGoogleConnectorResponse {
1012
+ provider: "google";
1013
+ side: LifeOpsConnectorSide;
1014
+ mode: LifeOpsConnectorMode;
1015
+ requestedCapabilities: LifeOpsGoogleCapability[];
1016
+ redirectUri: string;
1017
+ authUrl: string;
1018
+ }
1019
+ export interface SelectLifeOpsGoogleConnectorPreferenceRequest {
1020
+ side?: LifeOpsConnectorSide;
1021
+ mode?: LifeOpsConnectorMode;
1022
+ }
1023
+ export interface DisconnectLifeOpsGoogleConnectorRequest {
1024
+ side?: LifeOpsConnectorSide;
1025
+ mode?: LifeOpsConnectorMode;
1026
+ }
1027
+ export interface UpsertLifeOpsXConnectorRequest {
1028
+ mode?: LifeOpsConnectorMode;
1029
+ capabilities: LifeOpsXCapability[];
1030
+ grantedScopes?: string[];
1031
+ identity?: Record<string, unknown>;
1032
+ metadata?: Record<string, unknown>;
1033
+ }
1034
+ export interface CreateLifeOpsXPostRequest {
1035
+ mode?: LifeOpsConnectorMode;
1036
+ text: string;
1037
+ confirmPost?: boolean;
1038
+ }
1039
+ export interface LifeOpsXPostResponse {
1040
+ ok: boolean;
1041
+ status: number | null;
1042
+ postId?: string;
1043
+ error?: string;
1044
+ category: "success" | "auth" | "rate_limit" | "network" | "unknown";
1045
+ }
1046
+ export interface CreateLifeOpsDefinitionRequest {
1047
+ ownership?: LifeOpsOwnershipInput;
1048
+ kind: LifeOpsDefinitionKind;
1049
+ title: string;
1050
+ description?: string;
1051
+ originalIntent?: string;
1052
+ timezone?: string;
1053
+ priority?: number;
1054
+ cadence: LifeOpsCadence;
1055
+ windowPolicy?: LifeOpsWindowPolicy;
1056
+ progressionRule?: LifeOpsProgressionRule;
1057
+ websiteAccess?: LifeOpsWebsiteAccessPolicy | null;
1058
+ reminderPlan?: {
1059
+ steps: LifeOpsReminderStep[];
1060
+ mutePolicy?: Record<string, unknown>;
1061
+ quietHours?: Record<string, unknown>;
1062
+ } | null;
1063
+ goalId?: string | null;
1064
+ source?: string;
1065
+ metadata?: Record<string, unknown>;
1066
+ }
1067
+ export interface UpdateLifeOpsDefinitionRequest {
1068
+ ownership?: LifeOpsOwnershipInput;
1069
+ title?: string;
1070
+ description?: string;
1071
+ originalIntent?: string;
1072
+ timezone?: string;
1073
+ priority?: number;
1074
+ cadence?: LifeOpsCadence;
1075
+ windowPolicy?: LifeOpsWindowPolicy;
1076
+ progressionRule?: LifeOpsProgressionRule;
1077
+ websiteAccess?: LifeOpsWebsiteAccessPolicy | null;
1078
+ status?: LifeOpsDefinitionStatus;
1079
+ reminderPlan?: {
1080
+ steps: LifeOpsReminderStep[];
1081
+ mutePolicy?: Record<string, unknown>;
1082
+ quietHours?: Record<string, unknown>;
1083
+ } | null;
1084
+ goalId?: string | null;
1085
+ metadata?: Record<string, unknown>;
1086
+ }
1087
+ export interface CreateLifeOpsGoalRequest {
1088
+ ownership?: LifeOpsOwnershipInput;
1089
+ title: string;
1090
+ description?: string;
1091
+ cadence?: Record<string, unknown> | null;
1092
+ supportStrategy?: Record<string, unknown>;
1093
+ successCriteria?: Record<string, unknown>;
1094
+ status?: LifeOpsGoalStatus;
1095
+ reviewState?: LifeOpsGoalReviewState;
1096
+ metadata?: Record<string, unknown>;
1097
+ }
1098
+ export interface UpdateLifeOpsGoalRequest {
1099
+ ownership?: LifeOpsOwnershipInput;
1100
+ title?: string;
1101
+ description?: string;
1102
+ cadence?: Record<string, unknown> | null;
1103
+ supportStrategy?: Record<string, unknown>;
1104
+ successCriteria?: Record<string, unknown>;
1105
+ status?: LifeOpsGoalStatus;
1106
+ reviewState?: LifeOpsGoalReviewState;
1107
+ metadata?: Record<string, unknown>;
1108
+ }
1109
+ export interface LifeOpsDefinitionRecord {
1110
+ definition: LifeOpsTaskDefinition;
1111
+ reminderPlan: LifeOpsReminderPlan | null;
1112
+ performance: LifeOpsDefinitionPerformance;
1113
+ }
1114
+ export interface LifeOpsGoalRecord {
1115
+ goal: LifeOpsGoalDefinition;
1116
+ links: LifeOpsGoalLink[];
1117
+ }
1118
+ export declare const LIFEOPS_GOAL_SUGGESTION_KINDS: readonly ["create_support", "focus_now", "resolve_overdue", "review_progress", "tighten_cadence"];
1119
+ export type LifeOpsGoalSuggestionKind = (typeof LIFEOPS_GOAL_SUGGESTION_KINDS)[number];
1120
+ export interface LifeOpsGoalSupportSuggestion {
1121
+ kind: LifeOpsGoalSuggestionKind;
1122
+ title: string;
1123
+ detail: string;
1124
+ definitionId: string | null;
1125
+ occurrenceId: string | null;
1126
+ }
1127
+ export interface LifeOpsGoalReview {
1128
+ goal: LifeOpsGoalDefinition;
1129
+ links: LifeOpsGoalLink[];
1130
+ linkedDefinitions: LifeOpsTaskDefinition[];
1131
+ activeOccurrences: LifeOpsOccurrenceView[];
1132
+ overdueOccurrences: LifeOpsOccurrenceView[];
1133
+ recentCompletions: LifeOpsOccurrenceView[];
1134
+ suggestions: LifeOpsGoalSupportSuggestion[];
1135
+ audits: LifeOpsAuditEvent[];
1136
+ summary: {
1137
+ linkedDefinitionCount: number;
1138
+ activeOccurrenceCount: number;
1139
+ overdueOccurrenceCount: number;
1140
+ completedLast7Days: number;
1141
+ lastActivityAt: string | null;
1142
+ reviewState: LifeOpsGoalReviewState;
1143
+ explanation: string;
1144
+ progressScore?: number | null;
1145
+ confidence?: number | null;
1146
+ evidenceSummary?: string | null;
1147
+ missingEvidence?: string[];
1148
+ groundingState?: string | null;
1149
+ groundingSummary?: string | null;
1150
+ semanticReviewedAt?: string | null;
1151
+ };
1152
+ }
1153
+ export interface LifeOpsDefinitionPerformanceWindow {
1154
+ scheduledCount: number;
1155
+ completedCount: number;
1156
+ skippedCount: number;
1157
+ pendingCount: number;
1158
+ completionRate: number;
1159
+ perfectDayCount: number;
1160
+ }
1161
+ export interface LifeOpsDefinitionPerformance {
1162
+ lastCompletedAt: string | null;
1163
+ lastSkippedAt: string | null;
1164
+ lastActivityAt: string | null;
1165
+ totalScheduledCount: number;
1166
+ totalCompletedCount: number;
1167
+ totalSkippedCount: number;
1168
+ totalPendingCount: number;
1169
+ currentOccurrenceStreak: number;
1170
+ bestOccurrenceStreak: number;
1171
+ currentPerfectDayStreak: number;
1172
+ bestPerfectDayStreak: number;
1173
+ last7Days: LifeOpsDefinitionPerformanceWindow;
1174
+ last30Days: LifeOpsDefinitionPerformanceWindow;
1175
+ }
1176
+ export interface SnoozeLifeOpsOccurrenceRequest {
1177
+ minutes?: number;
1178
+ preset?: "15m" | "30m" | "1h" | "tonight" | "tomorrow_morning";
1179
+ }
1180
+ export interface CompleteLifeOpsOccurrenceRequest {
1181
+ note?: string;
1182
+ metadata?: Record<string, unknown>;
1183
+ }
1184
+ export interface LifeOpsOccurrenceExplanation {
1185
+ occurrence: LifeOpsOccurrenceView;
1186
+ definition: LifeOpsTaskDefinition;
1187
+ definitionPerformance: LifeOpsDefinitionPerformance;
1188
+ reminderPlan: LifeOpsReminderPlan | null;
1189
+ linkedGoal: LifeOpsGoalRecord | null;
1190
+ reminderInspection: LifeOpsReminderInspection;
1191
+ definitionAudits: LifeOpsAuditEvent[];
1192
+ summary: {
1193
+ originalIntent: string;
1194
+ source: string;
1195
+ whyVisible: string;
1196
+ lastReminderAt: string | null;
1197
+ lastReminderChannel: LifeOpsReminderChannel | null;
1198
+ lastReminderOutcome: LifeOpsReminderAttemptOutcome | null;
1199
+ lastActionSummary: string | null;
1200
+ };
1201
+ }
1202
+ export interface UpsertLifeOpsChannelPolicyRequest {
1203
+ channelType: LifeOpsChannelType;
1204
+ channelRef: string;
1205
+ privacyClass?: LifeOpsPrivacyClass;
1206
+ allowReminders?: boolean;
1207
+ allowEscalation?: boolean;
1208
+ allowPosts?: boolean;
1209
+ requireConfirmationForActions?: boolean;
1210
+ metadata?: Record<string, unknown>;
1211
+ }
1212
+ export interface SetLifeOpsReminderPreferenceRequest {
1213
+ intensity: LifeOpsReminderIntensityInput;
1214
+ definitionId?: string | null;
1215
+ note?: string;
1216
+ }
1217
+ export interface CaptureLifeOpsPhoneConsentRequest {
1218
+ phoneNumber: string;
1219
+ consentGiven: boolean;
1220
+ allowSms: boolean;
1221
+ allowVoice: boolean;
1222
+ privacyClass?: LifeOpsPrivacyClass;
1223
+ metadata?: Record<string, unknown>;
1224
+ }
1225
+ export interface CaptureLifeOpsActivitySignalRequest {
1226
+ source: LifeOpsActivitySignalSource;
1227
+ platform?: string;
1228
+ state: LifeOpsActivitySignalState;
1229
+ observedAt?: string;
1230
+ idleState?: "active" | "idle" | "locked" | "unknown" | null;
1231
+ idleTimeSeconds?: number | null;
1232
+ onBattery?: boolean | null;
1233
+ health?: LifeOpsHealthSignal | null;
1234
+ metadata?: Record<string, unknown>;
1235
+ }
1236
+ export interface ProcessLifeOpsRemindersRequest {
1237
+ now?: string;
1238
+ limit?: number;
1239
+ }
1240
+ export interface LifeOpsReminderProcessingResult {
1241
+ now: string;
1242
+ attempts: LifeOpsReminderAttempt[];
1243
+ }
1244
+ export interface LifeOpsReminderInspection {
1245
+ ownerType: "occurrence" | "calendar_event";
1246
+ ownerId: string;
1247
+ reminderPlan: LifeOpsReminderPlan | null;
1248
+ attempts: LifeOpsReminderAttempt[];
1249
+ audits: LifeOpsAuditEvent[];
1250
+ }
1251
+ export interface AcknowledgeLifeOpsReminderRequest {
1252
+ ownerType: "occurrence" | "calendar_event";
1253
+ ownerId: string;
1254
+ acknowledgedAt?: string;
1255
+ note?: string;
1256
+ }
1257
+ export interface RelockLifeOpsWebsiteAccessRequest {
1258
+ groupKey: string;
1259
+ }
1260
+ export interface ResolveLifeOpsWebsiteAccessCallbackRequest {
1261
+ callbackKey: string;
1262
+ }
1263
+ export interface CreateLifeOpsWorkflowRequest {
1264
+ ownership?: LifeOpsOwnershipInput;
1265
+ title: string;
1266
+ triggerType: LifeOpsWorkflowTriggerType;
1267
+ schedule?: LifeOpsWorkflowSchedule;
1268
+ actionPlan: LifeOpsWorkflowActionPlan;
1269
+ permissionPolicy?: Partial<LifeOpsWorkflowPermissionPolicy>;
1270
+ status?: LifeOpsWorkflowStatus;
1271
+ createdBy?: LifeOpsActor;
1272
+ metadata?: Record<string, unknown>;
1273
+ }
1274
+ export interface UpdateLifeOpsWorkflowRequest {
1275
+ ownership?: LifeOpsOwnershipInput;
1276
+ title?: string;
1277
+ triggerType?: LifeOpsWorkflowTriggerType;
1278
+ schedule?: LifeOpsWorkflowSchedule;
1279
+ actionPlan?: LifeOpsWorkflowActionPlan;
1280
+ permissionPolicy?: Partial<LifeOpsWorkflowPermissionPolicy>;
1281
+ status?: LifeOpsWorkflowStatus;
1282
+ metadata?: Record<string, unknown>;
1283
+ }
1284
+ export interface RunLifeOpsWorkflowRequest {
1285
+ now?: string;
1286
+ confirmBrowserActions?: boolean;
1287
+ }
1288
+ export interface LifeOpsWorkflowRecord {
1289
+ definition: LifeOpsWorkflowDefinition;
1290
+ runs: LifeOpsWorkflowRun[];
1291
+ }
1292
+ export declare const LIFEOPS_BROWSER_SESSION_STATUSES: readonly ["awaiting_confirmation", "queued", "running", "done", "cancelled", "failed"];
1293
+ export type LifeOpsBrowserSessionStatus = (typeof LIFEOPS_BROWSER_SESSION_STATUSES)[number];
1294
+ export interface LifeOpsBrowserSession {
1295
+ id: string;
1296
+ agentId: string;
1297
+ domain: LifeOpsDomain;
1298
+ subjectType: LifeOpsSubjectType;
1299
+ subjectId: string;
1300
+ visibilityScope: LifeOpsVisibilityScope;
1301
+ contextPolicy: LifeOpsContextPolicy;
1302
+ workflowId: string | null;
1303
+ browser: LifeOpsBrowserKind | null;
1304
+ companionId: string | null;
1305
+ profileId: string | null;
1306
+ windowId: string | null;
1307
+ tabId: string | null;
1308
+ title: string;
1309
+ status: LifeOpsBrowserSessionStatus;
1310
+ actions: LifeOpsBrowserAction[];
1311
+ currentActionIndex: number;
1312
+ awaitingConfirmationForActionId: string | null;
1313
+ result: Record<string, unknown>;
1314
+ metadata: Record<string, unknown>;
1315
+ createdAt: string;
1316
+ updatedAt: string;
1317
+ finishedAt: string | null;
1318
+ }
1319
+ export interface CreateLifeOpsBrowserSessionRequest {
1320
+ ownership?: LifeOpsOwnershipInput;
1321
+ workflowId?: string | null;
1322
+ browser?: LifeOpsBrowserKind | null;
1323
+ companionId?: string | null;
1324
+ profileId?: string | null;
1325
+ windowId?: string | null;
1326
+ tabId?: string | null;
1327
+ title: string;
1328
+ actions: Array<Omit<LifeOpsBrowserAction, "id">>;
1329
+ }
1330
+ export interface ConfirmLifeOpsBrowserSessionRequest {
1331
+ confirmed: boolean;
1332
+ }
1333
+ export interface CompleteLifeOpsBrowserSessionRequest {
1334
+ status?: Extract<LifeOpsBrowserSessionStatus, "done" | "failed">;
1335
+ result?: Record<string, unknown>;
1336
+ }
1337
+ //# sourceMappingURL=lifeops.d.ts.map