@objectstack/service-ai 4.0.4 → 4.0.5

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 (52) hide show
  1. package/dist/index.cjs +1176 -135
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.d.cts +1225 -430
  4. package/dist/index.d.ts +1225 -430
  5. package/dist/index.js +1160 -128
  6. package/dist/index.js.map +1 -1
  7. package/package.json +35 -8
  8. package/.turbo/turbo-build.log +0 -22
  9. package/CHANGELOG.md +0 -61
  10. package/src/__tests__/ai-service.test.ts +0 -981
  11. package/src/__tests__/auth-and-toolcalling.test.ts +0 -677
  12. package/src/__tests__/chatbot-features.test.ts +0 -1116
  13. package/src/__tests__/metadata-tools.test.ts +0 -970
  14. package/src/__tests__/objectql-conversation-service.test.ts +0 -382
  15. package/src/__tests__/tool-routes.test.ts +0 -191
  16. package/src/__tests__/vercel-stream-encoder.test.ts +0 -310
  17. package/src/adapters/index.ts +0 -6
  18. package/src/adapters/memory-adapter.ts +0 -72
  19. package/src/adapters/types.ts +0 -3
  20. package/src/adapters/vercel-adapter.ts +0 -148
  21. package/src/agent-runtime.ts +0 -154
  22. package/src/agents/data-chat-agent.ts +0 -79
  23. package/src/agents/index.ts +0 -4
  24. package/src/agents/metadata-assistant-agent.ts +0 -87
  25. package/src/ai-service.ts +0 -364
  26. package/src/conversation/in-memory-conversation-service.ts +0 -103
  27. package/src/conversation/index.ts +0 -4
  28. package/src/conversation/objectql-conversation-service.ts +0 -301
  29. package/src/index.ts +0 -60
  30. package/src/objects/ai-conversation.object.ts +0 -86
  31. package/src/objects/ai-message.object.ts +0 -86
  32. package/src/objects/index.ts +0 -10
  33. package/src/plugin.ts +0 -391
  34. package/src/routes/agent-routes.ts +0 -190
  35. package/src/routes/ai-routes.ts +0 -439
  36. package/src/routes/index.ts +0 -5
  37. package/src/routes/message-utils.ts +0 -90
  38. package/src/routes/tool-routes.ts +0 -142
  39. package/src/stream/index.ts +0 -3
  40. package/src/stream/vercel-stream-encoder.ts +0 -153
  41. package/src/tools/add-field.tool.ts +0 -70
  42. package/src/tools/create-object.tool.ts +0 -66
  43. package/src/tools/data-tools.ts +0 -293
  44. package/src/tools/delete-field.tool.ts +0 -38
  45. package/src/tools/describe-object.tool.ts +0 -31
  46. package/src/tools/index.ts +0 -18
  47. package/src/tools/list-objects.tool.ts +0 -34
  48. package/src/tools/metadata-tools.ts +0 -430
  49. package/src/tools/modify-field.tool.ts +0 -44
  50. package/src/tools/tool-registry.ts +0 -132
  51. package/tsconfig.json +0 -17
  52. package/vitest.config.ts +0 -23
package/dist/index.d.ts CHANGED
@@ -3,8 +3,8 @@ export { LLMAdapter } from '@objectstack/spec/contracts';
3
3
  import { Plugin, PluginContext } from '@objectstack/core';
4
4
  import { LanguageModelV2 } from '@ai-sdk/provider';
5
5
  import { TextStreamPart as TextStreamPart$1, ToolSet as ToolSet$1 } from 'ai';
6
- import { Tool } from '@objectstack/spec/ai';
7
- import { Agent } from '@objectstack/spec';
6
+ import { Tool, Skill, Agent } from '@objectstack/spec/ai';
7
+ import { InstalledPackage } from '@objectstack/spec/kernel';
8
8
  import { z } from 'zod';
9
9
  import * as _objectstack_spec_data from '@objectstack/spec/data';
10
10
 
