autoui-react 0.1.0 → 0.1.1-alpha

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/index.d.ts CHANGED
@@ -1,166 +1,178 @@
1
1
  import { z } from 'zod';
2
2
  import React from 'react';
3
3
 
4
+ /**
5
+ * Interface for the runtime data context
6
+ */
7
+ interface DataContext {
8
+ [key: string]: unknown;
9
+ }
10
+
4
11
  /**
5
12
  * Event types that can be triggered by UI elements
6
13
  */
7
- declare const uiEventType: z.ZodEnum<["CLICK", "CHANGE", "SUBMIT", "MOUSEOVER", "MOUSEOUT", "FOCUS", "BLUR"]>;
14
+ declare const uiEventType: z.ZodEnum<["INIT", "CLICK", "CHANGE", "SUBMIT", "MOUSEOVER", "MOUSEOUT", "FOCUS", "BLUR"]>;
8
15
  type UIEventType = z.infer<typeof uiEventType>;
9
16
  /**
10
17
  * Event payload schema
11
18
  */
12
19
  declare const uiEvent: z.ZodObject<{
13
- type: z.ZodEnum<["CLICK", "CHANGE", "SUBMIT", "MOUSEOVER", "MOUSEOUT", "FOCUS", "BLUR"]>;
20
+ type: z.ZodEnum<["INIT", "CLICK", "CHANGE", "SUBMIT", "MOUSEOVER", "MOUSEOUT", "FOCUS", "BLUR"]>;
14
21
  nodeId: z.ZodString;
15
- timestamp: z.ZodOptional<z.ZodNumber>;
16
- payload: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
22
+ timestamp: z.ZodNullable<z.ZodNumber>;
23
+ payload: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
17
24
  }, "strip", z.ZodTypeAny, {
18
- type: "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
25
+ type: "INIT" | "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
19
26
  nodeId: string;
20
- timestamp?: number | undefined;
21
- payload?: Record<string, any> | undefined;
27
+ timestamp: number | null;
28
+ payload: Record<string, unknown> | null;
22
29
  }, {
23
- type: "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
30
+ type: "INIT" | "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
24
31
  nodeId: string;
25
- timestamp?: number | undefined;
26
- payload?: Record<string, any> | undefined;
32
+ timestamp: number | null;
33
+ payload: Record<string, unknown> | null;
27
34
  }>;
28
35
  type UIEvent = z.infer<typeof uiEvent>;
29
- /**
30
- * Core UI specification node
31
- * Represents a single element in the UI tree
32
- */
33
- declare const uiSpecNode: z.ZodType<UISpecNode>;
34
- type UISpecNode = {
36
+ interface UISpecNodeInterface {
35
37
  id: string;
36
- type: string;
37
- props?: Record<string, any> | undefined;
38
- bindings?: Record<string, any> | undefined;
39
- events?: Record<string, {
38
+ node_type: string;
39
+ props: Record<string, any> | null;
40
+ bindings: Record<string, any> | null;
41
+ events: Record<string, {
40
42
  action: string;
41
- target?: string | undefined;
42
- payload?: Record<string, any> | undefined;
43
- }> | undefined;
44
- children?: UISpecNode[] | undefined;
45
- };
43
+ target: string;
44
+ payload: Record<string, any> | null;
45
+ }> | null;
46
+ children: UISpecNodeInterface[] | null;
47
+ }
48
+ declare const uiSpecNode: z.ZodType<UISpecNodeInterface>;
49
+ type UISpecNode = z.infer<typeof uiSpecNode>;
46
50
  /**
47
51
  * Application state for the UI engine
48
52
  */
49
53
  declare const uiState: z.ZodObject<{
50
- layout: z.ZodOptional<z.ZodType<UISpecNode, z.ZodTypeDef, UISpecNode>>;
54
+ layout: z.ZodNullable<z.ZodType<UISpecNodeInterface, z.ZodTypeDef, UISpecNodeInterface>>;
51
55
  loading: z.ZodBoolean;
52
56
  history: z.ZodArray<z.ZodObject<{
53
- type: z.ZodEnum<["CLICK", "CHANGE", "SUBMIT", "MOUSEOVER", "MOUSEOUT", "FOCUS", "BLUR"]>;
57
+ type: z.ZodEnum<["INIT", "CLICK", "CHANGE", "SUBMIT", "MOUSEOVER", "MOUSEOUT", "FOCUS", "BLUR"]>;
54
58
  nodeId: z.ZodString;
55
- timestamp: z.ZodOptional<z.ZodNumber>;
56
- payload: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
59
+ timestamp: z.ZodNullable<z.ZodNumber>;
60
+ payload: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
57
61
  }, "strip", z.ZodTypeAny, {
58
- type: "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
62
+ type: "INIT" | "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
59
63
  nodeId: string;
60
- timestamp?: number | undefined;
61
- payload?: Record<string, any> | undefined;
64
+ timestamp: number | null;
65
+ payload: Record<string, unknown> | null;
62
66
  }, {
63
- type: "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
67
+ type: "INIT" | "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
64
68
  nodeId: string;
65
- timestamp?: number | undefined;
66
- payload?: Record<string, any> | undefined;
69
+ timestamp: number | null;
70
+ payload: Record<string, unknown> | null;
67
71
  }>, "many">;
68
- error: z.ZodOptional<z.ZodString>;
72
+ error: z.ZodNullable<z.ZodString>;
73
+ dataContext: z.ZodRecord<z.ZodString, z.ZodUnknown>;
69
74
  }, "strip", z.ZodTypeAny, {
75
+ layout: UISpecNodeInterface | null;
70
76
  loading: boolean;
71
77
  history: {
72
- type: "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
78
+ type: "INIT" | "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
73
79
  nodeId: string;
74
- timestamp?: number | undefined;
75
- payload?: Record<string, any> | undefined;
80
+ timestamp: number | null;
81
+ payload: Record<string, unknown> | null;
76
82
  }[];
77
- layout?: UISpecNode | undefined;
78
- error?: string | undefined;
83
+ error: string | null;
84
+ dataContext: Record<string, unknown>;
79
85
  }, {
86
+ layout: UISpecNodeInterface | null;
80
87
  loading: boolean;
81
88
  history: {
82
- type: "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
89
+ type: "INIT" | "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
83
90
  nodeId: string;
84
- timestamp?: number | undefined;
85
- payload?: Record<string, any> | undefined;
91
+ timestamp: number | null;
92
+ payload: Record<string, unknown> | null;
86
93
  }[];
87
- layout?: UISpecNode | undefined;
88
- error?: string | undefined;
94
+ error: string | null;
95
+ dataContext: Record<string, unknown>;
89
96
  }>;
90
- type UIState = z.infer<typeof uiState>;
97
+ type UIState = z.infer<typeof uiState> & {
98
+ dataContext: DataContext;
99
+ };
91
100
  /**
92
101
  * Input for the AI planner
93
102
  */