@@ -396,7 +396,7 @@ declare const createObjectTool: {
396
396
  requiresConfirmation: boolean;
397
397
  active: boolean;
398
398
  builtIn: boolean;
399
- category?: "action" | "flow" | "vector_search" | "data" | "utility" | "integration" | "analytics" | undefined;
399
+ category?: "action" | "flow" | "vector_search" | "data" | "utility" | "analytics" | "integration" | undefined;
400
400
  outputSchema?: Record<string, unknown> | undefined;
401
401
  objectName?: string | undefined;
402
402
  permissions?: string[] | undefined;
@@ -417,7 +417,7 @@ declare const addFieldTool: {
417
417
  requiresConfirmation: boolean;
418
418
  active: boolean;
419
419
  builtIn: boolean;
420
- category?: "action" | "flow" | "vector_search" | "data" | "utility" | "integration" | "analytics" | undefined;
420
+ category?: "action" | "flow" | "vector_search" | "data" | "utility" | "analytics" | "integration" | undefined;
421
421
  outputSchema?: Record<string, unknown> | undefined;
422
422
  objectName?: string | undefined;
423
423
  permissions?: string[] | undefined;
@@ -437,7 +437,7 @@ declare const modifyFieldTool: {
437
437
  requiresConfirmation: boolean;
438
438
  active: boolean;
439
439
  builtIn: boolean;
440
- category?: "action" | "flow" | "vector_search" | "data" | "utility" | "integration" | "analytics" | undefined;
440
+ category?: "action" | "flow" | "vector_search" | "data" | "utility" | "analytics" | "integration" | undefined;
441
441
  outputSchema?: Record<string, unknown> | undefined;
442
442
  objectName?: string | undefined;
443
443
  permissions?: string[] | undefined;
@@ -457,7 +457,7 @@ declare const deleteFieldTool: {
457
457
  requiresConfirmation: boolean;
458
458
  active: boolean;
459
459
  builtIn: boolean;
460
- category?: "action" | "flow" | "vector_search" | "data" | "utility" | "integration" | "analytics" | undefined;
460
+ category?: "action" | "flow" | "vector_search" | "data" | "utility" | "analytics" | "integration" | undefined;
461
461
  outputSchema?: Record<string, unknown> | undefined;
462
462
  objectName?: string | undefined;
463
463
  permissions?: string[] | undefined;
@@ -478,7 +478,7 @@ declare const listObjectsTool: {
478
478
  requiresConfirmation: boolean;
479
479
  active: boolean;
480
480
  builtIn: boolean;
481
- category?: "action" | "flow" | "vector_search" | "data" | "utility" | "integration" | "analytics" | undefined;
481
+ category?: "action" | "flow" | "vector_search" | "data" | "utility" | "analytics" | "integration" | undefined;
482
482
  outputSchema?: Record<string, unknown> | undefined;
483
483
  objectName?: string | undefined;
484
484
  permissions?: string[] | undefined;
@@ -499,7 +499,7 @@ declare const describeObjectTool: {
499
499
  requiresConfirmation: boolean;
500
500
  active: boolean;
501
501
  builtIn: boolean;
502
- category?: "action" | "flow" | "vector_search" | "data" | "utility" | "integration" | "analytics" | undefined;
502
+ category?: "action" | "flow" | "vector_search" | "data" | "utility" | "analytics" | "integration" | undefined;
503
503
  outputSchema?: Record<string, unknown> | undefined;
504
504
  objectName?: string | undefined;
505
505
  permissions?: string[] | undefined;
@@ -516,6 +516,22 @@ declare const METADATA_TOOL_DEFINITIONS: Tool[];
516
516
  interface MetadataToolContext {
517
517
  /** Metadata service for schema CRUD operations. */
518
518
  metadataService: IMetadataService;
519
+ /** Optional: Conversation service for retrieving active package context */
520
+ conversationService?: {
521
+ getMetadata?(conversationId: string): Promise<Record<string, unknown> | undefined>;
522
+ };
523
+ /** Optional: Current conversation ID (if in a conversation context) */
524
+ conversationId?: string;
525
+ /** Optional: Package registry for validating package existence */
526
+ packageRegistry?: {
527
+ exists(packageId: string): Promise<boolean>;
528
+ get(packageId: string): Promise<{
529
+ manifest: {
530
+ scope?: string;
531
+ source?: string;
532
+ };
533
+ } | undefined>;
534
+ };
519
535
  }
520
536
  /**
521
537
  * Register all built-in metadata management tools on the given {@link ToolRegistry}.
@@ -532,14 +548,302 @@ interface MetadataToolContext {
532
548
  */
533
549
  declare function registerMetadataTools(registry: ToolRegistry, context: MetadataToolContext): void;
534
550
 
551
+ /**
552
+ * list_packages — AI Tool Metadata
553
+ *
554
+ * Lists all installed packages in the ObjectStack instance.
555
+ * Useful for understanding what packages are available before creating metadata.
556
+ */
557
+ declare const listPackagesTool: {
558
+ name: string;
559
+ label: string;
560
+ description: string;
561
+ parameters: Record<string, unknown>;
562
+ requiresConfirmation: boolean;
563
+ active: boolean;
564
+ builtIn: boolean;
565
+ category?: "action" | "flow" | "vector_search" | "data" | "utility" | "analytics" | "integration" | undefined;
566
+ outputSchema?: Record<string, unknown> | undefined;
567
+ objectName?: string | undefined;
568
+ permissions?: string[] | undefined;
569
+ };
570
+
571
+ /**
572
+ * get_package — AI Tool Metadata
573
+ *
574
+ * Gets detailed information about a specific package.
575
+ */
576
+ declare const getPackageTool: {
577
+ name: string;
578
+ label: string;
579
+ description: string;
580
+ parameters: Record<string, unknown>;
581
+ requiresConfirmation: boolean;
582
+ active: boolean;
583
+ builtIn: boolean;
584
+ category?: "action" | "flow" | "vector_search" | "data" | "utility" | "analytics" | "integration" | undefined;
585
+ outputSchema?: Record<string, unknown> | undefined;
586
+ objectName?: string | undefined;
587
+ permissions?: string[] | undefined;
588
+ };
589
+
590
+ /**
591
+ * create_package — AI Tool Metadata
592
+ *
593
+ * Creates a new package for organizing metadata.
594
+ * All metadata (objects, views, flows, etc.) should belong to a package.
595
+ */
596
+ declare const createPackageTool: {
597
+ name: string;
598
+ label: string;
599
+ description: string;
600
+ parameters: Record<string, unknown>;
601
+ requiresConfirmation: boolean;
602
+ active: boolean;
603
+ builtIn: boolean;
604
+ category?: "action" | "flow" | "vector_search" | "data" | "utility" | "analytics" | "integration" | undefined;
605
+ outputSchema?: Record<string, unknown> | undefined;
606
+ objectName?: string | undefined;
607
+ permissions?: string[] | undefined;
608
+ };
609
+
610
+ /**
611
+ * get_active_package — AI Tool Metadata
612
+ *
613
+ * Gets the currently active package in the conversation context.
614
+ */
615
+ declare const getActivePackageTool: {
616
+ name: string;
617
+ label: string;
618
+ description: string;
619
+ parameters: Record<string, unknown>;
620
+ requiresConfirmation: boolean;
621
+ active: boolean;
622
+ builtIn: boolean;
623
+ category?: "action" | "flow" | "vector_search" | "data" | "utility" | "analytics" | "integration" | undefined;
624
+ outputSchema?: Record<string, unknown> | undefined;
625
+ objectName?: string | undefined;
626
+ permissions?: string[] | undefined;
627
+ };
628
+
629
+ /**
630
+ * set_active_package — AI Tool Metadata
631
+ *
632
+ * Sets the active package for the current conversation.
633
+ * All metadata operations will use this package context.
634
+ */
635
+ declare const setActivePackageTool: {
636
+ name: string;
637
+ label: string;
638
+ description: string;
639
+ parameters: Record<string, unknown>;
640
+ requiresConfirmation: boolean;
641
+ active: boolean;
642
+ builtIn: boolean;
643
+ category?: "action" | "flow" | "vector_search" | "data" | "utility" | "analytics" | "integration" | undefined;
644
+ outputSchema?: Record<string, unknown> | undefined;
645
+ objectName?: string | undefined;
646
+ permissions?: string[] | undefined;
647
+ };
648
+
649
+ /** All built-in package management tool definitions (Tool metadata). */
650
+ declare const PACKAGE_TOOL_DEFINITIONS: Tool[];
651
+ /**
652
+ * Minimal package registry interface for tool operations.
653
+ * The actual implementation may be a full PackageRegistry service.
654
+ */
655
+ interface IPackageRegistry {
656
+ /** List all installed packages */
657
+ list(filter?: {
658
+ status?: string;
659
+ enabled?: boolean;
660
+ }): Promise<InstalledPackage[]>;
661
+ /** Get a specific package by ID */
662
+ get(packageId: string): Promise<InstalledPackage | undefined>;
663
+ /** Install a new package */
664
+ install(manifest: Record<string, unknown>): Promise<InstalledPackage>;
665
+ /** Check if a package exists */
666
+ exists(packageId: string): Promise<boolean>;
667
+ }
668
+ /**
669
+ * Minimal conversation service interface for context management.
670
+ */
671
+ interface IConversationService {
672
+ /** Get conversation metadata */
673
+ getMetadata?(conversationId: string): Promise<Record<string, unknown> | undefined>;
674
+ /** Update conversation metadata */
675
+ updateMetadata?(conversationId: string, metadata: Record<string, unknown>): Promise<void>;
676
+ }
677
+ /**
678
+ * Services required by the package management tools.
679
+ *
680
+ * Provided by the kernel at `ai:ready` time and closed over
681
+ * by the handler functions so they stay framework-agnostic.
682
+ */
683
+ interface PackageToolContext {
684
+ /** Package registry for package CRUD operations */
685
+ packageRegistry: IPackageRegistry;
686
+ /** Conversation service for tracking active package context (optional) */
687
+ conversationService?: IConversationService;
688
+ /** Current conversation ID (if in a conversation context) */
689
+ conversationId?: string;
690
+ }
691
+ /**
692
+ * Register all built-in package management tools on the given {@link ToolRegistry}.
693
+ *
694
+ * Typically called from the `ai:ready` hook after the package registry is available.
695
+ *
696
+ * @example
697
+ * ```ts
698
+ * ctx.hook('ai:ready', async (aiService) => {
699
+ * const packageRegistry = ctx.getService<IPackageRegistry>('packageRegistry');
700
+ * const conversationService = ctx.getService<IConversationService>('conversation');
701
+ * registerPackageTools(aiService.toolRegistry, {
702
+ * packageRegistry,
703
+ * conversationService,
704
+ * });
705
+ * });
706
+ * ```
707
+ */
708
+ declare function registerPackageTools(registry: ToolRegistry, context: PackageToolContext): void;
709
+
710
+ /**
711
+ * Runtime context passed when chatting with the ambient assistant.
712
+ *
713
+ * Mirrors the metadata fields used by `Skill.triggerConditions` so that
714
+ * skills can be activated declaratively based on what the user is doing.
715
+ *
716
+ * UI clients populate this from the current route / selected record.
717
+ */
718
+ interface SkillContext {
719
+ /** Application the user is currently inside (e.g. "crm"). */
720
+ appName?: string;
721
+ /** Object the user is viewing (e.g. "lead"). */
722
+ objectName?: string;
723
+ /** Currently selected record ID. */
724
+ recordId?: string;
725
+ /** Current view name. */
726
+ viewName?: string;
727
+ /** Channel/medium of the conversation (e.g. "web", "slack", "email"). */
728
+ channel?: string;
729
+ /** User's role (used by `triggerConditions` with `field=userRole`). */
730
+ userRole?: string;
731
+ /** Free-form additional context fields evaluated against `triggerConditions`. */
732
+ [extraField: string]: unknown;
733
+ }
734
+ /**
735
+ * Summary of an active skill suitable for slash-command palettes
736
+ * and `GET /api/v1/ai/skills` responses.
737
+ */
738
+ interface SkillSummary {
739
+ name: string;
740
+ label: string;
741
+ description?: string;
742
+ triggerPhrases?: string[];
743
+ toolCount: number;
744
+ }
745
+ /**
746
+ * SkillRegistry — Loads and resolves AI Skill metadata.
747
+ *
748
+ * Responsibilities:
749
+ * 1. Load & validate skill definitions from {@link IMetadataService}.
750
+ * 2. Filter by runtime context using `triggerConditions`.
751
+ * 3. Flatten skill `tools[]` references to concrete {@link AIToolDefinition}s.
752
+ * 4. Compose skill `instructions` for system-prompt injection.
753
+ *
754
+ * The registry is stateless; every call re-reads from the metadata
755
+ * service so changes published at runtime become immediately visible.
756
+ *
757
+ * @example
758
+ * ```ts
759
+ * const registry = new SkillRegistry(metadataService);
760
+ * const active = await registry.listActiveSkills({ appName: 'crm', objectName: 'lead' });
761
+ * const tools = registry.flattenToTools(active, allTools);
762
+ * ```
763
+ */
764
+ declare class SkillRegistry {
765
+ private readonly metadataService;
766
+ constructor(metadataService: IMetadataService);
767
+ /**
768
+ * Load and validate a single skill definition by name.
769
+ *
770
+ * Returns `undefined` when the skill is missing or fails Zod
771
+ * validation (so callers don't accidentally feed malformed metadata
772
+ * to the LLM).
773
+ */
774
+ loadSkill(skillName: string): Promise<Skill | undefined>;
775
+ /**
776
+ * Load all skill definitions, dropping any that fail validation
777
+ * or are explicitly inactive.
778
+ */
779
+ listSkills(): Promise<Skill[]>;
780
+ /**
781
+ * Load only the skills referenced by `skillNames`, preserving
782
+ * declaration order. Missing or invalid skill names are silently
783
+ * dropped (logged at the route layer if needed) so an Agent can be
784
+ * defined before all its skills are persisted.
785
+ */
786
+ loadSkills(skillNames: readonly string[]): Promise<Skill[]>;
787
+ /**
788
+ * Return skills whose `triggerConditions` are satisfied by the
789
+ * given context. Skills without any conditions are always considered
790
+ * active and returned in their declaration order.
791
+ *
792
+ * If `restrictTo` is provided, the result is intersected with that
793
+ * allow-list (typically the agent's `skills[]` field) so an agent
794
+ * never sees skills outside its declared scope.
795
+ */
796
+ listActiveSkills(context?: SkillContext, restrictTo?: readonly string[]): Promise<Skill[]>;
797
+ /**
798
+ * Evaluate a skill's `triggerConditions` against the given context.
799
+ *
800
+ * Semantics:
801
+ * - No conditions defined → always matches.
802
+ * - All conditions must pass (logical AND).
803
+ * - Operators: `eq`, `neq`, `in`, `not_in`, `contains`.
804
+ * - `contains` does substring matching for strings and `Array.includes`
805
+ * for arrays.
806
+ * - Missing context fields fail unless the operator is `neq` /
807
+ * `not_in` (treating "absent" as "not equal to anything").
808
+ */
809
+ matchesContext(skill: Skill, context: SkillContext): boolean;
810
+ private evaluateCondition;
811
+ /**
812
+ * Flatten a list of skills to a deduplicated array of concrete tool
813
+ * definitions, preserving the order skills declared their tools.
814
+ *
815
+ * Tools that are declared by a skill but missing from the available
816
+ * tool registry are silently dropped — this is intentional so a skill
817
+ * can be authored before all its underlying tools are registered.
818
+ */
819
+ flattenToTools(skills: readonly Skill[], availableTools: readonly AIToolDefinition[]): AIToolDefinition[];
820
+ /**
821
+ * Build the "Active Skills" block to append to an agent's system
822
+ * prompt. The block lists each skill's label + instructions so the
823
+ * LLM knows which capabilities are available and how to invoke them.
824
+ *
825
+ * Returns an empty string when there are no skills, so the caller
826
+ * can safely concatenate without producing dangling whitespace.
827
+ */
828
+ composeInstructionsBlock(skills: readonly Skill[]): string;
829
+ /**
830
+ * Project a skill to a wire-friendly summary suitable for the
831
+ * `/api/v1/ai/skills` endpoint and slash-command palettes.
832
+ */
833
+ toSummary(skill: Skill): SkillSummary;
834
+ }
835
+
535
836
  /**
536
837
  * Context passed alongside a user message when chatting with an agent.
537
838
  *
538
839
  * UI clients set these fields to tell the agent which object, record,
539
840
  * or view the user is currently looking at so it can provide contextual
540
841
  * answers without additional tool calls.
842
+ *
843
+ * Extends {@link SkillContext} so the same context object can drive
844
+ * skill activation in the {@link SkillRegistry}.
541
845
  */
542
- interface AgentChatContext {
846
+ interface AgentChatContext extends SkillContext {
543
847
  /** Current object the user is viewing (e.g. "account") */
544
848
  objectName?: string;
545
849
  /** Currently selected record ID */
@@ -552,14 +856,22 @@ interface AgentChatContext {
552
856
  *
553
857
  * Responsibilities:
554
858
  * 1. Load & validate agent metadata from the metadata service.
555
- * 2. Build the system prompt from agent `instructions` + UI context.
556
- * 3. Derive {@link AIRequestOptions} from agent `model` and `tools`.
859
+ * 2. Build the system prompt from agent `instructions` + UI context
860
+ * + active skill instructions.
861
+ * 3. Derive {@link AIRequestOptions} from agent `model`, `tools`, and
862
+ * resolved skills.
557
863
  * 4. Map agent tool references to concrete {@link AIToolDefinition}s
558
864
  * registered in the {@link ToolRegistry}.
865
+ *
866
+ * When constructed with a {@link SkillRegistry} the runtime supports
867
+ * the Agent → Skill → Tool composition model. When the registry is
868
+ * omitted (legacy / test mode) only the agent's inline `tools[]` are
869
+ * used.
559
870
  */
560
871
  declare class AgentRuntime {
561
872
  private readonly metadataService;
562
- constructor(metadataService: IMetadataService);
873
+ private readonly skillRegistry?;
874
+ constructor(metadataService: IMetadataService, skillRegistry?: SkillRegistry | undefined);
563
875
  /**
564
876
  * List all active agents registered in the metadata service.
565
877
  *
@@ -583,30 +895,75 @@ declare class AgentRuntime {
583
895
  /**
584
896
  * Build the system message(s) that should be prepended to the
585
897
  * conversation when chatting with the given agent.
898
+ *
899
+ * The composed prompt has up to three sections:
900
+ * 1. The agent's base `instructions` (its persona / prime directives).
901
+ * 2. UI context hints from {@link AgentChatContext} (current object,
902
+ * record, view) so the agent can tailor responses without extra
903
+ * tool calls.
904
+ * 3. An "Active Skills" block describing the capabilities currently
905
+ * available — only populated when `activeSkills` is provided.
586
906
  */
587
- buildSystemMessages(agent: Agent, context?: AgentChatContext): ModelMessage[];
907
+ buildSystemMessages(agent: Agent, context?: AgentChatContext, activeSkills?: readonly Skill[]): ModelMessage[];
588
908
  /**
589
909
  * Derive {@link AIRequestOptions} from an agent definition.
590
910
  *
591
911
  * Tool references declared in `agent.tools` are resolved by name against
592
912
  * `availableTools` (i.e. the full set of ToolRegistry definitions).
593
- * Any unresolved references (tools the agent declares but that are not
594
- * registered) are silently skipped this is intentional so that agents
595
- * can be defined before all tools are available.
913
+ * Tools belonging to `activeSkills` are also resolved and merged into
914
+ * the final tool list (deduplicated by name).
915
+ *
916
+ * Any unresolved references (tools the agent or skill declares but
917
+ * that are not registered) are silently skipped — this is intentional
918
+ * so that agents/skills can be defined before all tools are available.
596
919
  *
597
920
  * @param agent - The agent definition to derive options from
598
921
  * @param availableTools - All tool definitions currently registered in the ToolRegistry
922
+ * @param activeSkills - Skills resolved from agent.skills[] + context filtering
599
923
  * @returns Request options with model config and resolved tool definitions
600
924
  */
601
- buildRequestOptions(agent: Agent, availableTools: AIToolDefinition[]): AIRequestOptions;
925
+ buildRequestOptions(agent: Agent, availableTools: readonly AIToolDefinition[], activeSkills?: readonly Skill[]): AIRequestOptions;
926
+ /**
927
+ * Resolve the set of skills active for a given agent in a given
928
+ * context. Combines:
929
+ *
930
+ * 1. The agent's declared `skills[]` whitelist (if any).
931
+ * 2. Filtering by `triggerConditions` against the runtime context.
932
+ *
933
+ * When the agent declares no skills, returns the empty list (i.e.
934
+ * the agent only uses its inline `tools[]`).
935
+ *
936
+ * Returns an empty array if no SkillRegistry was provided to the
937
+ * runtime (legacy mode).
938
+ */
939
+ resolveActiveSkills(agent: Agent, context?: AgentChatContext): Promise<Skill[]>;
940
+ /**
941
+ * Pick a default agent for the given context, used by the ambient
942
+ * chat endpoint when the client doesn't specify an `agentName`.
943
+ *
944
+ * Resolution order:
945
+ * 1. The `defaultAgent` of the app named by `context.appName`.
946
+ * 2. The first active agent in the registry (deterministic fallback).
947
+ * 3. `undefined` if no agents are registered.
948
+ */
949
+ resolveDefaultAgent(context?: AgentChatContext): Promise<Agent | undefined>;
602
950
  }
603
951
 
604
952
  /**
605
- * Built-in `data_chat` agent definition.
953
+ * Built-in `data_chat` agent — a thin **persona** record.
954
+ *
955
+ * Following the platform's metadata-driven philosophy, this agent no
956
+ * longer hardcodes the tools it can call. The capability bundle lives
957
+ * on the `data_explorer` *skill* (see `../skills/data-explorer-skill.ts`).
958
+ * The agent record is now just:
959
+ * - identity (name / label / role)
960
+ * - persona (system prompt)
961
+ * - model + safety config
962
+ * - skills attached → `skills: ['data_explorer']`
606
963
  *
607
- * This agent powers the Airtable-style data conversation Chatbot.
608
- * It is registered automatically by the AI service plugin when a
609
- * data engine is available.
964
+ * To grant data-exploration powers to a different agent, just add
965
+ * `data_explorer` to its `skills[]`. To revoke globally, set the
966
+ * skill's `active: false` in metadata.
610
967
  *
611
968
  * @example
612
969
  * ```
@@ -620,14 +977,16 @@ declare class AgentRuntime {
620
977
  declare const DATA_CHAT_AGENT: Agent;
621
978
 
622
979
  /**
623
- * Built-in `metadata_assistant` agent definition.
980
+ * Built-in `metadata_assistant` agent — a thin **persona** record.
624
981
  *
625
- * This agent powers AI-driven metadata management users can create objects,
626
- * add/modify/delete fields, and inspect schema definitions through natural
627
- * language conversation.
982
+ * Capability bundle is no longer hardcoded here; it lives on the
983
+ * `metadata_authoring` *skill* (see
984
+ * `../skills/metadata-authoring-skill.ts`). Studio's Universal
985
+ * Assistant pins this agent via `?agent=metadata_assistant` because
986
+ * Studio is a metadata-authoring host.
628
987
  *
629
- * It is registered automatically by the AI service plugin alongside the
630
- * `data_chat` agent when the metadata service is available.
988
+ * To extend this agent (e.g. give it data-exploration too), just add
989
+ * the skill name: `skills: ['metadata_authoring', 'data_explorer']`.
631
990
  *
632
991
  * @example
633
992
  * ```
@@ -640,15 +999,6 @@ declare const DATA_CHAT_AGENT: Agent;
640
999
  */
641
1000
  declare const METADATA_ASSISTANT_AGENT: Agent;
642
1001
 
643
- /**
644
- * XState-inspired State Machine Protocol
645
- * Used to define strict business logic constraints and lifecycle management.
646
- * Prevent AI "hallucinations" by enforcing valid valid transitions.
647
- */
648
- /**
649
- * References a named action (side effect)
650
- * Can be a script, a webhook, or a field update.
651
- */
652
1002
  declare const ActionRefSchema: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
653
1003
  type: z.ZodString;
654
1004
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -703,7 +1053,7 @@ declare const AiConversationObject: Omit<{
703
1053
  abstract: boolean;
704
1054
  datasource: string;
705
1055
  fields: Record<string, {
706
- type: "number" | "boolean" | "file" | "text" | "json" | "code" | "avatar" | "vector" | "date" | "tags" | "lookup" | "url" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "datetime" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "master_detail" | "tree" | "image" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress";
1056
+ type: "number" | "boolean" | "file" | "text" | "json" | "code" | "avatar" | "vector" | "date" | "tags" | "datetime" | "signature" | "progress" | "url" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "color" | "rating" | "slider" | "qrcode";
707
1057
  required: boolean;
708
1058
  searchable: boolean;
709
1059
  multiple: boolean;
@@ -736,11 +1086,27 @@ declare const AiConversationObject: Omit<{
736
1086
  reference?: string | undefined;
737
1087
  referenceFilters?: string[] | undefined;
738
1088
  writeRequiresMasterRead?: boolean | undefined;
739
- expression?: string | undefined;
1089
+ expression?: {
1090
+ dialect: "cel" | "js" | "cron" | "template";
1091
+ source?: string | undefined;
1092
+ ast?: unknown;
1093
+ meta?: {
1094
+ rationale?: string | undefined;
1095
+ generatedBy?: string | undefined;
1096
+ } | undefined;
1097
+ } | {
1098
+ dialect: "cel" | "js" | "cron" | "template";
1099
+ source?: string | undefined;
1100
+ ast?: unknown;
1101
+ meta?: {
1102
+ rationale?: string | undefined;
1103
+ generatedBy?: string | undefined;
1104
+ } | undefined;
1105
+ } | undefined;
740
1106
  summaryOperations?: {
741
1107
  object: string;
742
1108
  field: string;
743
- function: "count" | "sum" | "avg" | "min" | "max";
1109
+ function: "min" | "max" | "count" | "sum" | "avg";
744
1110
  } | undefined;
745
1111
  language?: string | undefined;
746
1112
  theme?: string | undefined;
@@ -826,7 +1192,7 @@ declare const AiConversationObject: Omit<{
826
1192
  autoRotate: boolean;
827
1193
  } | undefined;
828
1194
  };
829
- scope: "database" | "field" | "record" | "table";
1195
+ scope: "field" | "database" | "record" | "table";
830
1196
  deterministicEncryption: boolean;
831
1197
  searchableEncryption: boolean;
832
1198
  } | undefined;
@@ -854,7 +1220,23 @@ declare const AiConversationObject: Omit<{
854
1220
  } | undefined;
855
1221
  } | undefined;
856
1222
  group?: string | undefined;
857
- conditionalRequired?: string | undefined;
1223
+ conditionalRequired?: {
1224
+ dialect: "cel" | "js" | "cron" | "template";
1225
+ source?: string | undefined;
1226
+ ast?: unknown;
1227
+ meta?: {
1228
+ rationale?: string | undefined;
1229
+ generatedBy?: string | undefined;
1230
+ } | undefined;
1231
+ } | {
1232
+ dialect: "cel" | "js" | "cron" | "template";
1233
+ source?: string | undefined;
1234
+ ast?: unknown;
1235
+ meta?: {
1236
+ rationale?: string | undefined;
1237
+ generatedBy?: string | undefined;
1238
+ } | undefined;
1239
+ } | undefined;
858
1240
  inlineHelpText?: string | undefined;
859
1241
  trackFeedHistory?: boolean | undefined;
860
1242
  caseSensitive?: boolean | undefined;
@@ -864,9 +1246,13 @@ declare const AiConversationObject: Omit<{
864
1246
  pluralLabel?: string | undefined;
865
1247
  description?: string | undefined;
866
1248
  icon?: string | undefined;
867
- namespace?: string | undefined;
868
1249
  tags?: string[] | undefined;
869
- tableName?: string | undefined;
1250
+ managedBy?: "system" | "better-auth" | "platform" | undefined;
1251
+ systemFields?: false | {
1252
+ tenant?: boolean | undefined;
1253
+ owner?: boolean | undefined;
1254
+ audit?: boolean | undefined;
1255
+ } | undefined;
870
1256
  indexes?: {
871
1257
  fields: string[];
872
1258
  type: "hash" | "btree" | "gin" | "gist" | "fulltext";
@@ -874,9 +1260,33 @@ declare const AiConversationObject: Omit<{
874
1260
  name?: string | undefined;
875
1261
  partial?: string | undefined;
876
1262
  }[] | undefined;
1263
+ fieldGroups?: {
1264
+ key: string;
1265
+ label: string;
1266
+ defaultExpanded: boolean;
1267
+ icon?: string | undefined;
1268
+ description?: string | undefined;
1269
+ visibleOn?: {
1270
+ dialect: "cel" | "js" | "cron" | "template";
1271
+ source?: string | undefined;
1272
+ ast?: unknown;
1273
+ meta?: {
1274
+ rationale?: string | undefined;
1275
+ generatedBy?: string | undefined;
1276
+ } | undefined;
1277
+ } | {
1278
+ dialect: "cel" | "js" | "cron" | "template";
1279
+ source?: string | undefined;
1280
+ ast?: unknown;
1281
+ meta?: {
1282
+ rationale?: string | undefined;
1283
+ generatedBy?: string | undefined;
1284
+ } | undefined;
1285
+ } | undefined;
1286
+ }[] | undefined;
877
1287
  tenancy?: {
878
1288
  enabled: boolean;
879
- strategy: "shared" | "isolated" | "hybrid";
1289
+ strategy: "hybrid" | "shared" | "isolated";
880
1290
  tenantField: string;
881
1291
  crossTenantAccess: boolean;
882
1292
  } | undefined;
@@ -893,13 +1303,13 @@ declare const AiConversationObject: Omit<{
893
1303
  } | undefined;
894
1304
  partitioning?: {
895
1305
  enabled: boolean;
896
- strategy: "hash" | "range" | "list";
1306
+ strategy: "hash" | "list" | "range";
897
1307
  key: string;
898
1308
  interval?: string | undefined;
899
1309
  } | undefined;
900
1310
  cdc?: {
901
1311
  enabled: boolean;
902
- events: ("update" | "delete" | "insert")[];
1312
+ events: ("delete" | "update" | "insert")[];
903
1313
  destination: string;
904
1314
  } | undefined;
905
1315
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
@@ -939,7 +1349,23 @@ declare const AiConversationObject: Omit<{
939
1349
  displayFormat?: string | undefined;
940
1350
  startNumber?: number | undefined;
941
1351
  } | undefined;
942
- titleFormat?: string | undefined;
1352
+ titleFormat?: {
1353
+ dialect: "cel" | "js" | "cron" | "template";
1354
+ source?: string | undefined;
1355
+ ast?: unknown;
1356
+ meta?: {
1357
+ rationale?: string | undefined;
1358
+ generatedBy?: string | undefined;
1359
+ } | undefined;
1360
+ } | {
1361
+ dialect: "cel" | "js" | "cron" | "template";
1362
+ source?: string | undefined;
1363
+ ast?: unknown;
1364
+ meta?: {
1365
+ rationale?: string | undefined;
1366
+ generatedBy?: string | undefined;
1367
+ } | undefined;
1368
+ } | undefined;
943
1369
  compactLayout?: string[] | undefined;
944
1370
  search?: {
945
1371
  fields: string[];
@@ -956,7 +1382,7 @@ declare const AiConversationObject: Omit<{
956
1382
  trash: boolean;
957
1383
  mru: boolean;
958
1384
  clone: boolean;
959
- apiMethods?: ("search" | "upsert" | "list" | "update" | "delete" | "history" | "get" | "create" | "bulk" | "aggregate" | "restore" | "purge" | "import" | "export")[] | undefined;
1385
+ apiMethods?: ("search" | "upsert" | "list" | "get" | "delete" | "update" | "history" | "create" | "bulk" | "aggregate" | "restore" | "purge" | "import" | "export")[] | undefined;
960
1386
  } | undefined;
961
1387
  recordTypes?: string[] | undefined;
962
1388
  sharingModel?: "private" | "full" | "read" | "read_write" | undefined;
@@ -971,11 +1397,21 @@ declare const AiConversationObject: Omit<{
971
1397
  locations?: ("list_toolbar" | "list_item" | "record_header" | "record_more" | "record_related" | "global_nav")[] | undefined;
972
1398
  component?: "action:button" | "action:icon" | "action:menu" | "action:group" | undefined;
973
1399
  target?: string | undefined;
1400
+ body?: {
1401
+ language: "expression";
1402
+ source: string;
1403
+ } | {
1404
+ language: "js";
1405
+ source: string;
1406
+ capabilities: ("api.read" | "api.write" | "crypto.uuid" | "crypto.hash" | "log")[];
1407
+ timeoutMs?: number | undefined;
1408
+ memoryMb?: number | undefined;
1409
+ } | undefined;
974
1410
  execute?: string | undefined;
975
1411
  params?: {
976
1412
  name: string;
977
1413
  label: string;
978
- type: "number" | "boolean" | "date" | "lookup" | "file" | "url" | "json" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "datetime" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "code" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress" | "tags" | "vector";
1414
+ type: "number" | "boolean" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "tags" | "vector";
979
1415
  required: boolean;
980
1416
  options?: {
981
1417
  label: string;
@@ -985,8 +1421,24 @@ declare const AiConversationObject: Omit<{
985
1421
  variant?: "link" | "primary" | "secondary" | "danger" | "ghost" | undefined;
986
1422
  confirmText?: string | undefined;
987
1423
  successMessage?: string | undefined;
988
- visible?: string | undefined;
989
- disabled?: string | boolean | undefined;
1424
+ visible?: {
1425
+ dialect: "cel" | "js" | "cron" | "template";
1426
+ source?: string | undefined;
1427
+ ast?: unknown;
1428
+ meta?: {
1429
+ rationale?: string | undefined;
1430
+ generatedBy?: string | undefined;
1431
+ } | undefined;
1432
+ } | undefined;
1433
+ disabled?: boolean | {
1434
+ dialect: "cel" | "js" | "cron" | "template";
1435
+ source?: string | undefined;
1436
+ ast?: unknown;
1437
+ meta?: {
1438
+ rationale?: string | undefined;
1439
+ generatedBy?: string | undefined;
1440
+ } | undefined;
1441
+ } | undefined;
990
1442
  shortcut?: string | undefined;
991
1443
  bulkEnabled?: boolean | undefined;
992
1444
  timeout?: number | undefined;
@@ -997,8 +1449,7 @@ declare const AiConversationObject: Omit<{
997
1449
  } | undefined;
998
1450
  }[] | undefined;
999
1451
  }, "fields"> & Pick<{
1000
- readonly namespace: "ai";
1001
- readonly name: "conversations";
1452
+ readonly name: "ai_conversations";
1002
1453
  readonly label: "AI Conversation";
1003
1454
  readonly pluralLabel: "AI Conversations";
1004
1455
  readonly icon: "message-square";
@@ -1006,13 +1457,26 @@ declare const AiConversationObject: Omit<{
1006
1457
  readonly description: "Persistent AI conversation metadata";
1007
1458
  readonly fields: {
1008
1459
  readonly id: {
1009
- readonly format?: string | undefined;
1010
- readonly expression?: string | undefined;
1011
1460
  readonly readonly?: boolean | undefined;
1012
- readonly defaultValue?: unknown;
1461
+ readonly format?: string | undefined;
1462
+ readonly options?: {
1463
+ label: string;
1464
+ value: string;
1465
+ color?: string | undefined;
1466
+ default?: boolean | undefined;
1467
+ }[] | undefined;
1468
+ readonly description?: string | undefined;
1469
+ readonly label?: string | undefined;
1470
+ readonly name?: string | undefined;
1471
+ readonly precision?: number | undefined;
1472
+ readonly required?: boolean | undefined;
1473
+ readonly multiple?: boolean | undefined;
1474
+ readonly dependencies?: string[] | undefined;
1475
+ readonly theme?: string | undefined;
1476
+ readonly externalId?: boolean | undefined;
1013
1477
  readonly min?: number | undefined;
1014
1478
  readonly max?: number | undefined;
1015
- readonly name?: string | undefined;
1479
+ readonly group?: string | undefined;
1016
1480
  readonly encryptionConfig?: {
1017
1481
  enabled: boolean;
1018
1482
  algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
@@ -1026,38 +1490,36 @@ declare const AiConversationObject: Omit<{
1026
1490
  autoRotate: boolean;
1027
1491
  } | undefined;
1028
1492
  };
1029
- scope: "table" | "record" | "field" | "database";
1493
+ scope: "record" | "field" | "table" | "database";
1030
1494
  deterministicEncryption: boolean;
1031
1495
  searchableEncryption: boolean;
1032
1496
  } | undefined;
1033
- readonly label?: string | undefined;
1034
- readonly precision?: number | undefined;
1035
- readonly description?: string | undefined;
1036
1497
  readonly columnName?: string | undefined;
1037
- readonly required?: boolean | undefined;
1038
1498
  readonly searchable?: boolean | undefined;
1039
- readonly multiple?: boolean | undefined;
1040
1499
  readonly unique?: boolean | undefined;
1500
+ readonly defaultValue?: unknown;
1041
1501
  readonly maxLength?: number | undefined;
1042
1502
  readonly minLength?: number | undefined;
1043
1503
  readonly scale?: number | undefined;
1044
- readonly options?: {
1045
- label: string;
1046
- value: string;
1047
- color?: string | undefined;
1048
- default?: boolean | undefined;
1049
- }[] | undefined;
1050
1504
  readonly reference?: string | undefined;
1051
1505
  readonly referenceFilters?: string[] | undefined;
1052
1506
  readonly writeRequiresMasterRead?: boolean | undefined;
1053
1507
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1508
+ readonly expression?: {
1509
+ dialect: "cel" | "js" | "cron" | "template";
1510
+ source?: string | undefined;
1511
+ ast?: unknown;
1512
+ meta?: {
1513
+ rationale?: string | undefined;
1514
+ generatedBy?: string | undefined;
1515
+ } | undefined;
1516
+ } | undefined;
1054
1517
  readonly summaryOperations?: {
1055
1518
  object: string;
1056
1519
  field: string;
1057
- function: "count" | "sum" | "avg" | "min" | "max";
1520
+ function: "min" | "max" | "count" | "sum" | "avg";
1058
1521
  } | undefined;
1059
1522
  readonly language?: string | undefined;
1060
- readonly theme?: string | undefined;
1061
1523
  readonly lineNumbers?: boolean | undefined;
1062
1524
  readonly maxRating?: number | undefined;
1063
1525
  readonly allowHalf?: boolean | undefined;
@@ -1076,7 +1538,7 @@ declare const AiConversationObject: Omit<{
1076
1538
  readonly allowScanning?: boolean | undefined;
1077
1539
  readonly currencyConfig?: {
1078
1540
  precision: number;
1079
- currencyMode: "dynamic" | "fixed";
1541
+ currencyMode: "fixed" | "dynamic";
1080
1542
  defaultCurrency: string;
1081
1543
  } | undefined;
1082
1544
  readonly vectorConfig?: {
@@ -1084,7 +1546,7 @@ declare const AiConversationObject: Omit<{
1084
1546
  distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
1085
1547
  normalized: boolean;
1086
1548
  indexed: boolean;
1087
- indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
1549
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
1088
1550
  } | undefined;
1089
1551
  readonly fileAttachmentConfig?: {
1090
1552
  virusScan: boolean;
@@ -1129,7 +1591,7 @@ declare const AiConversationObject: Omit<{
1129
1591
  } | undefined;
1130
1592
  readonly maskingRule?: {
1131
1593
  field: string;
1132
- strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
1594
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
1133
1595
  preserveFormat: boolean;
1134
1596
  preserveLength: boolean;
1135
1597
  pattern?: string | undefined;
@@ -1137,7 +1599,6 @@ declare const AiConversationObject: Omit<{
1137
1599
  exemptRoles?: string[] | undefined;
1138
1600
  } | undefined;
1139
1601
  readonly auditTrail?: boolean | undefined;
1140
- readonly dependencies?: string[] | undefined;
1141
1602
  readonly cached?: {
1142
1603
  enabled: boolean;
1143
1604
  ttl: number;
@@ -1151,8 +1612,15 @@ declare const AiConversationObject: Omit<{
1151
1612
  threshold: number;
1152
1613
  } | undefined;
1153
1614
  } | undefined;
1154
- readonly group?: string | undefined;
1155
- readonly conditionalRequired?: string | undefined;
1615
+ readonly conditionalRequired?: {
1616
+ dialect: "cel" | "js" | "cron" | "template";
1617
+ source?: string | undefined;
1618
+ ast?: unknown;
1619
+ meta?: {
1620
+ rationale?: string | undefined;
1621
+ generatedBy?: string | undefined;
1622
+ } | undefined;
1623
+ } | undefined;
1156
1624
  readonly hidden?: boolean | undefined;
1157
1625
  readonly sortable?: boolean | undefined;
1158
1626
  readonly inlineHelpText?: string | undefined;
@@ -1160,17 +1628,29 @@ declare const AiConversationObject: Omit<{
1160
1628
  readonly caseSensitive?: boolean | undefined;
1161
1629
  readonly autonumberFormat?: string | undefined;
1162
1630
  readonly index?: boolean | undefined;
1163
- readonly externalId?: boolean | undefined;
1164
1631
  readonly type: "text";
1165
1632
  };
1166
1633
  readonly title: {
1167
- readonly format?: string | undefined;
1168
- readonly expression?: string | undefined;
1169
1634
  readonly readonly?: boolean | undefined;
1170
- readonly defaultValue?: unknown;
1635
+ readonly format?: string | undefined;
1636
+ readonly options?: {
1637
+ label: string;
1638
+ value: string;
1639
+ color?: string | undefined;
1640
+ default?: boolean | undefined;
1641
+ }[] | undefined;
1642
+ readonly description?: string | undefined;
1643
+ readonly label?: string | undefined;
1644
+ readonly name?: string | undefined;
1645
+ readonly precision?: number | undefined;
1646
+ readonly required?: boolean | undefined;
1647
+ readonly multiple?: boolean | undefined;
1648
+ readonly dependencies?: string[] | undefined;
1649
+ readonly theme?: string | undefined;
1650
+ readonly externalId?: boolean | undefined;
1171
1651
  readonly min?: number | undefined;
1172
1652
  readonly max?: number | undefined;
1173
- readonly name?: string | undefined;
1653
+ readonly group?: string | undefined;
1174
1654
  readonly encryptionConfig?: {
1175
1655
  enabled: boolean;
1176
1656
  algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
@@ -1184,38 +1664,36 @@ declare const AiConversationObject: Omit<{
1184
1664
  autoRotate: boolean;
1185
1665
  } | undefined;
1186
1666
  };
1187
- scope: "table" | "record" | "field" | "database";
1667
+ scope: "record" | "field" | "table" | "database";
1188
1668
  deterministicEncryption: boolean;
1189
1669
  searchableEncryption: boolean;
1190
1670
  } | undefined;
1191
- readonly label?: string | undefined;
1192
- readonly precision?: number | undefined;
1193
- readonly description?: string | undefined;
1194
1671
  readonly columnName?: string | undefined;
1195
- readonly required?: boolean | undefined;
1196
1672
  readonly searchable?: boolean | undefined;
1197
- readonly multiple?: boolean | undefined;
1198
1673
  readonly unique?: boolean | undefined;
1674
+ readonly defaultValue?: unknown;
1199
1675
  readonly maxLength?: number | undefined;
1200
1676
  readonly minLength?: number | undefined;
1201
1677
  readonly scale?: number | undefined;
1202
- readonly options?: {
1203
- label: string;
1204
- value: string;
1205
- color?: string | undefined;
1206
- default?: boolean | undefined;
1207
- }[] | undefined;
1208
1678
  readonly reference?: string | undefined;
1209
1679
  readonly referenceFilters?: string[] | undefined;
1210
1680
  readonly writeRequiresMasterRead?: boolean | undefined;
1211
1681
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1682
+ readonly expression?: {
1683
+ dialect: "cel" | "js" | "cron" | "template";
1684
+ source?: string | undefined;
1685
+ ast?: unknown;
1686
+ meta?: {
1687
+ rationale?: string | undefined;
1688
+ generatedBy?: string | undefined;
1689
+ } | undefined;
1690
+ } | undefined;
1212
1691
  readonly summaryOperations?: {
1213
1692
  object: string;
1214
1693
  field: string;
1215
- function: "count" | "sum" | "avg" | "min" | "max";
1694
+ function: "min" | "max" | "count" | "sum" | "avg";
1216
1695
  } | undefined;
1217
1696
  readonly language?: string | undefined;
1218
- readonly theme?: string | undefined;
1219
1697
  readonly lineNumbers?: boolean | undefined;
1220
1698
  readonly maxRating?: number | undefined;
1221
1699
  readonly allowHalf?: boolean | undefined;
@@ -1234,7 +1712,7 @@ declare const AiConversationObject: Omit<{
1234
1712
  readonly allowScanning?: boolean | undefined;
1235
1713
  readonly currencyConfig?: {
1236
1714
  precision: number;
1237
- currencyMode: "dynamic" | "fixed";
1715
+ currencyMode: "fixed" | "dynamic";
1238
1716
  defaultCurrency: string;
1239
1717
  } | undefined;
1240
1718
  readonly vectorConfig?: {
@@ -1242,7 +1720,7 @@ declare const AiConversationObject: Omit<{
1242
1720
  distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
1243
1721
  normalized: boolean;
1244
1722
  indexed: boolean;
1245
- indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
1723
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
1246
1724
  } | undefined;
1247
1725
  readonly fileAttachmentConfig?: {
1248
1726
  virusScan: boolean;
@@ -1287,7 +1765,7 @@ declare const AiConversationObject: Omit<{
1287
1765
  } | undefined;
1288
1766
  readonly maskingRule?: {
1289
1767
  field: string;
1290
- strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
1768
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
1291
1769
  preserveFormat: boolean;
1292
1770
  preserveLength: boolean;
1293
1771
  pattern?: string | undefined;
@@ -1295,7 +1773,6 @@ declare const AiConversationObject: Omit<{
1295
1773
  exemptRoles?: string[] | undefined;
1296
1774
  } | undefined;
1297
1775
  readonly auditTrail?: boolean | undefined;
1298
- readonly dependencies?: string[] | undefined;
1299
1776
  readonly cached?: {
1300
1777
  enabled: boolean;
1301
1778
  ttl: number;
@@ -1309,8 +1786,15 @@ declare const AiConversationObject: Omit<{
1309
1786
  threshold: number;
1310
1787
  } | undefined;
1311
1788
  } | undefined;
1312
- readonly group?: string | undefined;
1313
- readonly conditionalRequired?: string | undefined;
1789
+ readonly conditionalRequired?: {
1790
+ dialect: "cel" | "js" | "cron" | "template";
1791
+ source?: string | undefined;
1792
+ ast?: unknown;
1793
+ meta?: {
1794
+ rationale?: string | undefined;
1795
+ generatedBy?: string | undefined;
1796
+ } | undefined;
1797
+ } | undefined;
1314
1798
  readonly hidden?: boolean | undefined;
1315
1799
  readonly sortable?: boolean | undefined;
1316
1800
  readonly inlineHelpText?: string | undefined;
@@ -1318,17 +1802,29 @@ declare const AiConversationObject: Omit<{
1318
1802
  readonly caseSensitive?: boolean | undefined;
1319
1803
  readonly autonumberFormat?: string | undefined;
1320
1804
  readonly index?: boolean | undefined;
1805
+ readonly type: "text";
1806
+ };
1807
+ readonly agent_id: {
1808
+ readonly readonly?: boolean | undefined;
1809
+ readonly format?: string | undefined;
1810
+ readonly options?: {
1811
+ label: string;
1812
+ value: string;
1813
+ color?: string | undefined;
1814
+ default?: boolean | undefined;
1815
+ }[] | undefined;
1816
+ readonly description?: string | undefined;
1817
+ readonly label?: string | undefined;
1818
+ readonly name?: string | undefined;
1819
+ readonly precision?: number | undefined;
1820
+ readonly required?: boolean | undefined;
1821
+ readonly multiple?: boolean | undefined;
1822
+ readonly dependencies?: string[] | undefined;
1823
+ readonly theme?: string | undefined;
1321
1824
  readonly externalId?: boolean | undefined;
1322
- readonly type: "text";
1323
- };
1324
- readonly agent_id: {
1325
- readonly format?: string | undefined;
1326
- readonly expression?: string | undefined;
1327
- readonly readonly?: boolean | undefined;
1328
- readonly defaultValue?: unknown;
1329
1825
  readonly min?: number | undefined;
1330
1826
  readonly max?: number | undefined;
1331
- readonly name?: string | undefined;
1827
+ readonly group?: string | undefined;
1332
1828
  readonly encryptionConfig?: {
1333
1829
  enabled: boolean;
1334
1830
  algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
@@ -1342,38 +1838,36 @@ declare const AiConversationObject: Omit<{
1342
1838
  autoRotate: boolean;
1343
1839
  } | undefined;
1344
1840
  };
1345
- scope: "table" | "record" | "field" | "database";
1841
+ scope: "record" | "field" | "table" | "database";
1346
1842
  deterministicEncryption: boolean;
1347
1843
  searchableEncryption: boolean;
1348
1844
  } | undefined;
1349
- readonly label?: string | undefined;
1350
- readonly precision?: number | undefined;
1351
- readonly description?: string | undefined;
1352
1845
  readonly columnName?: string | undefined;
1353
- readonly required?: boolean | undefined;
1354
1846
  readonly searchable?: boolean | undefined;
1355
- readonly multiple?: boolean | undefined;
1356
1847
  readonly unique?: boolean | undefined;
1848
+ readonly defaultValue?: unknown;
1357
1849
  readonly maxLength?: number | undefined;
1358
1850
  readonly minLength?: number | undefined;
1359
1851
  readonly scale?: number | undefined;
1360
- readonly options?: {
1361
- label: string;
1362
- value: string;
1363
- color?: string | undefined;
1364
- default?: boolean | undefined;
1365
- }[] | undefined;
1366
- readonly reference?: string | undefined;
1852
+ reference: string;
1367
1853
  readonly referenceFilters?: string[] | undefined;
1368
1854
  readonly writeRequiresMasterRead?: boolean | undefined;
1369
1855
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
1856
+ readonly expression?: {
1857
+ dialect: "cel" | "js" | "cron" | "template";
1858
+ source?: string | undefined;
1859
+ ast?: unknown;
1860
+ meta?: {
1861
+ rationale?: string | undefined;
1862
+ generatedBy?: string | undefined;
1863
+ } | undefined;
1864
+ } | undefined;
1370
1865
  readonly summaryOperations?: {
1371
1866
  object: string;
1372
1867
  field: string;
1373
- function: "count" | "sum" | "avg" | "min" | "max";
1868
+ function: "min" | "max" | "count" | "sum" | "avg";
1374
1869
  } | undefined;
1375
1870
  readonly language?: string | undefined;
1376
- readonly theme?: string | undefined;
1377
1871
  readonly lineNumbers?: boolean | undefined;
1378
1872
  readonly maxRating?: number | undefined;
1379
1873
  readonly allowHalf?: boolean | undefined;
@@ -1392,7 +1886,7 @@ declare const AiConversationObject: Omit<{
1392
1886
  readonly allowScanning?: boolean | undefined;
1393
1887
  readonly currencyConfig?: {
1394
1888
  precision: number;
1395
- currencyMode: "dynamic" | "fixed";
1889
+ currencyMode: "fixed" | "dynamic";
1396
1890
  defaultCurrency: string;
1397
1891
  } | undefined;
1398
1892
  readonly vectorConfig?: {
@@ -1400,7 +1894,7 @@ declare const AiConversationObject: Omit<{
1400
1894
  distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
1401
1895
  normalized: boolean;
1402
1896
  indexed: boolean;
1403
- indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
1897
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
1404
1898
  } | undefined;
1405
1899
  readonly fileAttachmentConfig?: {
1406
1900
  virusScan: boolean;
@@ -1445,7 +1939,7 @@ declare const AiConversationObject: Omit<{
1445
1939
  } | undefined;
1446
1940
  readonly maskingRule?: {
1447
1941
  field: string;
1448
- strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
1942
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
1449
1943
  preserveFormat: boolean;
1450
1944
  preserveLength: boolean;
1451
1945
  pattern?: string | undefined;
@@ -1453,7 +1947,6 @@ declare const AiConversationObject: Omit<{
1453
1947
  exemptRoles?: string[] | undefined;
1454
1948
  } | undefined;
1455
1949
  readonly auditTrail?: boolean | undefined;
1456
- readonly dependencies?: string[] | undefined;
1457
1950
  readonly cached?: {
1458
1951
  enabled: boolean;
1459
1952
  ttl: number;
@@ -1467,8 +1960,15 @@ declare const AiConversationObject: Omit<{
1467
1960
  threshold: number;
1468
1961
  } | undefined;
1469
1962
  } | undefined;
1470
- readonly group?: string | undefined;
1471
- readonly conditionalRequired?: string | undefined;
1963
+ readonly conditionalRequired?: {
1964
+ dialect: "cel" | "js" | "cron" | "template";
1965
+ source?: string | undefined;
1966
+ ast?: unknown;
1967
+ meta?: {
1968
+ rationale?: string | undefined;
1969
+ generatedBy?: string | undefined;
1970
+ } | undefined;
1971
+ } | undefined;
1472
1972
  readonly hidden?: boolean | undefined;
1473
1973
  readonly sortable?: boolean | undefined;
1474
1974
  readonly inlineHelpText?: string | undefined;
@@ -1476,17 +1976,29 @@ declare const AiConversationObject: Omit<{
1476
1976
  readonly caseSensitive?: boolean | undefined;
1477
1977
  readonly autonumberFormat?: string | undefined;
1478
1978
  readonly index?: boolean | undefined;
1479
- readonly externalId?: boolean | undefined;
1480
- readonly type: "text";
1979
+ readonly type: "lookup";
1481
1980
  };
1482
1981
  readonly user_id: {
1483
- readonly format?: string | undefined;
1484
- readonly expression?: string | undefined;
1485
1982
  readonly readonly?: boolean | undefined;
1486
- readonly defaultValue?: unknown;
1983
+ readonly format?: string | undefined;
1984
+ readonly options?: {
1985
+ label: string;
1986
+ value: string;
1987
+ color?: string | undefined;
1988
+ default?: boolean | undefined;
1989
+ }[] | undefined;
1990
+ readonly description?: string | undefined;
1991
+ readonly label?: string | undefined;
1992
+ readonly name?: string | undefined;
1993
+ readonly precision?: number | undefined;
1994
+ readonly required?: boolean | undefined;
1995
+ readonly multiple?: boolean | undefined;
1996
+ readonly dependencies?: string[] | undefined;
1997
+ readonly theme?: string | undefined;
1998
+ readonly externalId?: boolean | undefined;
1487
1999
  readonly min?: number | undefined;
1488
2000
  readonly max?: number | undefined;
1489
- readonly name?: string | undefined;
2001
+ readonly group?: string | undefined;
1490
2002
  readonly encryptionConfig?: {
1491
2003
  enabled: boolean;
1492
2004
  algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
@@ -1500,38 +2012,36 @@ declare const AiConversationObject: Omit<{
1500
2012
  autoRotate: boolean;
1501
2013
  } | undefined;
1502
2014
  };
1503
- scope: "table" | "record" | "field" | "database";
2015
+ scope: "record" | "field" | "table" | "database";
1504
2016
  deterministicEncryption: boolean;
1505
2017
  searchableEncryption: boolean;
1506
2018
  } | undefined;
1507
- readonly label?: string | undefined;
1508
- readonly precision?: number | undefined;
1509
- readonly description?: string | undefined;
1510
2019
  readonly columnName?: string | undefined;
1511
- readonly required?: boolean | undefined;
1512
2020
  readonly searchable?: boolean | undefined;
1513
- readonly multiple?: boolean | undefined;
1514
2021
  readonly unique?: boolean | undefined;
2022
+ readonly defaultValue?: unknown;
1515
2023
  readonly maxLength?: number | undefined;
1516
2024
  readonly minLength?: number | undefined;
1517
2025
  readonly scale?: number | undefined;
1518
- readonly options?: {
1519
- label: string;
1520
- value: string;
1521
- color?: string | undefined;
1522
- default?: boolean | undefined;
1523
- }[] | undefined;
1524
- readonly reference?: string | undefined;
2026
+ reference: string;
1525
2027
  readonly referenceFilters?: string[] | undefined;
1526
2028
  readonly writeRequiresMasterRead?: boolean | undefined;
1527
2029
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2030
+ readonly expression?: {
2031
+ dialect: "cel" | "js" | "cron" | "template";
2032
+ source?: string | undefined;
2033
+ ast?: unknown;
2034
+ meta?: {
2035
+ rationale?: string | undefined;
2036
+ generatedBy?: string | undefined;
2037
+ } | undefined;
2038
+ } | undefined;
1528
2039
  readonly summaryOperations?: {
1529
2040
  object: string;
1530
2041
  field: string;
1531
- function: "count" | "sum" | "avg" | "min" | "max";
2042
+ function: "min" | "max" | "count" | "sum" | "avg";
1532
2043
  } | undefined;
1533
2044
  readonly language?: string | undefined;
1534
- readonly theme?: string | undefined;
1535
2045
  readonly lineNumbers?: boolean | undefined;
1536
2046
  readonly maxRating?: number | undefined;
1537
2047
  readonly allowHalf?: boolean | undefined;
@@ -1550,7 +2060,7 @@ declare const AiConversationObject: Omit<{
1550
2060
  readonly allowScanning?: boolean | undefined;
1551
2061
  readonly currencyConfig?: {
1552
2062
  precision: number;
1553
- currencyMode: "dynamic" | "fixed";
2063
+ currencyMode: "fixed" | "dynamic";
1554
2064
  defaultCurrency: string;
1555
2065
  } | undefined;
1556
2066
  readonly vectorConfig?: {
@@ -1558,7 +2068,7 @@ declare const AiConversationObject: Omit<{
1558
2068
  distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
1559
2069
  normalized: boolean;
1560
2070
  indexed: boolean;
1561
- indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
2071
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
1562
2072
  } | undefined;
1563
2073
  readonly fileAttachmentConfig?: {
1564
2074
  virusScan: boolean;
@@ -1603,7 +2113,7 @@ declare const AiConversationObject: Omit<{
1603
2113
  } | undefined;
1604
2114
  readonly maskingRule?: {
1605
2115
  field: string;
1606
- strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
2116
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
1607
2117
  preserveFormat: boolean;
1608
2118
  preserveLength: boolean;
1609
2119
  pattern?: string | undefined;
@@ -1611,7 +2121,6 @@ declare const AiConversationObject: Omit<{
1611
2121
  exemptRoles?: string[] | undefined;
1612
2122
  } | undefined;
1613
2123
  readonly auditTrail?: boolean | undefined;
1614
- readonly dependencies?: string[] | undefined;
1615
2124
  readonly cached?: {
1616
2125
  enabled: boolean;
1617
2126
  ttl: number;
@@ -1625,8 +2134,15 @@ declare const AiConversationObject: Omit<{
1625
2134
  threshold: number;
1626
2135
  } | undefined;
1627
2136
  } | undefined;
1628
- readonly group?: string | undefined;
1629
- readonly conditionalRequired?: string | undefined;
2137
+ readonly conditionalRequired?: {
2138
+ dialect: "cel" | "js" | "cron" | "template";
2139
+ source?: string | undefined;
2140
+ ast?: unknown;
2141
+ meta?: {
2142
+ rationale?: string | undefined;
2143
+ generatedBy?: string | undefined;
2144
+ } | undefined;
2145
+ } | undefined;
1630
2146
  readonly hidden?: boolean | undefined;
1631
2147
  readonly sortable?: boolean | undefined;
1632
2148
  readonly inlineHelpText?: string | undefined;
@@ -1634,17 +2150,29 @@ declare const AiConversationObject: Omit<{
1634
2150
  readonly caseSensitive?: boolean | undefined;
1635
2151
  readonly autonumberFormat?: string | undefined;
1636
2152
  readonly index?: boolean | undefined;
1637
- readonly externalId?: boolean | undefined;
1638
- readonly type: "text";
2153
+ readonly type: "lookup";
1639
2154
  };
1640
2155
  readonly metadata: {
1641
- readonly format?: string | undefined;
1642
- readonly expression?: string | undefined;
1643
2156
  readonly readonly?: boolean | undefined;
1644
- readonly defaultValue?: unknown;
2157
+ readonly format?: string | undefined;
2158
+ readonly options?: {
2159
+ label: string;
2160
+ value: string;
2161
+ color?: string | undefined;
2162
+ default?: boolean | undefined;
2163
+ }[] | undefined;
2164
+ readonly description?: string | undefined;
2165
+ readonly label?: string | undefined;
2166
+ readonly name?: string | undefined;
2167
+ readonly precision?: number | undefined;
2168
+ readonly required?: boolean | undefined;
2169
+ readonly multiple?: boolean | undefined;
2170
+ readonly dependencies?: string[] | undefined;
2171
+ readonly theme?: string | undefined;
2172
+ readonly externalId?: boolean | undefined;
1645
2173
  readonly min?: number | undefined;
1646
2174
  readonly max?: number | undefined;
1647
- readonly name?: string | undefined;
2175
+ readonly group?: string | undefined;
1648
2176
  readonly encryptionConfig?: {
1649
2177
  enabled: boolean;
1650
2178
  algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
@@ -1658,38 +2186,36 @@ declare const AiConversationObject: Omit<{
1658
2186
  autoRotate: boolean;
1659
2187
  } | undefined;
1660
2188
  };
1661
- scope: "table" | "record" | "field" | "database";
2189
+ scope: "record" | "field" | "table" | "database";
1662
2190
  deterministicEncryption: boolean;
1663
2191
  searchableEncryption: boolean;
1664
2192
  } | undefined;
1665
- readonly label?: string | undefined;
1666
- readonly precision?: number | undefined;
1667
- readonly description?: string | undefined;
1668
2193
  readonly columnName?: string | undefined;
1669
- readonly required?: boolean | undefined;
1670
2194
  readonly searchable?: boolean | undefined;
1671
- readonly multiple?: boolean | undefined;
1672
2195
  readonly unique?: boolean | undefined;
2196
+ readonly defaultValue?: unknown;
1673
2197
  readonly maxLength?: number | undefined;
1674
2198
  readonly minLength?: number | undefined;
1675
2199
  readonly scale?: number | undefined;
1676
- readonly options?: {
1677
- label: string;
1678
- value: string;
1679
- color?: string | undefined;
1680
- default?: boolean | undefined;
1681
- }[] | undefined;
1682
2200
  readonly reference?: string | undefined;
1683
2201
  readonly referenceFilters?: string[] | undefined;
1684
2202
  readonly writeRequiresMasterRead?: boolean | undefined;
1685
2203
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2204
+ readonly expression?: {
2205
+ dialect: "cel" | "js" | "cron" | "template";
2206
+ source?: string | undefined;
2207
+ ast?: unknown;
2208
+ meta?: {
2209
+ rationale?: string | undefined;
2210
+ generatedBy?: string | undefined;
2211
+ } | undefined;
2212
+ } | undefined;
1686
2213
  readonly summaryOperations?: {
1687
2214
  object: string;
1688
2215
  field: string;
1689
- function: "count" | "sum" | "avg" | "min" | "max";
2216
+ function: "min" | "max" | "count" | "sum" | "avg";
1690
2217
  } | undefined;
1691
2218
  readonly language?: string | undefined;
1692
- readonly theme?: string | undefined;
1693
2219
  readonly lineNumbers?: boolean | undefined;
1694
2220
  readonly maxRating?: number | undefined;
1695
2221
  readonly allowHalf?: boolean | undefined;
@@ -1708,7 +2234,7 @@ declare const AiConversationObject: Omit<{
1708
2234
  readonly allowScanning?: boolean | undefined;
1709
2235
  readonly currencyConfig?: {
1710
2236
  precision: number;
1711
- currencyMode: "dynamic" | "fixed";
2237
+ currencyMode: "fixed" | "dynamic";
1712
2238
  defaultCurrency: string;
1713
2239
  } | undefined;
1714
2240
  readonly vectorConfig?: {
@@ -1716,7 +2242,7 @@ declare const AiConversationObject: Omit<{
1716
2242
  distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
1717
2243
  normalized: boolean;
1718
2244
  indexed: boolean;
1719
- indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
2245
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
1720
2246
  } | undefined;
1721
2247
  readonly fileAttachmentConfig?: {
1722
2248
  virusScan: boolean;
@@ -1761,7 +2287,7 @@ declare const AiConversationObject: Omit<{
1761
2287
  } | undefined;
1762
2288
  readonly maskingRule?: {
1763
2289
  field: string;
1764
- strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
2290
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
1765
2291
  preserveFormat: boolean;
1766
2292
  preserveLength: boolean;
1767
2293
  pattern?: string | undefined;
@@ -1769,7 +2295,6 @@ declare const AiConversationObject: Omit<{
1769
2295
  exemptRoles?: string[] | undefined;
1770
2296
  } | undefined;
1771
2297
  readonly auditTrail?: boolean | undefined;
1772
- readonly dependencies?: string[] | undefined;
1773
2298
  readonly cached?: {
1774
2299
  enabled: boolean;
1775
2300
  ttl: number;
@@ -1783,8 +2308,15 @@ declare const AiConversationObject: Omit<{
1783
2308
  threshold: number;
1784
2309
  } | undefined;
1785
2310
  } | undefined;
1786
- readonly group?: string | undefined;
1787
- readonly conditionalRequired?: string | undefined;
2311
+ readonly conditionalRequired?: {
2312
+ dialect: "cel" | "js" | "cron" | "template";
2313
+ source?: string | undefined;
2314
+ ast?: unknown;
2315
+ meta?: {
2316
+ rationale?: string | undefined;
2317
+ generatedBy?: string | undefined;
2318
+ } | undefined;
2319
+ } | undefined;
1788
2320
  readonly hidden?: boolean | undefined;
1789
2321
  readonly sortable?: boolean | undefined;
1790
2322
  readonly inlineHelpText?: string | undefined;
@@ -1792,17 +2324,29 @@ declare const AiConversationObject: Omit<{
1792
2324
  readonly caseSensitive?: boolean | undefined;
1793
2325
  readonly autonumberFormat?: string | undefined;
1794
2326
  readonly index?: boolean | undefined;
1795
- readonly externalId?: boolean | undefined;
1796
2327
  readonly type: "textarea";
1797
2328
  };
1798
2329
  readonly created_at: {
1799
- readonly format?: string | undefined;
1800
- readonly expression?: string | undefined;
1801
2330
  readonly readonly?: boolean | undefined;
1802
- readonly defaultValue?: unknown;
2331
+ readonly format?: string | undefined;
2332
+ readonly options?: {
2333
+ label: string;
2334
+ value: string;
2335
+ color?: string | undefined;
2336
+ default?: boolean | undefined;
2337
+ }[] | undefined;
2338
+ readonly description?: string | undefined;
2339
+ readonly label?: string | undefined;
2340
+ readonly name?: string | undefined;
2341
+ readonly precision?: number | undefined;
2342
+ readonly required?: boolean | undefined;
2343
+ readonly multiple?: boolean | undefined;
2344
+ readonly dependencies?: string[] | undefined;
2345
+ readonly theme?: string | undefined;
2346
+ readonly externalId?: boolean | undefined;
1803
2347
  readonly min?: number | undefined;
1804
2348
  readonly max?: number | undefined;
1805
- readonly name?: string | undefined;
2349
+ readonly group?: string | undefined;
1806
2350
  readonly encryptionConfig?: {
1807
2351
  enabled: boolean;
1808
2352
  algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
@@ -1816,38 +2360,36 @@ declare const AiConversationObject: Omit<{
1816
2360
  autoRotate: boolean;
1817
2361
  } | undefined;
1818
2362
  };
1819
- scope: "table" | "record" | "field" | "database";
2363
+ scope: "record" | "field" | "table" | "database";
1820
2364
  deterministicEncryption: boolean;
1821
2365
  searchableEncryption: boolean;
1822
2366
  } | undefined;
1823
- readonly label?: string | undefined;
1824
- readonly precision?: number | undefined;
1825
- readonly description?: string | undefined;
1826
2367
  readonly columnName?: string | undefined;
1827
- readonly required?: boolean | undefined;
1828
2368
  readonly searchable?: boolean | undefined;
1829
- readonly multiple?: boolean | undefined;
1830
2369
  readonly unique?: boolean | undefined;
2370
+ readonly defaultValue?: unknown;
1831
2371
  readonly maxLength?: number | undefined;
1832
2372
  readonly minLength?: number | undefined;
1833
2373
  readonly scale?: number | undefined;
1834
- readonly options?: {
1835
- label: string;
1836
- value: string;
1837
- color?: string | undefined;
1838
- default?: boolean | undefined;
1839
- }[] | undefined;
1840
2374
  readonly reference?: string | undefined;
1841
2375
  readonly referenceFilters?: string[] | undefined;
1842
2376
  readonly writeRequiresMasterRead?: boolean | undefined;
1843
2377
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2378
+ readonly expression?: {
2379
+ dialect: "cel" | "js" | "cron" | "template";
2380
+ source?: string | undefined;
2381
+ ast?: unknown;
2382
+ meta?: {
2383
+ rationale?: string | undefined;
2384
+ generatedBy?: string | undefined;
2385
+ } | undefined;
2386
+ } | undefined;
1844
2387
  readonly summaryOperations?: {
1845
2388
  object: string;
1846
2389
  field: string;
1847
- function: "count" | "sum" | "avg" | "min" | "max";
2390
+ function: "min" | "max" | "count" | "sum" | "avg";
1848
2391
  } | undefined;
1849
2392
  readonly language?: string | undefined;
1850
- readonly theme?: string | undefined;
1851
2393
  readonly lineNumbers?: boolean | undefined;
1852
2394
  readonly maxRating?: number | undefined;
1853
2395
  readonly allowHalf?: boolean | undefined;
@@ -1866,7 +2408,7 @@ declare const AiConversationObject: Omit<{
1866
2408
  readonly allowScanning?: boolean | undefined;
1867
2409
  readonly currencyConfig?: {
1868
2410
  precision: number;
1869
- currencyMode: "dynamic" | "fixed";
2411
+ currencyMode: "fixed" | "dynamic";
1870
2412
  defaultCurrency: string;
1871
2413
  } | undefined;
1872
2414
  readonly vectorConfig?: {
@@ -1874,7 +2416,7 @@ declare const AiConversationObject: Omit<{
1874
2416
  distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
1875
2417
  normalized: boolean;
1876
2418
  indexed: boolean;
1877
- indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
2419
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
1878
2420
  } | undefined;
1879
2421
  readonly fileAttachmentConfig?: {
1880
2422
  virusScan: boolean;
@@ -1919,7 +2461,7 @@ declare const AiConversationObject: Omit<{
1919
2461
  } | undefined;
1920
2462
  readonly maskingRule?: {
1921
2463
  field: string;
1922
- strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
2464
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
1923
2465
  preserveFormat: boolean;
1924
2466
  preserveLength: boolean;
1925
2467
  pattern?: string | undefined;
@@ -1927,7 +2469,6 @@ declare const AiConversationObject: Omit<{
1927
2469
  exemptRoles?: string[] | undefined;
1928
2470
  } | undefined;
1929
2471
  readonly auditTrail?: boolean | undefined;
1930
- readonly dependencies?: string[] | undefined;
1931
2472
  readonly cached?: {
1932
2473
  enabled: boolean;
1933
2474
  ttl: number;
@@ -1941,8 +2482,15 @@ declare const AiConversationObject: Omit<{
1941
2482
  threshold: number;
1942
2483
  } | undefined;
1943
2484
  } | undefined;
1944
- readonly group?: string | undefined;
1945
- readonly conditionalRequired?: string | undefined;
2485
+ readonly conditionalRequired?: {
2486
+ dialect: "cel" | "js" | "cron" | "template";
2487
+ source?: string | undefined;
2488
+ ast?: unknown;
2489
+ meta?: {
2490
+ rationale?: string | undefined;
2491
+ generatedBy?: string | undefined;
2492
+ } | undefined;
2493
+ } | undefined;
1946
2494
  readonly hidden?: boolean | undefined;
1947
2495
  readonly sortable?: boolean | undefined;
1948
2496
  readonly inlineHelpText?: string | undefined;
@@ -1950,17 +2498,29 @@ declare const AiConversationObject: Omit<{
1950
2498
  readonly caseSensitive?: boolean | undefined;
1951
2499
  readonly autonumberFormat?: string | undefined;
1952
2500
  readonly index?: boolean | undefined;
1953
- readonly externalId?: boolean | undefined;
1954
2501
  readonly type: "datetime";
1955
2502
  };
1956
2503
  readonly updated_at: {
1957
- readonly format?: string | undefined;
1958
- readonly expression?: string | undefined;
1959
2504
  readonly readonly?: boolean | undefined;
1960
- readonly defaultValue?: unknown;
2505
+ readonly format?: string | undefined;
2506
+ readonly options?: {
2507
+ label: string;
2508
+ value: string;
2509
+ color?: string | undefined;
2510
+ default?: boolean | undefined;
2511
+ }[] | undefined;
2512
+ readonly description?: string | undefined;
2513
+ readonly label?: string | undefined;
2514
+ readonly name?: string | undefined;
2515
+ readonly precision?: number | undefined;
2516
+ readonly required?: boolean | undefined;
2517
+ readonly multiple?: boolean | undefined;
2518
+ readonly dependencies?: string[] | undefined;
2519
+ readonly theme?: string | undefined;
2520
+ readonly externalId?: boolean | undefined;
1961
2521
  readonly min?: number | undefined;
1962
2522
  readonly max?: number | undefined;
1963
- readonly name?: string | undefined;
2523
+ readonly group?: string | undefined;
1964
2524
  readonly encryptionConfig?: {
1965
2525
  enabled: boolean;
1966
2526
  algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
@@ -1974,38 +2534,36 @@ declare const AiConversationObject: Omit<{
1974
2534
  autoRotate: boolean;
1975
2535
  } | undefined;
1976
2536
  };
1977
- scope: "table" | "record" | "field" | "database";
2537
+ scope: "record" | "field" | "table" | "database";
1978
2538
  deterministicEncryption: boolean;
1979
2539
  searchableEncryption: boolean;
1980
2540
  } | undefined;
1981
- readonly label?: string | undefined;
1982
- readonly precision?: number | undefined;
1983
- readonly description?: string | undefined;
1984
2541
  readonly columnName?: string | undefined;
1985
- readonly required?: boolean | undefined;
1986
2542
  readonly searchable?: boolean | undefined;
1987
- readonly multiple?: boolean | undefined;
1988
2543
  readonly unique?: boolean | undefined;
2544
+ readonly defaultValue?: unknown;
1989
2545
  readonly maxLength?: number | undefined;
1990
2546
  readonly minLength?: number | undefined;
1991
2547
  readonly scale?: number | undefined;
1992
- readonly options?: {
1993
- label: string;
1994
- value: string;
1995
- color?: string | undefined;
1996
- default?: boolean | undefined;
1997
- }[] | undefined;
1998
2548
  readonly reference?: string | undefined;
1999
2549
  readonly referenceFilters?: string[] | undefined;
2000
2550
  readonly writeRequiresMasterRead?: boolean | undefined;
2001
2551
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
2552
+ readonly expression?: {
2553
+ dialect: "cel" | "js" | "cron" | "template";
2554
+ source?: string | undefined;
2555
+ ast?: unknown;
2556
+ meta?: {
2557
+ rationale?: string | undefined;
2558
+ generatedBy?: string | undefined;
2559
+ } | undefined;
2560
+ } | undefined;
2002
2561
  readonly summaryOperations?: {
2003
2562
  object: string;
2004
2563
  field: string;
2005
- function: "count" | "sum" | "avg" | "min" | "max";
2564
+ function: "min" | "max" | "count" | "sum" | "avg";
2006
2565
  } | undefined;
2007
2566
  readonly language?: string | undefined;
2008
- readonly theme?: string | undefined;
2009
2567
  readonly lineNumbers?: boolean | undefined;
2010
2568
  readonly maxRating?: number | undefined;
2011
2569
  readonly allowHalf?: boolean | undefined;
@@ -2024,7 +2582,7 @@ declare const AiConversationObject: Omit<{
2024
2582
  readonly allowScanning?: boolean | undefined;
2025
2583
  readonly currencyConfig?: {
2026
2584
  precision: number;
2027
- currencyMode: "dynamic" | "fixed";
2585
+ currencyMode: "fixed" | "dynamic";
2028
2586
  defaultCurrency: string;
2029
2587
  } | undefined;
2030
2588
  readonly vectorConfig?: {
@@ -2032,7 +2590,7 @@ declare const AiConversationObject: Omit<{
2032
2590
  distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
2033
2591
  normalized: boolean;
2034
2592
  indexed: boolean;
2035
- indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
2593
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
2036
2594
  } | undefined;
2037
2595
  readonly fileAttachmentConfig?: {
2038
2596
  virusScan: boolean;
@@ -2077,7 +2635,7 @@ declare const AiConversationObject: Omit<{
2077
2635
  } | undefined;
2078
2636
  readonly maskingRule?: {
2079
2637
  field: string;
2080
- strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
2638
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
2081
2639
  preserveFormat: boolean;
2082
2640
  preserveLength: boolean;
2083
2641
  pattern?: string | undefined;
@@ -2085,7 +2643,6 @@ declare const AiConversationObject: Omit<{
2085
2643
  exemptRoles?: string[] | undefined;
2086
2644
  } | undefined;
2087
2645
  readonly auditTrail?: boolean | undefined;
2088
- readonly dependencies?: string[] | undefined;
2089
2646
  readonly cached?: {
2090
2647
  enabled: boolean;
2091
2648
  ttl: number;
@@ -2099,8 +2656,15 @@ declare const AiConversationObject: Omit<{
2099
2656
  threshold: number;
2100
2657
  } | undefined;
2101
2658
  } | undefined;
2102
- readonly group?: string | undefined;
2103
- readonly conditionalRequired?: string | undefined;
2659
+ readonly conditionalRequired?: {
2660
+ dialect: "cel" | "js" | "cron" | "template";
2661
+ source?: string | undefined;
2662
+ ast?: unknown;
2663
+ meta?: {
2664
+ rationale?: string | undefined;
2665
+ generatedBy?: string | undefined;
2666
+ } | undefined;
2667
+ } | undefined;
2104
2668
  readonly hidden?: boolean | undefined;
2105
2669
  readonly sortable?: boolean | undefined;
2106
2670
  readonly inlineHelpText?: string | undefined;
@@ -2108,7 +2672,6 @@ declare const AiConversationObject: Omit<{
2108
2672
  readonly caseSensitive?: boolean | undefined;
2109
2673
  readonly autonumberFormat?: string | undefined;
2110
2674
  readonly index?: boolean | undefined;
2111
- readonly externalId?: boolean | undefined;
2112
2675
  readonly type: "datetime";
2113
2676
  };
2114
2677
  };
@@ -2144,7 +2707,7 @@ declare const AiMessageObject: Omit<{
2144
2707
  abstract: boolean;
2145
2708
  datasource: string;
2146
2709
  fields: Record<string, {
2147
- type: "number" | "boolean" | "file" | "text" | "json" | "code" | "avatar" | "vector" | "date" | "tags" | "lookup" | "url" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "datetime" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "master_detail" | "tree" | "image" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress";
2710
+ type: "number" | "boolean" | "file" | "text" | "json" | "code" | "avatar" | "vector" | "date" | "tags" | "datetime" | "signature" | "progress" | "url" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "color" | "rating" | "slider" | "qrcode";
2148
2711
  required: boolean;
2149
2712
  searchable: boolean;
2150
2713
  multiple: boolean;
@@ -2177,11 +2740,27 @@ declare const AiMessageObject: Omit<{
2177
2740
  reference?: string | undefined;
2178
2741
  referenceFilters?: string[] | undefined;
2179
2742
  writeRequiresMasterRead?: boolean | undefined;
2180
- expression?: string | undefined;
2743
+ expression?: {
2744
+ dialect: "cel" | "js" | "cron" | "template";
2745
+ source?: string | undefined;
2746
+ ast?: unknown;
2747
+ meta?: {
2748
+ rationale?: string | undefined;
2749
+ generatedBy?: string | undefined;
2750
+ } | undefined;
2751
+ } | {
2752
+ dialect: "cel" | "js" | "cron" | "template";
2753
+ source?: string | undefined;
2754
+ ast?: unknown;
2755
+ meta?: {
2756
+ rationale?: string | undefined;
2757
+ generatedBy?: string | undefined;
2758
+ } | undefined;
2759
+ } | undefined;
2181
2760
  summaryOperations?: {
2182
2761
  object: string;
2183
2762
  field: string;
2184
- function: "count" | "sum" | "avg" | "min" | "max";
2763
+ function: "min" | "max" | "count" | "sum" | "avg";
2185
2764
  } | undefined;
2186
2765
  language?: string | undefined;
2187
2766
  theme?: string | undefined;
@@ -2267,7 +2846,7 @@ declare const AiMessageObject: Omit<{
2267
2846
  autoRotate: boolean;
2268
2847
  } | undefined;
2269
2848
  };
2270
- scope: "database" | "field" | "record" | "table";
2849
+ scope: "field" | "database" | "record" | "table";
2271
2850
  deterministicEncryption: boolean;
2272
2851
  searchableEncryption: boolean;
2273
2852
  } | undefined;
@@ -2295,7 +2874,23 @@ declare const AiMessageObject: Omit<{
2295
2874
  } | undefined;
2296
2875
  } | undefined;
2297
2876
  group?: string | undefined;
2298
- conditionalRequired?: string | undefined;
2877
+ conditionalRequired?: {
2878
+ dialect: "cel" | "js" | "cron" | "template";
2879
+ source?: string | undefined;
2880
+ ast?: unknown;
2881
+ meta?: {
2882
+ rationale?: string | undefined;
2883
+ generatedBy?: string | undefined;
2884
+ } | undefined;
2885
+ } | {
2886
+ dialect: "cel" | "js" | "cron" | "template";
2887
+ source?: string | undefined;
2888
+ ast?: unknown;
2889
+ meta?: {
2890
+ rationale?: string | undefined;
2891
+ generatedBy?: string | undefined;
2892
+ } | undefined;
2893
+ } | undefined;
2299
2894
  inlineHelpText?: string | undefined;
2300
2895
  trackFeedHistory?: boolean | undefined;
2301
2896
  caseSensitive?: boolean | undefined;
@@ -2305,9 +2900,13 @@ declare const AiMessageObject: Omit<{
2305
2900
  pluralLabel?: string | undefined;
2306
2901
  description?: string | undefined;
2307
2902
  icon?: string | undefined;
2308
- namespace?: string | undefined;
2309
2903
  tags?: string[] | undefined;
2310
- tableName?: string | undefined;
2904
+ managedBy?: "system" | "better-auth" | "platform" | undefined;
2905
+ systemFields?: false | {
2906
+ tenant?: boolean | undefined;
2907
+ owner?: boolean | undefined;
2908
+ audit?: boolean | undefined;
2909
+ } | undefined;
2311
2910
  indexes?: {
2312
2911
  fields: string[];
2313
2912
  type: "hash" | "btree" | "gin" | "gist" | "fulltext";
@@ -2315,9 +2914,33 @@ declare const AiMessageObject: Omit<{
2315
2914
  name?: string | undefined;
2316
2915
  partial?: string | undefined;
2317
2916
  }[] | undefined;
2917
+ fieldGroups?: {
2918
+ key: string;
2919
+ label: string;
2920
+ defaultExpanded: boolean;
2921
+ icon?: string | undefined;
2922
+ description?: string | undefined;
2923
+ visibleOn?: {
2924
+ dialect: "cel" | "js" | "cron" | "template";
2925
+ source?: string | undefined;
2926
+ ast?: unknown;
2927
+ meta?: {
2928
+ rationale?: string | undefined;
2929
+ generatedBy?: string | undefined;
2930
+ } | undefined;
2931
+ } | {
2932
+ dialect: "cel" | "js" | "cron" | "template";
2933
+ source?: string | undefined;
2934
+ ast?: unknown;
2935
+ meta?: {
2936
+ rationale?: string | undefined;
2937
+ generatedBy?: string | undefined;
2938
+ } | undefined;
2939
+ } | undefined;
2940
+ }[] | undefined;
2318
2941
  tenancy?: {
2319
2942
  enabled: boolean;
2320
- strategy: "shared" | "isolated" | "hybrid";
2943
+ strategy: "hybrid" | "shared" | "isolated";
2321
2944
  tenantField: string;
2322
2945
  crossTenantAccess: boolean;
2323
2946
  } | undefined;
@@ -2334,13 +2957,13 @@ declare const AiMessageObject: Omit<{
2334
2957
  } | undefined;
2335
2958
  partitioning?: {
2336
2959
  enabled: boolean;
2337
- strategy: "hash" | "range" | "list";
2960
+ strategy: "hash" | "list" | "range";
2338
2961
  key: string;
2339
2962
  interval?: string | undefined;
2340
2963
  } | undefined;
2341
2964
  cdc?: {
2342
2965
  enabled: boolean;
2343
- events: ("update" | "delete" | "insert")[];
2966
+ events: ("delete" | "update" | "insert")[];
2344
2967
  destination: string;
2345
2968
  } | undefined;
2346
2969
  validations?: _objectstack_spec_data.BaseValidationRuleShape[] | undefined;
@@ -2380,7 +3003,23 @@ declare const AiMessageObject: Omit<{
2380
3003
  displayFormat?: string | undefined;
2381
3004
  startNumber?: number | undefined;
2382
3005
  } | undefined;
2383
- titleFormat?: string | undefined;
3006
+ titleFormat?: {
3007
+ dialect: "cel" | "js" | "cron" | "template";
3008
+ source?: string | undefined;
3009
+ ast?: unknown;
3010
+ meta?: {
3011
+ rationale?: string | undefined;
3012
+ generatedBy?: string | undefined;
3013
+ } | undefined;
3014
+ } | {
3015
+ dialect: "cel" | "js" | "cron" | "template";
3016
+ source?: string | undefined;
3017
+ ast?: unknown;
3018
+ meta?: {
3019
+ rationale?: string | undefined;
3020
+ generatedBy?: string | undefined;
3021
+ } | undefined;
3022
+ } | undefined;
2384
3023
  compactLayout?: string[] | undefined;
2385
3024
  search?: {
2386
3025
  fields: string[];
@@ -2397,7 +3036,7 @@ declare const AiMessageObject: Omit<{
2397
3036
  trash: boolean;
2398
3037
  mru: boolean;
2399
3038
  clone: boolean;
2400
- apiMethods?: ("search" | "upsert" | "list" | "update" | "delete" | "history" | "get" | "create" | "bulk" | "aggregate" | "restore" | "purge" | "import" | "export")[] | undefined;
3039
+ apiMethods?: ("search" | "upsert" | "list" | "get" | "delete" | "update" | "history" | "create" | "bulk" | "aggregate" | "restore" | "purge" | "import" | "export")[] | undefined;
2401
3040
  } | undefined;
2402
3041
  recordTypes?: string[] | undefined;
2403
3042
  sharingModel?: "private" | "full" | "read" | "read_write" | undefined;
@@ -2412,11 +3051,21 @@ declare const AiMessageObject: Omit<{
2412
3051
  locations?: ("list_toolbar" | "list_item" | "record_header" | "record_more" | "record_related" | "global_nav")[] | undefined;
2413
3052
  component?: "action:button" | "action:icon" | "action:menu" | "action:group" | undefined;
2414
3053
  target?: string | undefined;
3054
+ body?: {
3055
+ language: "expression";
3056
+ source: string;
3057
+ } | {
3058
+ language: "js";
3059
+ source: string;
3060
+ capabilities: ("api.read" | "api.write" | "crypto.uuid" | "crypto.hash" | "log")[];
3061
+ timeoutMs?: number | undefined;
3062
+ memoryMb?: number | undefined;
3063
+ } | undefined;
2415
3064
  execute?: string | undefined;
2416
3065
  params?: {
2417
3066
  name: string;
2418
3067
  label: string;
2419
- type: "number" | "boolean" | "date" | "lookup" | "file" | "url" | "json" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "datetime" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "code" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress" | "tags" | "vector";
3068
+ type: "number" | "boolean" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "tags" | "vector";
2420
3069
  required: boolean;
2421
3070
  options?: {
2422
3071
  label: string;
@@ -2426,8 +3075,24 @@ declare const AiMessageObject: Omit<{
2426
3075
  variant?: "link" | "primary" | "secondary" | "danger" | "ghost" | undefined;
2427
3076
  confirmText?: string | undefined;
2428
3077
  successMessage?: string | undefined;
2429
- visible?: string | undefined;
2430
- disabled?: string | boolean | undefined;
3078
+ visible?: {
3079
+ dialect: "cel" | "js" | "cron" | "template";
3080
+ source?: string | undefined;
3081
+ ast?: unknown;
3082
+ meta?: {
3083
+ rationale?: string | undefined;
3084
+ generatedBy?: string | undefined;
3085
+ } | undefined;
3086
+ } | undefined;
3087
+ disabled?: boolean | {
3088
+ dialect: "cel" | "js" | "cron" | "template";
3089
+ source?: string | undefined;
3090
+ ast?: unknown;
3091
+ meta?: {
3092
+ rationale?: string | undefined;
3093
+ generatedBy?: string | undefined;
3094
+ } | undefined;
3095
+ } | undefined;
2431
3096
  shortcut?: string | undefined;
2432
3097
  bulkEnabled?: boolean | undefined;
2433
3098
  timeout?: number | undefined;
@@ -2438,8 +3103,7 @@ declare const AiMessageObject: Omit<{
2438
3103
  } | undefined;
2439
3104
  }[] | undefined;
2440
3105
  }, "fields"> & Pick<{
2441
- readonly namespace: "ai";
2442
- readonly name: "messages";
3106
+ readonly name: "ai_messages";
2443
3107
  readonly label: "AI Message";
2444
3108
  readonly pluralLabel: "AI Messages";
2445
3109
  readonly icon: "message-circle";
@@ -2447,13 +3111,26 @@ declare const AiMessageObject: Omit<{
2447
3111
  readonly description: "Individual messages within AI conversations";
2448
3112
  readonly fields: {
2449
3113
  readonly id: {
2450
- readonly format?: string | undefined;
2451
- readonly expression?: string | undefined;
2452
3114
  readonly readonly?: boolean | undefined;
2453
- readonly defaultValue?: unknown;
3115
+ readonly format?: string | undefined;
3116
+ readonly options?: {
3117
+ label: string;
3118
+ value: string;
3119
+ color?: string | undefined;
3120
+ default?: boolean | undefined;
3121
+ }[] | undefined;
3122
+ readonly description?: string | undefined;
3123
+ readonly label?: string | undefined;
3124
+ readonly name?: string | undefined;
3125
+ readonly precision?: number | undefined;
3126
+ readonly required?: boolean | undefined;
3127
+ readonly multiple?: boolean | undefined;
3128
+ readonly dependencies?: string[] | undefined;
3129
+ readonly theme?: string | undefined;
3130
+ readonly externalId?: boolean | undefined;
2454
3131
  readonly min?: number | undefined;
2455
3132
  readonly max?: number | undefined;
2456
- readonly name?: string | undefined;
3133
+ readonly group?: string | undefined;
2457
3134
  readonly encryptionConfig?: {
2458
3135
  enabled: boolean;
2459
3136
  algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
@@ -2467,38 +3144,36 @@ declare const AiMessageObject: Omit<{
2467
3144
  autoRotate: boolean;
2468
3145
  } | undefined;
2469
3146
  };
2470
- scope: "table" | "record" | "field" | "database";
3147
+ scope: "record" | "field" | "table" | "database";
2471
3148
  deterministicEncryption: boolean;
2472
3149
  searchableEncryption: boolean;
2473
3150
  } | undefined;
2474
- readonly label?: string | undefined;
2475
- readonly precision?: number | undefined;
2476
- readonly description?: string | undefined;
2477
3151
  readonly columnName?: string | undefined;
2478
- readonly required?: boolean | undefined;
2479
3152
  readonly searchable?: boolean | undefined;
2480
- readonly multiple?: boolean | undefined;
2481
3153
  readonly unique?: boolean | undefined;
3154
+ readonly defaultValue?: unknown;
2482
3155
  readonly maxLength?: number | undefined;
2483
3156
  readonly minLength?: number | undefined;
2484
3157
  readonly scale?: number | undefined;
2485
- readonly options?: {
2486
- label: string;
2487
- value: string;
2488
- color?: string | undefined;
2489
- default?: boolean | undefined;
2490
- }[] | undefined;
2491
3158
  readonly reference?: string | undefined;
2492
3159
  readonly referenceFilters?: string[] | undefined;
2493
3160
  readonly writeRequiresMasterRead?: boolean | undefined;
2494
3161
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
3162
+ readonly expression?: {
3163
+ dialect: "cel" | "js" | "cron" | "template";
3164
+ source?: string | undefined;
3165
+ ast?: unknown;
3166
+ meta?: {
3167
+ rationale?: string | undefined;
3168
+ generatedBy?: string | undefined;
3169
+ } | undefined;
3170
+ } | undefined;
2495
3171
  readonly summaryOperations?: {
2496
3172
  object: string;
2497
3173
  field: string;
2498
- function: "count" | "sum" | "avg" | "min" | "max";
3174
+ function: "min" | "max" | "count" | "sum" | "avg";
2499
3175
  } | undefined;
2500
3176
  readonly language?: string | undefined;
2501
- readonly theme?: string | undefined;
2502
3177
  readonly lineNumbers?: boolean | undefined;
2503
3178
  readonly maxRating?: number | undefined;
2504
3179
  readonly allowHalf?: boolean | undefined;
@@ -2517,7 +3192,7 @@ declare const AiMessageObject: Omit<{
2517
3192
  readonly allowScanning?: boolean | undefined;
2518
3193
  readonly currencyConfig?: {
2519
3194
  precision: number;
2520
- currencyMode: "dynamic" | "fixed";
3195
+ currencyMode: "fixed" | "dynamic";
2521
3196
  defaultCurrency: string;
2522
3197
  } | undefined;
2523
3198
  readonly vectorConfig?: {
@@ -2525,7 +3200,7 @@ declare const AiMessageObject: Omit<{
2525
3200
  distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
2526
3201
  normalized: boolean;
2527
3202
  indexed: boolean;
2528
- indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
3203
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
2529
3204
  } | undefined;
2530
3205
  readonly fileAttachmentConfig?: {
2531
3206
  virusScan: boolean;
@@ -2570,7 +3245,7 @@ declare const AiMessageObject: Omit<{
2570
3245
  } | undefined;
2571
3246
  readonly maskingRule?: {
2572
3247
  field: string;
2573
- strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
3248
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
2574
3249
  preserveFormat: boolean;
2575
3250
  preserveLength: boolean;
2576
3251
  pattern?: string | undefined;
@@ -2578,7 +3253,6 @@ declare const AiMessageObject: Omit<{
2578
3253
  exemptRoles?: string[] | undefined;
2579
3254
  } | undefined;
2580
3255
  readonly auditTrail?: boolean | undefined;
2581
- readonly dependencies?: string[] | undefined;
2582
3256
  readonly cached?: {
2583
3257
  enabled: boolean;
2584
3258
  ttl: number;
@@ -2592,8 +3266,15 @@ declare const AiMessageObject: Omit<{
2592
3266
  threshold: number;
2593
3267
  } | undefined;
2594
3268
  } | undefined;
2595
- readonly group?: string | undefined;
2596
- readonly conditionalRequired?: string | undefined;
3269
+ readonly conditionalRequired?: {
3270
+ dialect: "cel" | "js" | "cron" | "template";
3271
+ source?: string | undefined;
3272
+ ast?: unknown;
3273
+ meta?: {
3274
+ rationale?: string | undefined;
3275
+ generatedBy?: string | undefined;
3276
+ } | undefined;
3277
+ } | undefined;
2597
3278
  readonly hidden?: boolean | undefined;
2598
3279
  readonly sortable?: boolean | undefined;
2599
3280
  readonly inlineHelpText?: string | undefined;
@@ -2601,17 +3282,29 @@ declare const AiMessageObject: Omit<{
2601
3282
  readonly caseSensitive?: boolean | undefined;
2602
3283
  readonly autonumberFormat?: string | undefined;
2603
3284
  readonly index?: boolean | undefined;
2604
- readonly externalId?: boolean | undefined;
2605
3285
  readonly type: "text";
2606
3286
  };
2607
3287
  readonly conversation_id: {
2608
- readonly format?: string | undefined;
2609
- readonly expression?: string | undefined;
2610
3288
  readonly readonly?: boolean | undefined;
2611
- readonly defaultValue?: unknown;
3289
+ readonly format?: string | undefined;
3290
+ readonly options?: {
3291
+ label: string;
3292
+ value: string;
3293
+ color?: string | undefined;
3294
+ default?: boolean | undefined;
3295
+ }[] | undefined;
3296
+ readonly description?: string | undefined;
3297
+ readonly label?: string | undefined;
3298
+ readonly name?: string | undefined;
3299
+ readonly precision?: number | undefined;
3300
+ readonly required?: boolean | undefined;
3301
+ readonly multiple?: boolean | undefined;
3302
+ readonly dependencies?: string[] | undefined;
3303
+ readonly theme?: string | undefined;
3304
+ readonly externalId?: boolean | undefined;
2612
3305
  readonly min?: number | undefined;
2613
3306
  readonly max?: number | undefined;
2614
- readonly name?: string | undefined;
3307
+ readonly group?: string | undefined;
2615
3308
  readonly encryptionConfig?: {
2616
3309
  enabled: boolean;
2617
3310
  algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
@@ -2625,38 +3318,36 @@ declare const AiMessageObject: Omit<{
2625
3318
  autoRotate: boolean;
2626
3319
  } | undefined;
2627
3320
  };
2628
- scope: "table" | "record" | "field" | "database";
3321
+ scope: "record" | "field" | "table" | "database";
2629
3322
  deterministicEncryption: boolean;
2630
3323
  searchableEncryption: boolean;
2631
3324
  } | undefined;
2632
- readonly label?: string | undefined;
2633
- readonly precision?: number | undefined;
2634
- readonly description?: string | undefined;
2635
3325
  readonly columnName?: string | undefined;
2636
- readonly required?: boolean | undefined;
2637
3326
  readonly searchable?: boolean | undefined;
2638
- readonly multiple?: boolean | undefined;
2639
3327
  readonly unique?: boolean | undefined;
3328
+ readonly defaultValue?: unknown;
2640
3329
  readonly maxLength?: number | undefined;
2641
3330
  readonly minLength?: number | undefined;
2642
3331
  readonly scale?: number | undefined;
2643
- readonly options?: {
2644
- label: string;
2645
- value: string;
2646
- color?: string | undefined;
2647
- default?: boolean | undefined;
2648
- }[] | undefined;
2649
- readonly reference?: string | undefined;
3332
+ reference: string;
2650
3333
  readonly referenceFilters?: string[] | undefined;
2651
3334
  readonly writeRequiresMasterRead?: boolean | undefined;
2652
3335
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
3336
+ readonly expression?: {
3337
+ dialect: "cel" | "js" | "cron" | "template";
3338
+ source?: string | undefined;
3339
+ ast?: unknown;
3340
+ meta?: {
3341
+ rationale?: string | undefined;
3342
+ generatedBy?: string | undefined;
3343
+ } | undefined;
3344
+ } | undefined;
2653
3345
  readonly summaryOperations?: {
2654
3346
  object: string;
2655
3347
  field: string;
2656
- function: "count" | "sum" | "avg" | "min" | "max";
3348
+ function: "min" | "max" | "count" | "sum" | "avg";
2657
3349
  } | undefined;
2658
3350
  readonly language?: string | undefined;
2659
- readonly theme?: string | undefined;
2660
3351
  readonly lineNumbers?: boolean | undefined;
2661
3352
  readonly maxRating?: number | undefined;
2662
3353
  readonly allowHalf?: boolean | undefined;
@@ -2675,7 +3366,7 @@ declare const AiMessageObject: Omit<{
2675
3366
  readonly allowScanning?: boolean | undefined;
2676
3367
  readonly currencyConfig?: {
2677
3368
  precision: number;
2678
- currencyMode: "dynamic" | "fixed";
3369
+ currencyMode: "fixed" | "dynamic";
2679
3370
  defaultCurrency: string;
2680
3371
  } | undefined;
2681
3372
  readonly vectorConfig?: {
@@ -2683,7 +3374,7 @@ declare const AiMessageObject: Omit<{
2683
3374
  distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
2684
3375
  normalized: boolean;
2685
3376
  indexed: boolean;
2686
- indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
3377
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
2687
3378
  } | undefined;
2688
3379
  readonly fileAttachmentConfig?: {
2689
3380
  virusScan: boolean;
@@ -2728,7 +3419,7 @@ declare const AiMessageObject: Omit<{
2728
3419
  } | undefined;
2729
3420
  readonly maskingRule?: {
2730
3421
  field: string;
2731
- strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
3422
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
2732
3423
  preserveFormat: boolean;
2733
3424
  preserveLength: boolean;
2734
3425
  pattern?: string | undefined;
@@ -2736,7 +3427,6 @@ declare const AiMessageObject: Omit<{
2736
3427
  exemptRoles?: string[] | undefined;
2737
3428
  } | undefined;
2738
3429
  readonly auditTrail?: boolean | undefined;
2739
- readonly dependencies?: string[] | undefined;
2740
3430
  readonly cached?: {
2741
3431
  enabled: boolean;
2742
3432
  ttl: number;
@@ -2750,8 +3440,15 @@ declare const AiMessageObject: Omit<{
2750
3440
  threshold: number;
2751
3441
  } | undefined;
2752
3442
  } | undefined;
2753
- readonly group?: string | undefined;
2754
- readonly conditionalRequired?: string | undefined;
3443
+ readonly conditionalRequired?: {
3444
+ dialect: "cel" | "js" | "cron" | "template";
3445
+ source?: string | undefined;
3446
+ ast?: unknown;
3447
+ meta?: {
3448
+ rationale?: string | undefined;
3449
+ generatedBy?: string | undefined;
3450
+ } | undefined;
3451
+ } | undefined;
2755
3452
  readonly hidden?: boolean | undefined;
2756
3453
  readonly sortable?: boolean | undefined;
2757
3454
  readonly inlineHelpText?: string | undefined;
@@ -2759,17 +3456,29 @@ declare const AiMessageObject: Omit<{
2759
3456
  readonly caseSensitive?: boolean | undefined;
2760
3457
  readonly autonumberFormat?: string | undefined;
2761
3458
  readonly index?: boolean | undefined;
2762
- readonly externalId?: boolean | undefined;
2763
- readonly type: "text";
3459
+ readonly type: "lookup";
2764
3460
  };
2765
3461
  readonly role: {
2766
- readonly format?: string | undefined;
2767
- readonly expression?: string | undefined;
2768
3462
  readonly readonly?: boolean | undefined;
2769
- readonly defaultValue?: unknown;
3463
+ readonly format?: string | undefined;
3464
+ options: {
3465
+ label: string;
3466
+ value: string;
3467
+ color?: string | undefined;
3468
+ default?: boolean | undefined;
3469
+ }[];
3470
+ readonly description?: string | undefined;
3471
+ readonly label?: string | undefined;
3472
+ readonly name?: string | undefined;
3473
+ readonly precision?: number | undefined;
3474
+ readonly required?: boolean | undefined;
3475
+ readonly multiple?: boolean | undefined;
3476
+ readonly dependencies?: string[] | undefined;
3477
+ readonly theme?: string | undefined;
3478
+ readonly externalId?: boolean | undefined;
2770
3479
  readonly min?: number | undefined;
2771
3480
  readonly max?: number | undefined;
2772
- readonly name?: string | undefined;
3481
+ readonly group?: string | undefined;
2773
3482
  readonly encryptionConfig?: {
2774
3483
  enabled: boolean;
2775
3484
  algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
@@ -2783,38 +3492,36 @@ declare const AiMessageObject: Omit<{
2783
3492
  autoRotate: boolean;
2784
3493
  } | undefined;
2785
3494
  };
2786
- scope: "table" | "record" | "field" | "database";
3495
+ scope: "record" | "field" | "table" | "database";
2787
3496
  deterministicEncryption: boolean;
2788
3497
  searchableEncryption: boolean;
2789
3498
  } | undefined;
2790
- readonly label?: string | undefined;
2791
- readonly precision?: number | undefined;
2792
- readonly description?: string | undefined;
2793
3499
  readonly columnName?: string | undefined;
2794
- readonly required?: boolean | undefined;
2795
3500
  readonly searchable?: boolean | undefined;
2796
- readonly multiple?: boolean | undefined;
2797
3501
  readonly unique?: boolean | undefined;
3502
+ readonly defaultValue?: unknown;
2798
3503
  readonly maxLength?: number | undefined;
2799
3504
  readonly minLength?: number | undefined;
2800
3505
  readonly scale?: number | undefined;
2801
- options: {
2802
- label: string;
2803
- value: string;
2804
- color?: string | undefined;
2805
- default?: boolean | undefined;
2806
- }[];
2807
3506
  readonly reference?: string | undefined;
2808
3507
  readonly referenceFilters?: string[] | undefined;
2809
3508
  readonly writeRequiresMasterRead?: boolean | undefined;
2810
3509
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
3510
+ readonly expression?: {
3511
+ dialect: "cel" | "js" | "cron" | "template";
3512
+ source?: string | undefined;
3513
+ ast?: unknown;
3514
+ meta?: {
3515
+ rationale?: string | undefined;
3516
+ generatedBy?: string | undefined;
3517
+ } | undefined;
3518
+ } | undefined;
2811
3519
  readonly summaryOperations?: {
2812
3520
  object: string;
2813
3521
  field: string;
2814
- function: "count" | "sum" | "avg" | "min" | "max";
3522
+ function: "min" | "max" | "count" | "sum" | "avg";
2815
3523
  } | undefined;
2816
3524
  readonly language?: string | undefined;
2817
- readonly theme?: string | undefined;
2818
3525
  readonly lineNumbers?: boolean | undefined;
2819
3526
  readonly maxRating?: number | undefined;
2820
3527
  readonly allowHalf?: boolean | undefined;
@@ -2833,7 +3540,7 @@ declare const AiMessageObject: Omit<{
2833
3540
  readonly allowScanning?: boolean | undefined;
2834
3541
  readonly currencyConfig?: {
2835
3542
  precision: number;
2836
- currencyMode: "dynamic" | "fixed";
3543
+ currencyMode: "fixed" | "dynamic";
2837
3544
  defaultCurrency: string;
2838
3545
  } | undefined;
2839
3546
  readonly vectorConfig?: {
@@ -2841,7 +3548,7 @@ declare const AiMessageObject: Omit<{
2841
3548
  distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
2842
3549
  normalized: boolean;
2843
3550
  indexed: boolean;
2844
- indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
3551
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
2845
3552
  } | undefined;
2846
3553
  readonly fileAttachmentConfig?: {
2847
3554
  virusScan: boolean;
@@ -2886,7 +3593,7 @@ declare const AiMessageObject: Omit<{
2886
3593
  } | undefined;
2887
3594
  readonly maskingRule?: {
2888
3595
  field: string;
2889
- strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
3596
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
2890
3597
  preserveFormat: boolean;
2891
3598
  preserveLength: boolean;
2892
3599
  pattern?: string | undefined;
@@ -2894,7 +3601,6 @@ declare const AiMessageObject: Omit<{
2894
3601
  exemptRoles?: string[] | undefined;
2895
3602
  } | undefined;
2896
3603
  readonly auditTrail?: boolean | undefined;
2897
- readonly dependencies?: string[] | undefined;
2898
3604
  readonly cached?: {
2899
3605
  enabled: boolean;
2900
3606
  ttl: number;
@@ -2908,8 +3614,15 @@ declare const AiMessageObject: Omit<{
2908
3614
  threshold: number;
2909
3615
  } | undefined;
2910
3616
  } | undefined;
2911
- readonly group?: string | undefined;
2912
- readonly conditionalRequired?: string | undefined;
3617
+ readonly conditionalRequired?: {
3618
+ dialect: "cel" | "js" | "cron" | "template";
3619
+ source?: string | undefined;
3620
+ ast?: unknown;
3621
+ meta?: {
3622
+ rationale?: string | undefined;
3623
+ generatedBy?: string | undefined;
3624
+ } | undefined;
3625
+ } | undefined;
2913
3626
  readonly hidden?: boolean | undefined;
2914
3627
  readonly sortable?: boolean | undefined;
2915
3628
  readonly inlineHelpText?: string | undefined;
@@ -2917,17 +3630,29 @@ declare const AiMessageObject: Omit<{
2917
3630
  readonly caseSensitive?: boolean | undefined;
2918
3631
  readonly autonumberFormat?: string | undefined;
2919
3632
  readonly index?: boolean | undefined;
2920
- readonly externalId?: boolean | undefined;
2921
3633
  readonly type: "select";
2922
3634
  };
2923
3635
  readonly content: {
2924
- readonly format?: string | undefined;
2925
- readonly expression?: string | undefined;
2926
3636
  readonly readonly?: boolean | undefined;
2927
- readonly defaultValue?: unknown;
3637
+ readonly format?: string | undefined;
3638
+ readonly options?: {
3639
+ label: string;
3640
+ value: string;
3641
+ color?: string | undefined;
3642
+ default?: boolean | undefined;
3643
+ }[] | undefined;
3644
+ readonly description?: string | undefined;
3645
+ readonly label?: string | undefined;
3646
+ readonly name?: string | undefined;
3647
+ readonly precision?: number | undefined;
3648
+ readonly required?: boolean | undefined;
3649
+ readonly multiple?: boolean | undefined;
3650
+ readonly dependencies?: string[] | undefined;
3651
+ readonly theme?: string | undefined;
3652
+ readonly externalId?: boolean | undefined;
2928
3653
  readonly min?: number | undefined;
2929
3654
  readonly max?: number | undefined;
2930
- readonly name?: string | undefined;
3655
+ readonly group?: string | undefined;
2931
3656
  readonly encryptionConfig?: {
2932
3657
  enabled: boolean;
2933
3658
  algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
@@ -2941,38 +3666,36 @@ declare const AiMessageObject: Omit<{
2941
3666
  autoRotate: boolean;
2942
3667
  } | undefined;
2943
3668
  };
2944
- scope: "table" | "record" | "field" | "database";
3669
+ scope: "record" | "field" | "table" | "database";
2945
3670
  deterministicEncryption: boolean;
2946
3671
  searchableEncryption: boolean;
2947
3672
  } | undefined;
2948
- readonly label?: string | undefined;
2949
- readonly precision?: number | undefined;
2950
- readonly description?: string | undefined;
2951
3673
  readonly columnName?: string | undefined;
2952
- readonly required?: boolean | undefined;
2953
3674
  readonly searchable?: boolean | undefined;
2954
- readonly multiple?: boolean | undefined;
2955
3675
  readonly unique?: boolean | undefined;
3676
+ readonly defaultValue?: unknown;
2956
3677
  readonly maxLength?: number | undefined;
2957
3678
  readonly minLength?: number | undefined;
2958
3679
  readonly scale?: number | undefined;
2959
- readonly options?: {
2960
- label: string;
2961
- value: string;
2962
- color?: string | undefined;
2963
- default?: boolean | undefined;
2964
- }[] | undefined;
2965
3680
  readonly reference?: string | undefined;
2966
3681
  readonly referenceFilters?: string[] | undefined;
2967
3682
  readonly writeRequiresMasterRead?: boolean | undefined;
2968
3683
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
3684
+ readonly expression?: {
3685
+ dialect: "cel" | "js" | "cron" | "template";
3686
+ source?: string | undefined;
3687
+ ast?: unknown;
3688
+ meta?: {
3689
+ rationale?: string | undefined;
3690
+ generatedBy?: string | undefined;
3691
+ } | undefined;
3692
+ } | undefined;
2969
3693
  readonly summaryOperations?: {
2970
3694
  object: string;
2971
3695
  field: string;
2972
- function: "count" | "sum" | "avg" | "min" | "max";
3696
+ function: "min" | "max" | "count" | "sum" | "avg";
2973
3697
  } | undefined;
2974
3698
  readonly language?: string | undefined;
2975
- readonly theme?: string | undefined;
2976
3699
  readonly lineNumbers?: boolean | undefined;
2977
3700
  readonly maxRating?: number | undefined;
2978
3701
  readonly allowHalf?: boolean | undefined;
@@ -2991,7 +3714,7 @@ declare const AiMessageObject: Omit<{
2991
3714
  readonly allowScanning?: boolean | undefined;
2992
3715
  readonly currencyConfig?: {
2993
3716
  precision: number;
2994
- currencyMode: "dynamic" | "fixed";
3717
+ currencyMode: "fixed" | "dynamic";
2995
3718
  defaultCurrency: string;
2996
3719
  } | undefined;
2997
3720
  readonly vectorConfig?: {
@@ -2999,7 +3722,7 @@ declare const AiMessageObject: Omit<{
2999
3722
  distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
3000
3723
  normalized: boolean;
3001
3724
  indexed: boolean;
3002
- indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
3725
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
3003
3726
  } | undefined;
3004
3727
  readonly fileAttachmentConfig?: {
3005
3728
  virusScan: boolean;
@@ -3044,7 +3767,7 @@ declare const AiMessageObject: Omit<{
3044
3767
  } | undefined;
3045
3768
  readonly maskingRule?: {
3046
3769
  field: string;
3047
- strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
3770
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
3048
3771
  preserveFormat: boolean;
3049
3772
  preserveLength: boolean;
3050
3773
  pattern?: string | undefined;
@@ -3052,7 +3775,6 @@ declare const AiMessageObject: Omit<{
3052
3775
  exemptRoles?: string[] | undefined;
3053
3776
  } | undefined;
3054
3777
  readonly auditTrail?: boolean | undefined;
3055
- readonly dependencies?: string[] | undefined;
3056
3778
  readonly cached?: {
3057
3779
  enabled: boolean;
3058
3780
  ttl: number;
@@ -3066,8 +3788,15 @@ declare const AiMessageObject: Omit<{
3066
3788
  threshold: number;
3067
3789
  } | undefined;
3068
3790
  } | undefined;
3069
- readonly group?: string | undefined;
3070
- readonly conditionalRequired?: string | undefined;
3791
+ readonly conditionalRequired?: {
3792
+ dialect: "cel" | "js" | "cron" | "template";
3793
+ source?: string | undefined;
3794
+ ast?: unknown;
3795
+ meta?: {
3796
+ rationale?: string | undefined;
3797
+ generatedBy?: string | undefined;
3798
+ } | undefined;
3799
+ } | undefined;
3071
3800
  readonly hidden?: boolean | undefined;
3072
3801
  readonly sortable?: boolean | undefined;
3073
3802
  readonly inlineHelpText?: string | undefined;
@@ -3075,17 +3804,29 @@ declare const AiMessageObject: Omit<{
3075
3804
  readonly caseSensitive?: boolean | undefined;
3076
3805
  readonly autonumberFormat?: string | undefined;
3077
3806
  readonly index?: boolean | undefined;
3078
- readonly externalId?: boolean | undefined;
3079
3807
  readonly type: "textarea";
3080
3808
  };
3081
3809
  readonly tool_calls: {
3082
- readonly format?: string | undefined;
3083
- readonly expression?: string | undefined;
3084
3810
  readonly readonly?: boolean | undefined;
3085
- readonly defaultValue?: unknown;
3811
+ readonly format?: string | undefined;
3812
+ readonly options?: {
3813
+ label: string;
3814
+ value: string;
3815
+ color?: string | undefined;
3816
+ default?: boolean | undefined;
3817
+ }[] | undefined;
3818
+ readonly description?: string | undefined;
3819
+ readonly label?: string | undefined;
3820
+ readonly name?: string | undefined;
3821
+ readonly precision?: number | undefined;
3822
+ readonly required?: boolean | undefined;
3823
+ readonly multiple?: boolean | undefined;
3824
+ readonly dependencies?: string[] | undefined;
3825
+ readonly theme?: string | undefined;
3826
+ readonly externalId?: boolean | undefined;
3086
3827
  readonly min?: number | undefined;
3087
3828
  readonly max?: number | undefined;
3088
- readonly name?: string | undefined;
3829
+ readonly group?: string | undefined;
3089
3830
  readonly encryptionConfig?: {
3090
3831
  enabled: boolean;
3091
3832
  algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
@@ -3099,38 +3840,36 @@ declare const AiMessageObject: Omit<{
3099
3840
  autoRotate: boolean;
3100
3841
  } | undefined;
3101
3842
  };
3102
- scope: "table" | "record" | "field" | "database";
3843
+ scope: "record" | "field" | "table" | "database";
3103
3844
  deterministicEncryption: boolean;
3104
3845
  searchableEncryption: boolean;
3105
3846
  } | undefined;
3106
- readonly label?: string | undefined;
3107
- readonly precision?: number | undefined;
3108
- readonly description?: string | undefined;
3109
3847
  readonly columnName?: string | undefined;
3110
- readonly required?: boolean | undefined;
3111
3848
  readonly searchable?: boolean | undefined;
3112
- readonly multiple?: boolean | undefined;
3113
3849
  readonly unique?: boolean | undefined;
3850
+ readonly defaultValue?: unknown;
3114
3851
  readonly maxLength?: number | undefined;
3115
3852
  readonly minLength?: number | undefined;
3116
3853
  readonly scale?: number | undefined;
3117
- readonly options?: {
3118
- label: string;
3119
- value: string;
3120
- color?: string | undefined;
3121
- default?: boolean | undefined;
3122
- }[] | undefined;
3123
3854
  readonly reference?: string | undefined;
3124
3855
  readonly referenceFilters?: string[] | undefined;
3125
3856
  readonly writeRequiresMasterRead?: boolean | undefined;
3126
3857
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
3858
+ readonly expression?: {
3859
+ dialect: "cel" | "js" | "cron" | "template";
3860
+ source?: string | undefined;
3861
+ ast?: unknown;
3862
+ meta?: {
3863
+ rationale?: string | undefined;
3864
+ generatedBy?: string | undefined;
3865
+ } | undefined;
3866
+ } | undefined;
3127
3867
  readonly summaryOperations?: {
3128
3868
  object: string;
3129
3869
  field: string;
3130
- function: "count" | "sum" | "avg" | "min" | "max";
3870
+ function: "min" | "max" | "count" | "sum" | "avg";
3131
3871
  } | undefined;
3132
3872
  readonly language?: string | undefined;
3133
- readonly theme?: string | undefined;
3134
3873
  readonly lineNumbers?: boolean | undefined;
3135
3874
  readonly maxRating?: number | undefined;
3136
3875
  readonly allowHalf?: boolean | undefined;
@@ -3149,7 +3888,7 @@ declare const AiMessageObject: Omit<{
3149
3888
  readonly allowScanning?: boolean | undefined;
3150
3889
  readonly currencyConfig?: {
3151
3890
  precision: number;
3152
- currencyMode: "dynamic" | "fixed";
3891
+ currencyMode: "fixed" | "dynamic";
3153
3892
  defaultCurrency: string;
3154
3893
  } | undefined;
3155
3894
  readonly vectorConfig?: {
@@ -3157,7 +3896,7 @@ declare const AiMessageObject: Omit<{
3157
3896
  distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
3158
3897
  normalized: boolean;
3159
3898
  indexed: boolean;
3160
- indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
3899
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
3161
3900
  } | undefined;
3162
3901
  readonly fileAttachmentConfig?: {
3163
3902
  virusScan: boolean;
@@ -3202,7 +3941,7 @@ declare const AiMessageObject: Omit<{
3202
3941
  } | undefined;
3203
3942
  readonly maskingRule?: {
3204
3943
  field: string;
3205
- strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
3944
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
3206
3945
  preserveFormat: boolean;
3207
3946
  preserveLength: boolean;
3208
3947
  pattern?: string | undefined;
@@ -3210,7 +3949,6 @@ declare const AiMessageObject: Omit<{
3210
3949
  exemptRoles?: string[] | undefined;
3211
3950
  } | undefined;
3212
3951
  readonly auditTrail?: boolean | undefined;
3213
- readonly dependencies?: string[] | undefined;
3214
3952
  readonly cached?: {
3215
3953
  enabled: boolean;
3216
3954
  ttl: number;
@@ -3224,8 +3962,15 @@ declare const AiMessageObject: Omit<{
3224
3962
  threshold: number;
3225
3963
  } | undefined;
3226
3964
  } | undefined;
3227
- readonly group?: string | undefined;
3228
- readonly conditionalRequired?: string | undefined;
3965
+ readonly conditionalRequired?: {
3966
+ dialect: "cel" | "js" | "cron" | "template";
3967
+ source?: string | undefined;
3968
+ ast?: unknown;
3969
+ meta?: {
3970
+ rationale?: string | undefined;
3971
+ generatedBy?: string | undefined;
3972
+ } | undefined;
3973
+ } | undefined;
3229
3974
  readonly hidden?: boolean | undefined;
3230
3975
  readonly sortable?: boolean | undefined;
3231
3976
  readonly inlineHelpText?: string | undefined;
@@ -3233,17 +3978,29 @@ declare const AiMessageObject: Omit<{
3233
3978
  readonly caseSensitive?: boolean | undefined;
3234
3979
  readonly autonumberFormat?: string | undefined;
3235
3980
  readonly index?: boolean | undefined;
3236
- readonly externalId?: boolean | undefined;
3237
3981
  readonly type: "textarea";
3238
3982
  };
3239
3983
  readonly tool_call_id: {
3240
- readonly format?: string | undefined;
3241
- readonly expression?: string | undefined;
3242
3984
  readonly readonly?: boolean | undefined;
3243
- readonly defaultValue?: unknown;
3985
+ readonly format?: string | undefined;
3986
+ readonly options?: {
3987
+ label: string;
3988
+ value: string;
3989
+ color?: string | undefined;
3990
+ default?: boolean | undefined;
3991
+ }[] | undefined;
3992
+ readonly description?: string | undefined;
3993
+ readonly label?: string | undefined;
3994
+ readonly name?: string | undefined;
3995
+ readonly precision?: number | undefined;
3996
+ readonly required?: boolean | undefined;
3997
+ readonly multiple?: boolean | undefined;
3998
+ readonly dependencies?: string[] | undefined;
3999
+ readonly theme?: string | undefined;
4000
+ readonly externalId?: boolean | undefined;
3244
4001
  readonly min?: number | undefined;
3245
4002
  readonly max?: number | undefined;
3246
- readonly name?: string | undefined;
4003
+ readonly group?: string | undefined;
3247
4004
  readonly encryptionConfig?: {
3248
4005
  enabled: boolean;
3249
4006
  algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
@@ -3257,38 +4014,36 @@ declare const AiMessageObject: Omit<{
3257
4014
  autoRotate: boolean;
3258
4015
  } | undefined;
3259
4016
  };
3260
- scope: "table" | "record" | "field" | "database";
4017
+ scope: "record" | "field" | "table" | "database";
3261
4018
  deterministicEncryption: boolean;
3262
4019
  searchableEncryption: boolean;
3263
4020
  } | undefined;
3264
- readonly label?: string | undefined;
3265
- readonly precision?: number | undefined;
3266
- readonly description?: string | undefined;
3267
4021
  readonly columnName?: string | undefined;
3268
- readonly required?: boolean | undefined;
3269
4022
  readonly searchable?: boolean | undefined;
3270
- readonly multiple?: boolean | undefined;
3271
4023
  readonly unique?: boolean | undefined;
4024
+ readonly defaultValue?: unknown;
3272
4025
  readonly maxLength?: number | undefined;
3273
4026
  readonly minLength?: number | undefined;
3274
4027
  readonly scale?: number | undefined;
3275
- readonly options?: {
3276
- label: string;
3277
- value: string;
3278
- color?: string | undefined;
3279
- default?: boolean | undefined;
3280
- }[] | undefined;
3281
4028
  readonly reference?: string | undefined;
3282
4029
  readonly referenceFilters?: string[] | undefined;
3283
4030
  readonly writeRequiresMasterRead?: boolean | undefined;
3284
4031
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
4032
+ readonly expression?: {
4033
+ dialect: "cel" | "js" | "cron" | "template";
4034
+ source?: string | undefined;
4035
+ ast?: unknown;
4036
+ meta?: {
4037
+ rationale?: string | undefined;
4038
+ generatedBy?: string | undefined;
4039
+ } | undefined;
4040
+ } | undefined;
3285
4041
  readonly summaryOperations?: {
3286
4042
  object: string;
3287
4043
  field: string;
3288
- function: "count" | "sum" | "avg" | "min" | "max";
4044
+ function: "min" | "max" | "count" | "sum" | "avg";
3289
4045
  } | undefined;
3290
4046
  readonly language?: string | undefined;
3291
- readonly theme?: string | undefined;
3292
4047
  readonly lineNumbers?: boolean | undefined;
3293
4048
  readonly maxRating?: number | undefined;
3294
4049
  readonly allowHalf?: boolean | undefined;
@@ -3307,7 +4062,7 @@ declare const AiMessageObject: Omit<{
3307
4062
  readonly allowScanning?: boolean | undefined;
3308
4063
  readonly currencyConfig?: {
3309
4064
  precision: number;
3310
- currencyMode: "dynamic" | "fixed";
4065
+ currencyMode: "fixed" | "dynamic";
3311
4066
  defaultCurrency: string;
3312
4067
  } | undefined;
3313
4068
  readonly vectorConfig?: {
@@ -3315,7 +4070,7 @@ declare const AiMessageObject: Omit<{
3315
4070
  distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
3316
4071
  normalized: boolean;
3317
4072
  indexed: boolean;
3318
- indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
4073
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
3319
4074
  } | undefined;
3320
4075
  readonly fileAttachmentConfig?: {
3321
4076
  virusScan: boolean;
@@ -3360,7 +4115,7 @@ declare const AiMessageObject: Omit<{
3360
4115
  } | undefined;
3361
4116
  readonly maskingRule?: {
3362
4117
  field: string;
3363
- strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
4118
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
3364
4119
  preserveFormat: boolean;
3365
4120
  preserveLength: boolean;
3366
4121
  pattern?: string | undefined;
@@ -3368,7 +4123,6 @@ declare const AiMessageObject: Omit<{
3368
4123
  exemptRoles?: string[] | undefined;
3369
4124
  } | undefined;
3370
4125
  readonly auditTrail?: boolean | undefined;
3371
- readonly dependencies?: string[] | undefined;
3372
4126
  readonly cached?: {
3373
4127
  enabled: boolean;
3374
4128
  ttl: number;
@@ -3382,8 +4136,15 @@ declare const AiMessageObject: Omit<{
3382
4136
  threshold: number;
3383
4137
  } | undefined;
3384
4138
  } | undefined;
3385
- readonly group?: string | undefined;
3386
- readonly conditionalRequired?: string | undefined;
4139
+ readonly conditionalRequired?: {
4140
+ dialect: "cel" | "js" | "cron" | "template";
4141
+ source?: string | undefined;
4142
+ ast?: unknown;
4143
+ meta?: {
4144
+ rationale?: string | undefined;
4145
+ generatedBy?: string | undefined;
4146
+ } | undefined;
4147
+ } | undefined;
3387
4148
  readonly hidden?: boolean | undefined;
3388
4149
  readonly sortable?: boolean | undefined;
3389
4150
  readonly inlineHelpText?: string | undefined;
@@ -3391,17 +4152,29 @@ declare const AiMessageObject: Omit<{
3391
4152
  readonly caseSensitive?: boolean | undefined;
3392
4153
  readonly autonumberFormat?: string | undefined;
3393
4154
  readonly index?: boolean | undefined;
3394
- readonly externalId?: boolean | undefined;
3395
4155
  readonly type: "text";
3396
4156
  };
3397
4157
  readonly created_at: {
3398
- readonly format?: string | undefined;
3399
- readonly expression?: string | undefined;
3400
4158
  readonly readonly?: boolean | undefined;
3401
- readonly defaultValue?: unknown;
4159
+ readonly format?: string | undefined;
4160
+ readonly options?: {
4161
+ label: string;
4162
+ value: string;
4163
+ color?: string | undefined;
4164
+ default?: boolean | undefined;
4165
+ }[] | undefined;
4166
+ readonly description?: string | undefined;
4167
+ readonly label?: string | undefined;
4168
+ readonly name?: string | undefined;
4169
+ readonly precision?: number | undefined;
4170
+ readonly required?: boolean | undefined;
4171
+ readonly multiple?: boolean | undefined;
4172
+ readonly dependencies?: string[] | undefined;
4173
+ readonly theme?: string | undefined;
4174
+ readonly externalId?: boolean | undefined;
3402
4175
  readonly min?: number | undefined;
3403
4176
  readonly max?: number | undefined;
3404
- readonly name?: string | undefined;
4177
+ readonly group?: string | undefined;
3405
4178
  readonly encryptionConfig?: {
3406
4179
  enabled: boolean;
3407
4180
  algorithm: "aes-256-gcm" | "aes-256-cbc" | "chacha20-poly1305";
@@ -3415,38 +4188,36 @@ declare const AiMessageObject: Omit<{
3415
4188
  autoRotate: boolean;
3416
4189
  } | undefined;
3417
4190
  };
3418
- scope: "table" | "record" | "field" | "database";
4191
+ scope: "record" | "field" | "table" | "database";
3419
4192
  deterministicEncryption: boolean;
3420
4193
  searchableEncryption: boolean;
3421
4194
  } | undefined;
3422
- readonly label?: string | undefined;
3423
- readonly precision?: number | undefined;
3424
- readonly description?: string | undefined;
3425
4195
  readonly columnName?: string | undefined;
3426
- readonly required?: boolean | undefined;
3427
4196
  readonly searchable?: boolean | undefined;
3428
- readonly multiple?: boolean | undefined;
3429
4197
  readonly unique?: boolean | undefined;
4198
+ readonly defaultValue?: unknown;
3430
4199
  readonly maxLength?: number | undefined;
3431
4200
  readonly minLength?: number | undefined;
3432
4201
  readonly scale?: number | undefined;
3433
- readonly options?: {
3434
- label: string;
3435
- value: string;
3436
- color?: string | undefined;
3437
- default?: boolean | undefined;
3438
- }[] | undefined;
3439
4202
  readonly reference?: string | undefined;
3440
4203
  readonly referenceFilters?: string[] | undefined;
3441
4204
  readonly writeRequiresMasterRead?: boolean | undefined;
3442
4205
  readonly deleteBehavior?: "set_null" | "cascade" | "restrict" | undefined;
4206
+ readonly expression?: {
4207
+ dialect: "cel" | "js" | "cron" | "template";
4208
+ source?: string | undefined;
4209
+ ast?: unknown;
4210
+ meta?: {
4211
+ rationale?: string | undefined;
4212
+ generatedBy?: string | undefined;
4213
+ } | undefined;
4214
+ } | undefined;
3443
4215
  readonly summaryOperations?: {
3444
4216
  object: string;
3445
4217
  field: string;
3446
- function: "count" | "sum" | "avg" | "min" | "max";
4218
+ function: "min" | "max" | "count" | "sum" | "avg";
3447
4219
  } | undefined;
3448
4220
  readonly language?: string | undefined;
3449
- readonly theme?: string | undefined;
3450
4221
  readonly lineNumbers?: boolean | undefined;
3451
4222
  readonly maxRating?: number | undefined;
3452
4223
  readonly allowHalf?: boolean | undefined;
@@ -3465,7 +4236,7 @@ declare const AiMessageObject: Omit<{
3465
4236
  readonly allowScanning?: boolean | undefined;
3466
4237
  readonly currencyConfig?: {
3467
4238
  precision: number;
3468
- currencyMode: "dynamic" | "fixed";
4239
+ currencyMode: "fixed" | "dynamic";
3469
4240
  defaultCurrency: string;
3470
4241
  } | undefined;
3471
4242
  readonly vectorConfig?: {
@@ -3473,7 +4244,7 @@ declare const AiMessageObject: Omit<{
3473
4244
  distanceMetric: "cosine" | "euclidean" | "dotProduct" | "manhattan";
3474
4245
  normalized: boolean;
3475
4246
  indexed: boolean;
3476
- indexType?: "hnsw" | "ivfflat" | "flat" | undefined;
4247
+ indexType?: "flat" | "hnsw" | "ivfflat" | undefined;
3477
4248
  } | undefined;
3478
4249
  readonly fileAttachmentConfig?: {
3479
4250
  virusScan: boolean;
@@ -3518,7 +4289,7 @@ declare const AiMessageObject: Omit<{
3518
4289
  } | undefined;
3519
4290
  readonly maskingRule?: {
3520
4291
  field: string;
3521
- strategy: "redact" | "partial" | "hash" | "tokenize" | "randomize" | "nullify" | "substitute";
4292
+ strategy: "partial" | "hash" | "redact" | "tokenize" | "randomize" | "nullify" | "substitute";
3522
4293
  preserveFormat: boolean;
3523
4294
  preserveLength: boolean;
3524
4295
  pattern?: string | undefined;
@@ -3526,7 +4297,6 @@ declare const AiMessageObject: Omit<{
3526
4297
  exemptRoles?: string[] | undefined;
3527
4298
  } | undefined;
3528
4299
  readonly auditTrail?: boolean | undefined;
3529
- readonly dependencies?: string[] | undefined;
3530
4300
  readonly cached?: {
3531
4301
  enabled: boolean;
3532
4302
  ttl: number;
@@ -3540,8 +4310,15 @@ declare const AiMessageObject: Omit<{
3540
4310
  threshold: number;
3541
4311
  } | undefined;
3542
4312
  } | undefined;
3543
- readonly group?: string | undefined;
3544
- readonly conditionalRequired?: string | undefined;
4313
+ readonly conditionalRequired?: {
4314
+ dialect: "cel" | "js" | "cron" | "template";
4315
+ source?: string | undefined;
4316
+ ast?: unknown;
4317
+ meta?: {
4318
+ rationale?: string | undefined;
4319
+ generatedBy?: string | undefined;
4320
+ } | undefined;
4321
+ } | undefined;
3545
4322
  readonly hidden?: boolean | undefined;
3546
4323
  readonly sortable?: boolean | undefined;
3547
4324
  readonly inlineHelpText?: string | undefined;
@@ -3549,7 +4326,6 @@ declare const AiMessageObject: Omit<{
3549
4326
  readonly caseSensitive?: boolean | undefined;
3550
4327
  readonly autonumberFormat?: string | undefined;
3551
4328
  readonly index?: boolean | undefined;
3552
- readonly externalId?: boolean | undefined;
3553
4329
  readonly type: "datetime";
3554
4330
  };
3555
4331
  };
@@ -3665,6 +4441,25 @@ declare function buildAIRoutes(aiService: IAIService, conversationService: IAICo
3665
4441
  */
3666
4442
  declare function buildAgentRoutes(aiService: AIService, agentRuntime: AgentRuntime, logger: Logger): RouteDefinition[];
3667
4443
 
4444
+ /**
4445
+ * Build ambient assistant routes — the "single chat entry" pattern
4446
+ * inspired by Claude Code, Salesforce Agentforce, and ServiceNow Now
4447
+ * Assist.
4448
+ *
4449
+ * Unlike `/api/v1/ai/agents/:name/chat`, these endpoints do not require
4450
+ * the caller to pre-select an agent. The default agent for the active
4451
+ * application is resolved automatically from metadata, skills are
4452
+ * filtered by the runtime context, and the LLM decides which tool to
4453
+ * invoke.
4454
+ *
4455
+ * | Method | Path | Description |
4456
+ * |:---|:---|:---|
4457
+ * | GET | /api/v1/ai/assistant | Resolve the active assistant + skills for the given context |
4458
+ * | GET | /api/v1/ai/assistant/skills | List active skills (for slash-command palettes) |
4459
+ * | POST | /api/v1/ai/assistant/chat | Ambient chat against the resolved default agent |
4460
+ */
4461
+ declare function buildAssistantRoutes(aiService: AIService, agentRuntime: AgentRuntime, skillRegistry: SkillRegistry, logger: Logger): RouteDefinition[];
4462
+
3668
4463
  /**
3669
4464
  * Build tool-specific REST routes.
3670
4465
  *
@@ -3675,4 +4470,4 @@ declare function buildAgentRoutes(aiService: AIService, agentRuntime: AgentRunti
3675
4470
  */
3676
4471
  declare function buildToolRoutes(aiService: AIService, logger: Logger): RouteDefinition[];
3677
4472
 
3678
- export { AIService, type AIServiceConfig, AIServicePlugin, type AIServicePluginOptions, type AgentChatContext, AgentRuntime, AiConversationObject, AiMessageObject, DATA_CHAT_AGENT, DATA_TOOL_DEFINITIONS, type DataToolContext, InMemoryConversationService, METADATA_ASSISTANT_AGENT, METADATA_TOOL_DEFINITIONS, MemoryLLMAdapter, type MetadataToolContext, ObjectQLConversationService, type RouteDefinition, type RouteRequest, type RouteResponse, type RouteUserContext, type ToolExecutionResult, type ToolHandler, ToolRegistry, VercelLLMAdapter, type VercelLLMAdapterConfig, addFieldTool, buildAIRoutes, buildAgentRoutes, buildToolRoutes, createObjectTool, deleteFieldTool, describeObjectTool, encodeStreamPart, encodeVercelDataStream, listObjectsTool, modifyFieldTool, registerDataTools, registerMetadataTools };
4473
+ export { AIService, type AIServiceConfig, AIServicePlugin, type AIServicePluginOptions, type AgentChatContext, AgentRuntime, AiConversationObject, AiMessageObject, DATA_CHAT_AGENT, DATA_TOOL_DEFINITIONS, type DataToolContext, type IConversationService, type IPackageRegistry, InMemoryConversationService, METADATA_ASSISTANT_AGENT, METADATA_TOOL_DEFINITIONS, MemoryLLMAdapter, type MetadataToolContext, ObjectQLConversationService, PACKAGE_TOOL_DEFINITIONS, type PackageToolContext, type RouteDefinition, type RouteRequest, type RouteResponse, type RouteUserContext, type SkillContext, SkillRegistry, type SkillSummary, type ToolExecutionResult, type ToolHandler, ToolRegistry, VercelLLMAdapter, type VercelLLMAdapterConfig, addFieldTool, buildAIRoutes, buildAgentRoutes, buildAssistantRoutes, buildToolRoutes, createObjectTool, createPackageTool, deleteFieldTool, describeObjectTool, encodeStreamPart, encodeVercelDataStream, getActivePackageTool, getPackageTool, listObjectsTool, listPackagesTool, modifyFieldTool, registerDataTools, registerMetadataTools, registerPackageTools, setActivePackageTool };