94
103
  declare const plannerInput: z.ZodObject<{
95
104
  schema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
96
105
  goal: z.ZodString;
97
- history: z.ZodOptional<z.ZodArray<z.ZodObject<{
98
- type: z.ZodEnum<["CLICK", "CHANGE", "SUBMIT", "MOUSEOVER", "MOUSEOUT", "FOCUS", "BLUR"]>;
106
+ history: z.ZodNullable<z.ZodArray<z.ZodObject<{
107
+ type: z.ZodEnum<["INIT", "CLICK", "CHANGE", "SUBMIT", "MOUSEOVER", "MOUSEOUT", "FOCUS", "BLUR"]>;
99
108
  nodeId: z.ZodString;
100
- timestamp: z.ZodOptional<z.ZodNumber>;
101
- payload: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
109
+ timestamp: z.ZodNullable<z.ZodNumber>;
110
+ payload: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
102
111
  }, "strip", z.ZodTypeAny, {
103
- type: "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
112
+ type: "INIT" | "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
104
113
  nodeId: string;
105
- timestamp?: number | undefined;
106
- payload?: Record<string, any> | undefined;
114
+ timestamp: number | null;
115
+ payload: Record<string, unknown> | null;
107
116
  }, {
108
- type: "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
117
+ type: "INIT" | "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
109
118
  nodeId: string;
110
- timestamp?: number | undefined;
111
- payload?: Record<string, any> | undefined;
119
+ timestamp: number | null;
120
+ payload: Record<string, unknown> | null;
112
121
  }>, "many">>;
113
- userContext: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
122
+ userContext: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
114
123
  }, "strip", z.ZodTypeAny, {
124
+ history: {
125
+ type: "INIT" | "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
126
+ nodeId: string;
127
+ timestamp: number | null;
128
+ payload: Record<string, unknown> | null;
129
+ }[] | null;
115
130
  schema: Record<string, unknown>;
116
131
  goal: string;
117
- history?: {
118
- type: "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
119
- nodeId: string;
120
- timestamp?: number | undefined;
121
- payload?: Record<string, any> | undefined;
122
- }[] | undefined;
123
- userContext?: Record<string, unknown> | undefined;
132
+ userContext?: Record<string, unknown> | null | undefined;
124
133
  }, {
134
+ history: {
135
+ type: "INIT" | "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
136
+ nodeId: string;
137
+ timestamp: number | null;
138
+ payload: Record<string, unknown> | null;
139
+ }[] | null;
125
140
  schema: Record<string, unknown>;
126
141
  goal: string;
127
- history?: {
128
- type: "CLICK" | "CHANGE" | "SUBMIT" | "MOUSEOVER" | "MOUSEOUT" | "FOCUS" | "BLUR";
129
- nodeId: string;
130
- timestamp?: number | undefined;
131
- payload?: Record<string, any> | undefined;
132
- }[] | undefined;
133
- userContext?: Record<string, unknown> | undefined;
142
+ userContext?: Record<string, unknown> | null | undefined;
134
143
  }>;
135
144
  type PlannerInput = z.infer<typeof plannerInput>;
136
145
 
137
- /**
138
- * Interface for the runtime data context
139
- */
140
- interface DataContext {
141
- [key: string]: unknown;
142
- }
143
-
144
- /**
145
- * Action types supported by the router
146
- */
147
146
  declare enum ActionType {
148
147
  FULL_REFRESH = "FULL_REFRESH",// Generate a completely new UI
149
- UPDATE_NODE = "UPDATE_NODE",// Update a specific node
148
+ UPDATE_NODE = "UPDATE_NODE",// Update a specific node, potentially with new children
149
+ UPDATE_DATA = "UPDATE_DATA",// Add this for input changes
150
+ ADD_ITEM = "ADD_ITEM",// Add an item to a list
151
+ DELETE_ITEM = "DELETE_ITEM",// Delete an item from a list
150
152
  ADD_DROPDOWN = "ADD_DROPDOWN",// Add a dropdown to a specific node
151
153
  SHOW_DETAIL = "SHOW_DETAIL",// Show a detail view
152
154
  HIDE_DETAIL = "HIDE_DETAIL",// Hide a detail view
155
+ HIDE_DIALOG = "HIDE_DIALOG",// Explicitly add HIDE_DIALOG
156
+ SAVE_TASK_CHANGES = "SAVE_TASK_CHANGES",// Add action for saving
153
157
  TOGGLE_STATE = "TOGGLE_STATE",// Toggle a boolean state (expanded, selected, etc.)
154
158
  UPDATE_FORM = "UPDATE_FORM",// Update a form based on selections
155
- NAVIGATE = "NAVIGATE"
159
+ NAVIGATE = "NAVIGATE",// Navigate to a different view
160
+ OPEN_DIALOG = "OPEN_DIALOG",// Open a dialog (for clarity)
161
+ CLOSE_DIALOG = "CLOSE_DIALOG",// Close a dialog (for clarity)
162
+ UPDATE_CONTEXT = "UPDATE_CONTEXT"
163
+ }
164
+
165
+ interface PlanningConfig {
166
+ prefetchDepth: number;
167
+ temperature: number;
168
+ streaming: boolean;
156
169
  }
157
170
  /**
158
171
  * Routing configuration for an action
159
172
  */
160
173
  interface ActionRouteConfig {
161
174
  actionType: ActionType;
162
- targetNodeId: string;
163
- promptTemplate: string;
175
+ targetNodeId?: string;
164
176
  contextKeys?: string[];
165
177
  }
166
178
  /**
@@ -169,20 +181,16 @@ interface ActionRouteConfig {
169
181
  interface RouteResolution {
170
182
  actionType: ActionType;
171
183
  targetNodeId: string;
172
- plannerInput: PlannerInput;
173
- prompt: string;
184
+ updatedNode: UISpecNode;
185
+ updatedDataContext?: DataContext;
174
186
  }
175
187
  /**
176
188
  * Action router class - handles determining what part of the UI to update
177
189
  */
178
190
  declare class ActionRouter {
179
- private routes;
180
- /**
181
- * Register a new action route
182
- * @param eventType - UI event type to route
183
- * @param config - Route configuration
184
- */
185
- registerRoute(eventType: string, config: ActionRouteConfig): void;
191
+ private apiKey;
192
+ private planningConfig;
193
+ constructor(apiKey: string, planningConfig?: PlanningConfig);
186
194
  /**
187
195
  * Find the appropriate route for an event
188
196
  * @param event - UI event
@@ -190,16 +198,18 @@ declare class ActionRouter {
190
198
  * @param dataContext - Current data context
191
199
  * @returns Route resolution or null if no match
192
200
  */
193
- resolveRoute(event: UIEvent, schema: Record<string, unknown>, layout: UISpecNode | undefined, dataContext: DataContext, goal: string, userContext?: Record<string, unknown>): RouteResolution | null;
194
- /**
195
- * Process a prompt template with variables
196
- * @param template - Template string with ${var} placeholders
197
- * @param values - Values to substitute
198
- * @returns Processed string
199
- */
200
- private processTemplate;
201
+ resolveRoute(event: UIEvent, schema: Record<string, unknown>, layout: UISpecNode | null, dataContext: DataContext, goal: string, apiKey: string, userContext?: Record<string, unknown>): Promise<RouteResolution>;
202
+ }
203
+
204
+ interface UseUIStateEngineOptions {
205
+ schema: Record<string, unknown>;
206
+ goal: string;
207
+ apiKey: string;
208
+ userContext?: Record<string, unknown> | undefined;
209
+ planningConfig?: PlanningConfig | undefined;
210
+ dataContext?: Record<string, unknown> | undefined;
211
+ enablePartialUpdates?: boolean | undefined;
201
212
  }
202
- declare function createDefaultRouter(): ActionRouter;
203
213
 
204
214
  interface EventHookOptions {
205
215
  preventDefault?: boolean;
@@ -229,7 +239,7 @@ type EventHook = (context: EventHookContext) => void | Promise<void>;
229
239
  * });
230
240
  * ```
231
241
  */
232
- declare function createEventHook(eventTypes: UIEventType[] | 'all', hook: EventHook, options?: EventHookOptions): EventHook;
242
+ declare function createEventHook(eventTypes: UIEventType[] | "all", hook: EventHook, options?: EventHookOptions): EventHook;
233
243
 
234
244
  /**
235
245
  * System event types that represent the internal AutoUI lifecycle
@@ -370,7 +380,7 @@ declare const systemEvents: SystemEventManager;
370
380
  */
371
381
  declare function createSystemEvent<T extends SystemEventType>(type: T, data: Omit<Extract<AnySystemEvent, {
372
382
  type: T;
373
- }>, 'type' | 'timestamp'>): Extract<AnySystemEvent, {
383
+ }>, "type" | "timestamp">): Extract<AnySystemEvent, {
374
384
  type: T;
375
385
  }>;
376
386
 
@@ -453,10 +463,10 @@ interface SchemaAdapter {
453
463
  * Schema adapter options union type
454
464
  */
455
465
  type SchemaAdapterOptions = {
456
- type: 'drizzle';
466
+ type: "drizzle";
457
467
  options: DrizzleAdapterOptions$1;
458
468
  } | {
459
- type: 'custom';
469
+ type: "custom";
460
470
  adapter: SchemaAdapter;
461
471
  };
462
472
  /**
@@ -467,16 +477,16 @@ declare function createSchemaAdapter(options: SchemaAdapterOptions): SchemaAdapt
467
477
  interface DrizzleAdapterOptions {
468
478
  schema: Record<string, unknown>;
469
479
  }
470
- interface AutoUIProps {
480
+ interface AutoUIProps extends Omit<UseUIStateEngineOptions, "router" | "dataContext"> {
471
481
  schema: Record<string, unknown> | {
472
- type: 'drizzle';
482
+ type: "drizzle";
473
483
  options: DrizzleAdapterOptions;
474
484
  } | {
475
- type: 'custom';
485
+ type: "custom";
476
486
  adapter: SchemaAdapter;
477
487
  };
478
488
  goal: string;
479
- componentAdapter?: 'shadcn';
489
+ componentAdapter?: "shadcn";
480
490
  userContext?: Record<string, unknown>;
481
491
  onEvent?: (evt: UIEvent) => void;
482
492
  eventHooks?: {
@@ -494,30 +504,27 @@ interface AutoUIProps {
494
504
  enableFormNavigation?: boolean;
495
505
  };
496
506
  integration?: {
497
- mode?: 'standalone' | 'component';
507
+ mode?: "standalone" | "component";
498
508
  className?: string;
499
509
  style?: React.CSSProperties;
500
510
  id?: string;
501
511
  };
502
512
  scope?: {
503
- type?: 'form' | 'list' | 'detail' | 'dashboard' | 'full-page' | 'card';
513
+ type?: "form" | "list" | "detail" | "dashboard" | "full-page" | "card";
504
514
  focus?: string;
505
515
  };
506
516
  debugMode?: boolean;
507
517
  mockMode?: boolean;
508
518
  databaseConfig?: Record<string, unknown>;
509
- planningConfig?: {
510
- prefetchDepth?: number;
511
- temperature?: number;
512
- streaming?: boolean;
513
- };
519
+ planningConfig?: PlanningConfig;
520
+ apiKey: string;
514
521
  }
515
522
  /**
516
523
  * AutoUI - Main component for generating goal-oriented UIs
517
524
  *
518
525
  * @example
519
526
  * ```tsx
520
- * import { AutoUI } from '@autoui/react';
527
+ * import { AutoUI } from 'autoui-react';
521
528
  * import { emailsTable, usersTable } from './schema';
522
529
  *
523
530
  * function MyApp() {
@@ -532,4 +539,329 @@ interface AutoUIProps {
532
539
  */
533
540
  declare const AutoUI: React.FC<AutoUIProps>;
534
541
 
535
- export { type ActionRouteConfig, ActionRouter, ActionType, type AnySystemEvent, AutoUI, type AutoUIProps, DrizzleAdapter, type DrizzleAdapterOptions$1 as DrizzleAdapterOptions, type EventHook, type EventHookContext, type EventHookOptions, type PlannerInput, type SchemaAdapter, type SchemaAdapterOptions, type SystemEventHook, SystemEventType, type UIEvent, type UIEventType, type UISpecNode, type UIState, createDefaultRouter, createEventHook, createSchemaAdapter, createSystemEvent, systemEvents, uiEvent, uiEventType, uiSpecNode };
542
+ /**
543
+ * Component definitions for shadcn/ui integration
544
+ * This file defines which components from shadcn/ui are used by AutoUI
545
+ */
546
+
547
+ declare const componentType: z.ZodEnum<["Container", "Card", "Header", "Button", "Input", "Select", "Textarea", "Checkbox", "RadioGroup", "ListView", "Detail", "Tabs", "Dialog", "Badge", "Heading", "Text"]>;
548
+
549
+ declare const openAIUISpec: z.ZodObject<{
550
+ id: z.ZodString;
551
+ node_type: z.ZodEnum<["Container", "Card", "Header", "Button", "Input", "Select", "Textarea", "Checkbox", "RadioGroup", "ListView", "Detail", "Tabs", "Dialog", "Badge", "Heading", "Text"]>;
552
+ props: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>>;
553
+ bindings: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>>;
554
+ events: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodObject<{
555
+ action: z.ZodEnum<["FULL_REFRESH", "UPDATE_NODE", "UPDATE_DATA", "ADD_DROPDOWN", "SHOW_DETAIL", "HIDE_DETAIL", "HIDE_DIALOG", "SAVE_TASK_CHANGES", "TOGGLE_STATE", "UPDATE_FORM", "NAVIGATE", "OPEN_DIALOG", "CLOSE_DIALOG", "UPDATE_CONTEXT"]>;
556
+ target: z.ZodString;
557
+ payload: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>>;
558
+ }, "strip", z.ZodTypeAny, {
559
+ payload: Record<string, string | null> | null;
560
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
561
+ target: string;
562
+ }, {
563
+ payload: Record<string, string | null> | null;
564
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
565
+ target: string;
566
+ }>>>;
567
+ } & {
568
+ children: z.ZodNullable<z.ZodArray<z.ZodObject<{
569
+ id: z.ZodString;
570
+ node_type: z.ZodEnum<["Container", "Card", "Header", "Button", "Input", "Select", "Textarea", "Checkbox", "RadioGroup", "ListView", "Detail", "Tabs", "Dialog", "Badge", "Heading", "Text"]>;
571
+ props: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>>;
572
+ bindings: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>>;
573
+ events: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodObject<{
574
+ action: z.ZodEnum<["FULL_REFRESH", "UPDATE_NODE", "UPDATE_DATA", "ADD_DROPDOWN", "SHOW_DETAIL", "HIDE_DETAIL", "HIDE_DIALOG", "SAVE_TASK_CHANGES", "TOGGLE_STATE", "UPDATE_FORM", "NAVIGATE", "OPEN_DIALOG", "CLOSE_DIALOG", "UPDATE_CONTEXT"]>;
575
+ target: z.ZodString;
576
+ payload: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>>;
577
+ }, "strip", z.ZodTypeAny, {
578
+ payload: Record<string, string | null> | null;
579
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
580
+ target: string;
581
+ }, {
582
+ payload: Record<string, string | null> | null;
583
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
584
+ target: string;
585
+ }>>>;
586
+ } & {
587
+ children: z.ZodNullable<z.ZodArray<z.ZodObject<{
588
+ id: z.ZodString;
589
+ node_type: z.ZodEnum<["Container", "Card", "Header", "Button", "Input", "Select", "Textarea", "Checkbox", "RadioGroup", "ListView", "Detail", "Tabs", "Dialog", "Badge", "Heading", "Text"]>;
590
+ props: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>>;
591
+ bindings: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>>;
592
+ events: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodObject<{
593
+ action: z.ZodEnum<["FULL_REFRESH", "UPDATE_NODE", "UPDATE_DATA", "ADD_DROPDOWN", "SHOW_DETAIL", "HIDE_DETAIL", "HIDE_DIALOG", "SAVE_TASK_CHANGES", "TOGGLE_STATE", "UPDATE_FORM", "NAVIGATE", "OPEN_DIALOG", "CLOSE_DIALOG", "UPDATE_CONTEXT"]>;
594
+ target: z.ZodString;
595
+ payload: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>>;
596
+ }, "strip", z.ZodTypeAny, {
597
+ payload: Record<string, string | null> | null;
598
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
599
+ target: string;
600
+ }, {
601
+ payload: Record<string, string | null> | null;
602
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
603
+ target: string;
604
+ }>>>;
605
+ } & {
606
+ children: z.ZodNullable<z.ZodArray<z.ZodObject<{
607
+ id: z.ZodString;
608
+ node_type: z.ZodEnum<["Container", "Card", "Header", "Button", "Input", "Select", "Textarea", "Checkbox", "RadioGroup", "ListView", "Detail", "Tabs", "Dialog", "Badge", "Heading", "Text"]>;
609
+ props: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>>;
610
+ bindings: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>>;
611
+ events: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodObject<{
612
+ action: z.ZodEnum<["FULL_REFRESH", "UPDATE_NODE", "UPDATE_DATA", "ADD_DROPDOWN", "SHOW_DETAIL", "HIDE_DETAIL", "HIDE_DIALOG", "SAVE_TASK_CHANGES", "TOGGLE_STATE", "UPDATE_FORM", "NAVIGATE", "OPEN_DIALOG", "CLOSE_DIALOG", "UPDATE_CONTEXT"]>;
613
+ target: z.ZodString;
614
+ payload: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodNullable<z.ZodString>>>;
615
+ }, "strip", z.ZodTypeAny, {
616
+ payload: Record<string, string | null> | null;
617
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
618
+ target: string;
619
+ }, {
620
+ payload: Record<string, string | null> | null;
621
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
622
+ target: string;
623
+ }>>>;
624
+ children: z.ZodNull;
625
+ }, "strip", z.ZodTypeAny, {
626
+ events: Record<string, {
627
+ payload: Record<string, string | null> | null;
628
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
629
+ target: string;
630
+ }> | null;
631
+ id: string;
632
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
633
+ props: Record<string, string | null> | null;
634
+ bindings: Record<string, string | null> | null;
635
+ children: null;
636
+ }, {
637
+ events: Record<string, {
638
+ payload: Record<string, string | null> | null;
639
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
640
+ target: string;
641
+ }> | null;
642
+ id: string;
643
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
644
+ props: Record<string, string | null> | null;
645
+ bindings: Record<string, string | null> | null;
646
+ children: null;
647
+ }>, "many">>;
648
+ }, "strip", z.ZodTypeAny, {
649
+ events: Record<string, {
650
+ payload: Record<string, string | null> | null;
651
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
652
+ target: string;
653
+ }> | null;
654
+ id: string;
655
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
656
+ props: Record<string, string | null> | null;
657
+ bindings: Record<string, string | null> | null;
658
+ children: {
659
+ events: Record<string, {
660
+ payload: Record<string, string | null> | null;
661
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
662
+ target: string;
663
+ }> | null;
664
+ id: string;
665
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
666
+ props: Record<string, string | null> | null;
667
+ bindings: Record<string, string | null> | null;
668
+ children: null;
669
+ }[] | null;
670
+ }, {
671
+ events: Record<string, {
672
+ payload: Record<string, string | null> | null;
673
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
674
+ target: string;
675
+ }> | null;
676
+ id: string;
677
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
678
+ props: Record<string, string | null> | null;
679
+ bindings: Record<string, string | null> | null;
680
+ children: {
681
+ events: Record<string, {
682
+ payload: Record<string, string | null> | null;
683
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
684
+ target: string;
685
+ }> | null;
686
+ id: string;
687
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
688
+ props: Record<string, string | null> | null;
689
+ bindings: Record<string, string | null> | null;
690
+ children: null;
691
+ }[] | null;
692
+ }>, "many">>;
693
+ }, "strip", z.ZodTypeAny, {
694
+ events: Record<string, {
695
+ payload: Record<string, string | null> | null;
696
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
697
+ target: string;
698
+ }> | null;
699
+ id: string;
700
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
701
+ props: Record<string, string | null> | null;
702
+ bindings: Record<string, string | null> | null;
703
+ children: {
704
+ events: Record<string, {
705
+ payload: Record<string, string | null> | null;
706
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
707
+ target: string;
708
+ }> | null;
709
+ id: string;
710
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
711
+ props: Record<string, string | null> | null;
712
+ bindings: Record<string, string | null> | null;
713
+ children: {
714
+ events: Record<string, {
715
+ payload: Record<string, string | null> | null;
716
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
717
+ target: string;
718
+ }> | null;
719
+ id: string;
720
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
721
+ props: Record<string, string | null> | null;
722
+ bindings: Record<string, string | null> | null;
723
+ children: null;
724
+ }[] | null;
725
+ }[] | null;
726
+ }, {
727
+ events: Record<string, {
728
+ payload: Record<string, string | null> | null;
729
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
730
+ target: string;
731
+ }> | null;
732
+ id: string;
733
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
734
+ props: Record<string, string | null> | null;
735
+ bindings: Record<string, string | null> | null;
736
+ children: {
737
+ events: Record<string, {
738
+ payload: Record<string, string | null> | null;
739
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
740
+ target: string;
741
+ }> | null;
742
+ id: string;
743
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
744
+ props: Record<string, string | null> | null;
745
+ bindings: Record<string, string | null> | null;
746
+ children: {
747
+ events: Record<string, {
748
+ payload: Record<string, string | null> | null;
749
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
750
+ target: string;
751
+ }> | null;
752
+ id: string;
753
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
754
+ props: Record<string, string | null> | null;
755
+ bindings: Record<string, string | null> | null;
756
+ children: null;
757
+ }[] | null;
758
+ }[] | null;
759
+ }>, "many">>;
760
+ }, "strip", z.ZodTypeAny, {
761
+ events: Record<string, {
762
+ payload: Record<string, string | null> | null;
763
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
764
+ target: string;
765
+ }> | null;
766
+ id: string;
767
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
768
+ props: Record<string, string | null> | null;
769
+ bindings: Record<string, string | null> | null;
770
+ children: {
771
+ events: Record<string, {
772
+ payload: Record<string, string | null> | null;
773
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
774
+ target: string;
775
+ }> | null;
776
+ id: string;
777
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
778
+ props: Record<string, string | null> | null;
779
+ bindings: Record<string, string | null> | null;
780
+ children: {
781
+ events: Record<string, {
782
+ payload: Record<string, string | null> | null;
783
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
784
+ target: string;
785
+ }> | null;
786
+ id: string;
787
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
788
+ props: Record<string, string | null> | null;
789
+ bindings: Record<string, string | null> | null;
790
+ children: {
791
+ events: Record<string, {
792
+ payload: Record<string, string | null> | null;
793
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
794
+ target: string;
795
+ }> | null;
796
+ id: string;
797
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
798
+ props: Record<string, string | null> | null;
799
+ bindings: Record<string, string | null> | null;
800
+ children: null;
801
+ }[] | null;
802
+ }[] | null;
803
+ }[] | null;
804
+ }, {
805
+ events: Record<string, {
806
+ payload: Record<string, string | null> | null;
807
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
808
+ target: string;
809
+ }> | null;
810
+ id: string;
811
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
812
+ props: Record<string, string | null> | null;
813
+ bindings: Record<string, string | null> | null;
814
+ children: {
815
+ events: Record<string, {
816
+ payload: Record<string, string | null> | null;
817
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
818
+ target: string;
819
+ }> | null;
820
+ id: string;
821
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
822
+ props: Record<string, string | null> | null;
823
+ bindings: Record<string, string | null> | null;
824
+ children: {
825
+ events: Record<string, {
826
+ payload: Record<string, string | null> | null;
827
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
828
+ target: string;
829
+ }> | null;
830
+ id: string;
831
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
832
+ props: Record<string, string | null> | null;
833
+ bindings: Record<string, string | null> | null;
834
+ children: {
835
+ events: Record<string, {
836
+ payload: Record<string, string | null> | null;
837
+ action: "FULL_REFRESH" | "UPDATE_NODE" | "UPDATE_DATA" | "ADD_DROPDOWN" | "SHOW_DETAIL" | "HIDE_DETAIL" | "HIDE_DIALOG" | "SAVE_TASK_CHANGES" | "TOGGLE_STATE" | "UPDATE_FORM" | "NAVIGATE" | "OPEN_DIALOG" | "CLOSE_DIALOG" | "UPDATE_CONTEXT";
838
+ target: string;
839
+ }> | null;
840
+ id: string;
841
+ node_type: "ListView" | "Container" | "Card" | "Header" | "Button" | "Input" | "Select" | "Textarea" | "Checkbox" | "RadioGroup" | "Detail" | "Tabs" | "Dialog" | "Badge" | "Heading" | "Text";
842
+ props: Record<string, string | null> | null;
843
+ bindings: Record<string, string | null> | null;
844
+ children: null;
845
+ }[] | null;
846
+ }[] | null;
847
+ }[] | null;
848
+ }>;
849
+
850
+ /**
851
+ * AI Utilities for AutoUI React
852
+ * Provides AI-powered UI generation functionality
853
+ */
854
+ /**
855
+ * Generates a component using AI
856
+ */
857
+ declare const generateComponent: (prompt: string) => Promise<string>;
858
+ /**
859
+ * Generates a UI description using AI
860
+ */
861
+ declare const generateUIDescription: (prompt: string) => Promise<string>;
862
+ /**
863
+ * Generates a UI component using AI
864
+ */
865
+ declare const generateUIComponent: (prompt: string) => Promise<string>;
866
+
867
+ export { ActionRouteConfig, ActionRouter, ActionType, AnySystemEvent, AutoUI, AutoUIProps, DrizzleAdapter, DrizzleAdapterOptions$1 as DrizzleAdapterOptions, EventHook, EventHookContext, EventHookOptions, PlannerInput, SchemaAdapter, SchemaAdapterOptions, SystemEventHook, SystemEventType, UIEvent, UIEventType, UISpecNode, UIState, componentType, createEventHook, createSchemaAdapter, createSystemEvent, generateComponent, generateUIComponent, generateUIDescription, openAIUISpec, systemEvents, uiEvent, uiEventType, uiSpecNode };