@revealui/contracts 1.0.0

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 (191) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +160 -0
  3. package/dist/a2a/index.d.ts +383 -0
  4. package/dist/a2a/index.d.ts.map +1 -0
  5. package/dist/a2a/index.js +276 -0
  6. package/dist/a2a/index.js.map +1 -0
  7. package/dist/actions/action-validator.d.ts +48 -0
  8. package/dist/actions/action-validator.d.ts.map +1 -0
  9. package/dist/actions/action-validator.js +288 -0
  10. package/dist/actions/action-validator.js.map +1 -0
  11. package/dist/actions/index.d.ts +7 -0
  12. package/dist/actions/index.d.ts.map +1 -0
  13. package/dist/actions/index.js +7 -0
  14. package/dist/actions/index.js.map +1 -0
  15. package/dist/agents/index.d.ts +628 -0
  16. package/dist/agents/index.d.ts.map +1 -0
  17. package/dist/agents/index.js +511 -0
  18. package/dist/agents/index.js.map +1 -0
  19. package/dist/agents/types.d.ts +22 -0
  20. package/dist/agents/types.d.ts.map +1 -0
  21. package/dist/agents/types.js +2 -0
  22. package/dist/agents/types.js.map +1 -0
  23. package/dist/api/auth.d.ts +60 -0
  24. package/dist/api/auth.d.ts.map +1 -0
  25. package/dist/api/auth.js +84 -0
  26. package/dist/api/auth.js.map +1 -0
  27. package/dist/api/chat.d.ts +45 -0
  28. package/dist/api/chat.d.ts.map +1 -0
  29. package/dist/api/chat.js +55 -0
  30. package/dist/api/chat.js.map +1 -0
  31. package/dist/api/gdpr.d.ts +39 -0
  32. package/dist/api/gdpr.d.ts.map +1 -0
  33. package/dist/api/gdpr.js +53 -0
  34. package/dist/api/gdpr.js.map +1 -0
  35. package/dist/cms/collection.d.ts +108 -0
  36. package/dist/cms/collection.d.ts.map +1 -0
  37. package/dist/cms/collection.js +144 -0
  38. package/dist/cms/collection.js.map +1 -0
  39. package/dist/cms/compat.d.ts +128 -0
  40. package/dist/cms/compat.d.ts.map +1 -0
  41. package/dist/cms/compat.js +141 -0
  42. package/dist/cms/compat.js.map +1 -0
  43. package/dist/cms/config-contract.d.ts +278 -0
  44. package/dist/cms/config-contract.d.ts.map +1 -0
  45. package/dist/cms/config-contract.js +220 -0
  46. package/dist/cms/config-contract.js.map +1 -0
  47. package/dist/cms/config.d.ts +351 -0
  48. package/dist/cms/config.d.ts.map +1 -0
  49. package/dist/cms/config.js +50 -0
  50. package/dist/cms/config.js.map +1 -0
  51. package/dist/cms/errors.d.ts +122 -0
  52. package/dist/cms/errors.d.ts.map +1 -0
  53. package/dist/cms/errors.js +163 -0
  54. package/dist/cms/errors.js.map +1 -0
  55. package/dist/cms/extensibility.d.ts +211 -0
  56. package/dist/cms/extensibility.d.ts.map +1 -0
  57. package/dist/cms/extensibility.js +313 -0
  58. package/dist/cms/extensibility.js.map +1 -0
  59. package/dist/cms/field.d.ts +69 -0
  60. package/dist/cms/field.d.ts.map +1 -0
  61. package/dist/cms/field.js +94 -0
  62. package/dist/cms/field.js.map +1 -0
  63. package/dist/cms/functions.d.ts +466 -0
  64. package/dist/cms/functions.d.ts.map +1 -0
  65. package/dist/cms/functions.js +19 -0
  66. package/dist/cms/functions.js.map +1 -0
  67. package/dist/cms/global.d.ts +45 -0
  68. package/dist/cms/global.d.ts.map +1 -0
  69. package/dist/cms/global.js +62 -0
  70. package/dist/cms/global.js.map +1 -0
  71. package/dist/cms/index.d.ts +23 -0
  72. package/dist/cms/index.d.ts.map +1 -0
  73. package/dist/cms/index.js +42 -0
  74. package/dist/cms/index.js.map +1 -0
  75. package/dist/cms/structure.d.ts +1601 -0
  76. package/dist/cms/structure.d.ts.map +1 -0
  77. package/dist/cms/structure.js +757 -0
  78. package/dist/cms/structure.js.map +1 -0
  79. package/dist/content/index.d.ts +1542 -0
  80. package/dist/content/index.d.ts.map +1 -0
  81. package/dist/content/index.js +522 -0
  82. package/dist/content/index.js.map +1 -0
  83. package/dist/database/bridge.d.ts +177 -0
  84. package/dist/database/bridge.d.ts.map +1 -0
  85. package/dist/database/bridge.js +139 -0
  86. package/dist/database/bridge.js.map +1 -0
  87. package/dist/database/index.d.ts +8 -0
  88. package/dist/database/index.d.ts.map +1 -0
  89. package/dist/database/index.js +9 -0
  90. package/dist/database/index.js.map +1 -0
  91. package/dist/database/type-bridge.d.ts +178 -0
  92. package/dist/database/type-bridge.d.ts.map +1 -0
  93. package/dist/database/type-bridge.js +154 -0
  94. package/dist/database/type-bridge.js.map +1 -0
  95. package/dist/entities/agent-context.d.ts +280 -0
  96. package/dist/entities/agent-context.d.ts.map +1 -0
  97. package/dist/entities/agent-context.js +390 -0
  98. package/dist/entities/agent-context.js.map +1 -0
  99. package/dist/entities/agent-memory.d.ts +661 -0
  100. package/dist/entities/agent-memory.d.ts.map +1 -0
  101. package/dist/entities/agent-memory.js +544 -0
  102. package/dist/entities/agent-memory.js.map +1 -0
  103. package/dist/entities/board.d.ts +95 -0
  104. package/dist/entities/board.d.ts.map +1 -0
  105. package/dist/entities/board.js +99 -0
  106. package/dist/entities/board.js.map +1 -0
  107. package/dist/entities/code-provenance.d.ts +270 -0
  108. package/dist/entities/code-provenance.d.ts.map +1 -0
  109. package/dist/entities/code-provenance.js +339 -0
  110. package/dist/entities/code-provenance.js.map +1 -0
  111. package/dist/entities/index.d.ts +22 -0
  112. package/dist/entities/index.d.ts.map +1 -0
  113. package/dist/entities/index.js +22 -0
  114. package/dist/entities/index.js.map +1 -0
  115. package/dist/entities/media.d.ts +485 -0
  116. package/dist/entities/media.d.ts.map +1 -0
  117. package/dist/entities/media.js +606 -0
  118. package/dist/entities/media.js.map +1 -0
  119. package/dist/entities/page-revision.d.ts +390 -0
  120. package/dist/entities/page-revision.d.ts.map +1 -0
  121. package/dist/entities/page-revision.js +406 -0
  122. package/dist/entities/page-revision.js.map +1 -0
  123. package/dist/entities/page.d.ts +2349 -0
  124. package/dist/entities/page.d.ts.map +1 -0
  125. package/dist/entities/page.js +377 -0
  126. package/dist/entities/page.js.map +1 -0
  127. package/dist/entities/post.d.ts +619 -0
  128. package/dist/entities/post.d.ts.map +1 -0
  129. package/dist/entities/post.js +555 -0
  130. package/dist/entities/post.js.map +1 -0
  131. package/dist/entities/price.d.ts +772 -0
  132. package/dist/entities/price.d.ts.map +1 -0
  133. package/dist/entities/price.js +308 -0
  134. package/dist/entities/price.js.map +1 -0
  135. package/dist/entities/product.d.ts +753 -0
  136. package/dist/entities/product.d.ts.map +1 -0
  137. package/dist/entities/product.js +307 -0
  138. package/dist/entities/product.js.map +1 -0
  139. package/dist/entities/session.d.ts +222 -0
  140. package/dist/entities/session.d.ts.map +1 -0
  141. package/dist/entities/session.js +253 -0
  142. package/dist/entities/session.js.map +1 -0
  143. package/dist/entities/site.d.ts +387 -0
  144. package/dist/entities/site.d.ts.map +1 -0
  145. package/dist/entities/site.js +348 -0
  146. package/dist/entities/site.js.map +1 -0
  147. package/dist/entities/ticket-comment.d.ts +49 -0
  148. package/dist/entities/ticket-comment.d.ts.map +1 -0
  149. package/dist/entities/ticket-comment.js +58 -0
  150. package/dist/entities/ticket-comment.js.map +1 -0
  151. package/dist/entities/ticket-label.d.ts +64 -0
  152. package/dist/entities/ticket-label.d.ts.map +1 -0
  153. package/dist/entities/ticket-label.js +77 -0
  154. package/dist/entities/ticket-label.js.map +1 -0
  155. package/dist/entities/ticket.d.ts +204 -0
  156. package/dist/entities/ticket.d.ts.map +1 -0
  157. package/dist/entities/ticket.js +205 -0
  158. package/dist/entities/ticket.js.map +1 -0
  159. package/dist/entities/user.d.ts +336 -0
  160. package/dist/entities/user.d.ts.map +1 -0
  161. package/dist/entities/user.js +255 -0
  162. package/dist/entities/user.js.map +1 -0
  163. package/dist/foundation/contract.d.ts +221 -0
  164. package/dist/foundation/contract.d.ts.map +1 -0
  165. package/dist/foundation/contract.js +133 -0
  166. package/dist/foundation/contract.js.map +1 -0
  167. package/dist/foundation/index.d.ts +7 -0
  168. package/dist/foundation/index.d.ts.map +1 -0
  169. package/dist/foundation/index.js +7 -0
  170. package/dist/foundation/index.js.map +1 -0
  171. package/dist/generated/contracts.d.ts +1514 -0
  172. package/dist/generated/contracts.d.ts.map +1 -0
  173. package/dist/generated/contracts.js +959 -0
  174. package/dist/generated/contracts.js.map +1 -0
  175. package/dist/generated/database.d.ts +48 -0
  176. package/dist/generated/database.d.ts.map +1 -0
  177. package/dist/generated/database.js +17 -0
  178. package/dist/generated/database.js.map +1 -0
  179. package/dist/generated/zod-schemas.d.ts +14793 -0
  180. package/dist/generated/zod-schemas.d.ts.map +1 -0
  181. package/dist/generated/zod-schemas.js +547 -0
  182. package/dist/generated/zod-schemas.js.map +1 -0
  183. package/dist/index.d.ts +50 -0
  184. package/dist/index.d.ts.map +1 -0
  185. package/dist/index.js +81 -0
  186. package/dist/index.js.map +1 -0
  187. package/dist/representation/index.d.ts +304 -0
  188. package/dist/representation/index.d.ts.map +1 -0
  189. package/dist/representation/index.js +280 -0
  190. package/dist/representation/index.js.map +1 -0
  191. package/package.json +117 -0
@@ -0,0 +1,50 @@
1
+ /**
2
+ * @revealui/contracts
3
+ *
4
+ * Unified contracts package for RevealUI - schemas, validation, and type safety across the stack
5
+ *
6
+ * ## Overview
7
+ *
8
+ * This package provides a unified contract system that combines:
9
+ * - Runtime validation using Zod schemas
10
+ * - TypeScript types derived from schemas
11
+ * - Dual representation (human/agent) for entities
12
+ * - Database contract bridges for type-safe DB operations
13
+ * - Action validation against entity constraints
14
+ *
15
+ * ## Package Exports
16
+ *
17
+ * - `@revealui/contracts` - Everything
18
+ * - `@revealui/contracts/foundation` - Core Contract<T> interface
19
+ * - `@revealui/contracts/representation` - Dual representation types
20
+ * - `@revealui/contracts/entities` - User, Site, Page contracts
21
+ * - `@revealui/contracts/content` - Block contracts
22
+ * - `@revealui/contracts/cms` - CMS configuration contracts
23
+ * - `@revealui/contracts/agents` - Agent memory/context contracts
24
+ * - `@revealui/contracts/database` - DB ↔ Contract bridges
25
+ * - `@revealui/contracts/actions` - Action validation
26
+ * - `@revealui/contracts/utilities` - Shared utilities
27
+ *
28
+ * @packageDocumentation
29
+ */
30
+ export { z } from 'zod/v4';
31
+ export { type Contract, type ContractMetadata, type ContractType, type ContractValidationFailure, type ContractValidationResult, type ContractValidationSuccess, type CreateContractOptions, contractRegistry, createContract, } from './foundation/index.js';
32
+ export { type AgentActionDefinition, AgentActionDefinitionSchema, type AgentConstraint, AgentConstraintSchema, type AgentRelation, AgentRelationSchema, type AgentRepresentation, AgentRepresentationSchema, createEmbedding, createTimestamps, DEFAULT_EMBEDDING_DIMENSION, DEFAULT_EMBEDDING_MODEL, type DualEntity, DualEntitySchema, EMBEDDING_DIMENSIONS, type Embedding, type EmbeddingModel, EmbeddingSchema, type HumanRepresentation, HumanRepresentationSchema, incrementVersion, REPRESENTATION_SCHEMA_VERSION, toAgentRepresentation, toHumanRepresentation, updateTimestamp, } from './representation/index.js';
33
+ export { type CreatePageInput, CreatePageInputSchema, computePagePath, createPage, createPageLock, estimateWordCount, getPageBreadcrumbs, isLockedByUser, isPageLocked, PAGE_SCHEMA_VERSION, type Page, type PageLock, PageLockSchema, PageSchema, type PageSeo, PageSeoSchema, type PageStatus, PageStatusSchema, type UpdatePageInput, UpdatePageInputSchema, } from './entities/page.js';
34
+ export { type CreateSiteInput, CreateSiteInputSchema, canAgentEditSite, canUserPerformAction, createSite, SITE_SCHEMA_VERSION, type Site, type SiteCollaborator, SiteCollaboratorSchema, SiteSchema, type SiteSeo, SiteSeoSchema, type SiteSettings, SiteSettingsSchema, type SiteStatus, SiteStatusSchema, type SiteTheme, SiteThemeSchema, type UpdateSiteInput, UpdateSiteInputSchema, } from './entities/site.js';
35
+ export { type CreateUserInput, CreateUserInputSchema, createSession, createUser, type Session, SessionSchema, type UpdateUserInput, UpdateUserInputSchema, USER_SCHEMA_VERSION, type User, type UserPreferences, UserPreferencesSchema, type UserRole, UserRoleSchema, UserSchema, type UserStatus, UserStatusSchema, type UserType, UserTypeSchema, } from './entities/user.js';
36
+ export { type AccordionBlock, AccordionBlockSchema, BLOCK_SCHEMA_VERSION, type Block, type BlockMeta, BlockMetaSchema, BlockSchema, type BlockStyle, BlockStyleSchema, type BlockType, BlockTypes, type ButtonBlock, ButtonBlockSchema, type CodeBlock, CodeBlockSchema, type ColumnsBlock, ColumnsBlockSchema, type ComponentBlock, ComponentBlockSchema, countBlocks, createCodeBlock, createHeadingBlock, createImageBlock, createTextBlock, type DividerBlock, DividerBlockSchema, type EmbedBlock, EmbedBlockSchema, type FormBlock, FormBlockSchema, findBlockById, type GridBlock, GridBlockSchema, type HeadingBlock, HeadingBlockSchema, type HtmlBlock, HtmlBlockSchema, type ImageBlock, ImageBlockSchema, isColumnsBlock, isContainerBlock, isGridBlock, isHeadingBlock, isImageBlock, isTextBlock, type ListBlock, ListBlockSchema, type QuoteBlock, QuoteBlockSchema, type SpacerBlock, SpacerBlockSchema, type TableBlock, TableBlockSchema, type TabsBlock, TabsBlockSchema, type TextBlock, TextBlockSchema, type VideoBlock, VideoBlockSchema, walkBlocks, } from './content/index.js';
37
+ export { AGENT_SCHEMA_VERSION, type AgentActionRecord, AgentActionRecordSchema, type AgentContext, AgentContextSchema, type AgentDefinition, AgentDefinitionSchema, type AgentMemory, AgentMemoryContract, AgentMemorySchema, type AgentState, AgentStateSchema, type Conversation, type ConversationMessage, ConversationMessageSchema, ConversationSchema, createAgentContext, createAgentMemory, createConversation, createMessage, type Intent, IntentSchema, type IntentType, IntentTypeSchema, type MemorySource, MemorySourceSchema, type MemoryType, MemoryTypeSchema, type ToolDefinition, ToolDefinitionSchema, type ToolParameter, ToolParameterSchema, } from './agents/index.js';
38
+ export { type A2AAgentCard, A2AAgentCardSchema, type A2AArtifact, A2AArtifactSchema, type A2AAuth, A2AAuthSchema, type A2ACapabilities, A2ACapabilitiesSchema, type A2AJsonRpcRequest, A2AJsonRpcRequestSchema, type A2AJsonRpcResponse, A2AJsonRpcResponseSchema, type A2AMessage, A2AMessageSchema, type A2APart, A2APartSchema, type A2AProvider, A2AProviderSchema, type A2ASendTaskParams, A2ASendTaskParamsSchema, type A2ASkill, A2ASkillSchema, type A2ATask, A2ATaskSchema, type A2ATaskState, A2ATaskStateSchema, type A2ATaskStatus, A2ATaskStatusSchema, agentDefinitionToCard, toolDefinitionToSkill, } from './a2a/index.js';
39
+ export { CollectionContract, type CollectionContractType, isCollectionConfig, parseCollection, validateCollection, } from './cms/collection.js';
40
+ export { type CollectionConfig, type Config, defineCollection, defineField, defineGlobal, type Field, type GlobalConfig, type SanitizedConfig, type TypedCollectionConfig, type TypedGlobalConfig, } from './cms/config.js';
41
+ export { ConfigContract, type ConfigContractType, isConfigStructure, parseConfigStructure, validateConfigStructure, } from './cms/config-contract.js';
42
+ export { ConfigValidationError, safeValidate, type ValidationResult, validateWithErrors, } from './cms/errors.js';
43
+ export * from './cms/index.js';
44
+ export { batchContractToDbInsert, batchDbRowsToContract, type ContractToDrizzleInsert, contractToDbInsert, createContractToDbMapper, createDbRowMapper, createTableContractRegistry, DatabaseContractRegistry, type DrizzleToContract, databaseContractRegistry, dbRowToContract, isDbRowAndContract, isDbRowMatchingContract, safeDbRowToContract, type TableContractMap, type TableInsertType, type TableName, type TableRowType, type TableUpdateType, } from './database/index.js';
45
+ export type { AgentActionsInsert, AgentActionsRow, AgentActionsUpdate, AgentContextsInsert, AgentContextsRow, AgentContextsUpdate, AgentMemoriesInsert, AgentMemoriesRow, AgentMemoriesUpdate, ConversationsInsert, ConversationsRow, ConversationsUpdate, CrdtOperationsInsert, CrdtOperationsRow, CrdtOperationsUpdate, Database, DatabaseInsert, DatabaseRow, DatabaseUpdate, FailedAttemptsInsert, FailedAttemptsRow, FailedAttemptsUpdate, GlobalFooterInsert, GlobalFooterRow, GlobalFooterUpdate, GlobalHeaderInsert, GlobalHeaderRow, GlobalHeaderUpdate, GlobalSettingsInsert, GlobalSettingsRow, GlobalSettingsUpdate, MediaInsert, MediaRow, MediaUpdate, NodeIdMappingsInsert, NodeIdMappingsRow, NodeIdMappingsUpdate, PageRevisionsInsert, PageRevisionsRow, PageRevisionsUpdate, PagesInsert, PagesRow, PagesUpdate, PostsInsert, PostsRow, PostsUpdate, RateLimitsInsert, RateLimitsRow, RateLimitsUpdate, SessionsInsert, SessionsRow, SessionsUpdate, SiteCollaboratorsInsert, SiteCollaboratorsRow, SiteCollaboratorsUpdate, SitesInsert, SitesRow, SitesUpdate, UsersInsert, UsersRow, UsersUpdate, } from './generated/database.js';
46
+ export { type PasswordResetRequest, PasswordResetRequestContract, PasswordResetRequestSchema, type PasswordResetToken, PasswordResetTokenContract, PasswordResetTokenSchema, type SignInRequest, SignInRequestContract, SignInRequestSchema, type SignUpRequest, SignUpRequestContract, SignUpRequestSchema, } from './api/auth.js';
47
+ export { type ChatMessage, ChatMessageSchema, type ChatRequest, ChatRequestContract, ChatRequestSchema, } from './api/chat.js';
48
+ export { type GDPRDeleteRequest, GDPRDeleteRequestContract, GDPRDeleteRequestSchema, type GDPRExportRequest, GDPRExportRequestContract, GDPRExportRequestSchema, } from './api/gdpr.js';
49
+ export { type ActionValidationContext, type ActionValidationError, type ActionValidationFailure, type ActionValidationResult, type ActionValidationSuccess, validateAction, } from './actions/index.js';
50
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js ADDED
@@ -0,0 +1,81 @@
1
+ /**
2
+ * @revealui/contracts
3
+ *
4
+ * Unified contracts package for RevealUI - schemas, validation, and type safety across the stack
5
+ *
6
+ * ## Overview
7
+ *
8
+ * This package provides a unified contract system that combines:
9
+ * - Runtime validation using Zod schemas
10
+ * - TypeScript types derived from schemas
11
+ * - Dual representation (human/agent) for entities
12
+ * - Database contract bridges for type-safe DB operations
13
+ * - Action validation against entity constraints
14
+ *
15
+ * ## Package Exports
16
+ *
17
+ * - `@revealui/contracts` - Everything
18
+ * - `@revealui/contracts/foundation` - Core Contract<T> interface
19
+ * - `@revealui/contracts/representation` - Dual representation types
20
+ * - `@revealui/contracts/entities` - User, Site, Page contracts
21
+ * - `@revealui/contracts/content` - Block contracts
22
+ * - `@revealui/contracts/cms` - CMS configuration contracts
23
+ * - `@revealui/contracts/agents` - Agent memory/context contracts
24
+ * - `@revealui/contracts/database` - DB ↔ Contract bridges
25
+ * - `@revealui/contracts/actions` - Action validation
26
+ * - `@revealui/contracts/utilities` - Shared utilities
27
+ *
28
+ * @packageDocumentation
29
+ */
30
+ // Re-export zod for consumers
31
+ export { z } from 'zod/v4';
32
+ // =============================================================================
33
+ // Foundation
34
+ // =============================================================================
35
+ export { contractRegistry, createContract, } from './foundation/index.js';
36
+ // =============================================================================
37
+ // Representation Layer (Human + Agent)
38
+ // =============================================================================
39
+ export { AgentActionDefinitionSchema, AgentConstraintSchema, AgentRelationSchema, AgentRepresentationSchema, createEmbedding, createTimestamps, DEFAULT_EMBEDDING_DIMENSION, DEFAULT_EMBEDDING_MODEL, DualEntitySchema, EMBEDDING_DIMENSIONS, EmbeddingSchema, HumanRepresentationSchema, incrementVersion, REPRESENTATION_SCHEMA_VERSION, toAgentRepresentation, toHumanRepresentation, updateTimestamp, } from './representation/index.js';
40
+ // =============================================================================
41
+ // Core Entities
42
+ // =============================================================================
43
+ export { CreatePageInputSchema, computePagePath, createPage, createPageLock, estimateWordCount, getPageBreadcrumbs, isLockedByUser, isPageLocked, PAGE_SCHEMA_VERSION, PageLockSchema, PageSchema, PageSeoSchema, PageStatusSchema, UpdatePageInputSchema, } from './entities/page.js';
44
+ export { CreateSiteInputSchema, canAgentEditSite, canUserPerformAction, createSite, SITE_SCHEMA_VERSION, SiteCollaboratorSchema, SiteSchema, SiteSeoSchema, SiteSettingsSchema, SiteStatusSchema, SiteThemeSchema, UpdateSiteInputSchema, } from './entities/site.js';
45
+ export { CreateUserInputSchema, createSession, createUser, SessionSchema, UpdateUserInputSchema, USER_SCHEMA_VERSION, UserPreferencesSchema, UserRoleSchema, UserSchema, UserStatusSchema, UserTypeSchema, } from './entities/user.js';
46
+ // =============================================================================
47
+ // Content Blocks
48
+ // =============================================================================
49
+ export { AccordionBlockSchema, BLOCK_SCHEMA_VERSION, BlockMetaSchema, BlockSchema, BlockStyleSchema, BlockTypes, ButtonBlockSchema, CodeBlockSchema, ColumnsBlockSchema, ComponentBlockSchema, countBlocks, createCodeBlock, createHeadingBlock, createImageBlock, createTextBlock, DividerBlockSchema, EmbedBlockSchema, FormBlockSchema, findBlockById, GridBlockSchema, HeadingBlockSchema, HtmlBlockSchema, ImageBlockSchema, isColumnsBlock, isContainerBlock, isGridBlock, isHeadingBlock, isImageBlock, isTextBlock, ListBlockSchema, QuoteBlockSchema, SpacerBlockSchema, TableBlockSchema, TabsBlockSchema, TextBlockSchema, VideoBlockSchema, walkBlocks, } from './content/index.js';
50
+ // =============================================================================
51
+ // Agents
52
+ // =============================================================================
53
+ export { AGENT_SCHEMA_VERSION, AgentActionRecordSchema, AgentContextSchema, AgentDefinitionSchema, AgentMemoryContract, AgentMemorySchema, AgentStateSchema, ConversationMessageSchema, ConversationSchema, createAgentContext, createAgentMemory, createConversation, createMessage, IntentSchema, IntentTypeSchema, MemorySourceSchema, MemoryTypeSchema, ToolDefinitionSchema, ToolParameterSchema, } from './agents/index.js';
54
+ // =============================================================================
55
+ // A2A Protocol Contracts
56
+ // =============================================================================
57
+ export { A2AAgentCardSchema, A2AArtifactSchema, A2AAuthSchema, A2ACapabilitiesSchema, A2AJsonRpcRequestSchema, A2AJsonRpcResponseSchema, A2AMessageSchema, A2APartSchema, A2AProviderSchema, A2ASendTaskParamsSchema, A2ASkillSchema, A2ATaskSchema, A2ATaskStateSchema, A2ATaskStatusSchema, agentDefinitionToCard, toolDefinitionToSkill, } from './a2a/index.js';
58
+ // =============================================================================
59
+ // CMS Contracts
60
+ // =============================================================================
61
+ export { CollectionContract, isCollectionConfig, parseCollection, validateCollection, } from './cms/collection.js';
62
+ export { defineCollection, defineField, defineGlobal, } from './cms/config.js';
63
+ export { ConfigContract, isConfigStructure, parseConfigStructure, validateConfigStructure, } from './cms/config-contract.js';
64
+ export { ConfigValidationError, safeValidate, validateWithErrors, } from './cms/errors.js';
65
+ // Re-export all CMS contracts from the main CMS index
66
+ export * from './cms/index.js';
67
+ // =============================================================================
68
+ // Database Bridges
69
+ // =============================================================================
70
+ export { batchContractToDbInsert, batchDbRowsToContract, contractToDbInsert, createContractToDbMapper, createDbRowMapper, createTableContractRegistry, DatabaseContractRegistry, databaseContractRegistry, dbRowToContract, isDbRowAndContract, isDbRowMatchingContract, safeDbRowToContract, } from './database/index.js';
71
+ // =============================================================================
72
+ // API Contracts
73
+ // =============================================================================
74
+ export { PasswordResetRequestContract, PasswordResetRequestSchema, PasswordResetTokenContract, PasswordResetTokenSchema, SignInRequestContract, SignInRequestSchema, SignUpRequestContract, SignUpRequestSchema, } from './api/auth.js';
75
+ export { ChatMessageSchema, ChatRequestContract, ChatRequestSchema, } from './api/chat.js';
76
+ export { GDPRDeleteRequestContract, GDPRDeleteRequestSchema, GDPRExportRequestContract, GDPRExportRequestSchema, } from './api/gdpr.js';
77
+ // =============================================================================
78
+ // Actions
79
+ // =============================================================================
80
+ export { validateAction, } from './actions/index.js';
81
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,304 @@
1
+ /**
2
+ * Dual Representation Layer
3
+ *
4
+ * Every entity in RevealUI has two faces:
5
+ * 1. Human: Visual, intuitive, natural language
6
+ * 2. Agent: Structured, typed, optimized for reasoning
7
+ *
8
+ * This module provides the types and utilities for bridging both.
9
+ *
10
+ * IMPORTANT: Agent representations are metadata that describe how agents
11
+ * should interact with entities. The actual enforcement happens in the
12
+ * @revealui/actions and @revealui/ai packages at runtime.
13
+ */
14
+ import { z } from 'zod/v4';
15
+ /**
16
+ * Current schema version for the representation layer.
17
+ * Increment when making breaking changes to schemas.
18
+ */
19
+ export declare const REPRESENTATION_SCHEMA_VERSION = 1;
20
+ /**
21
+ * Supported embedding models and their dimensions.
22
+ * Add new models as needed.
23
+ */
24
+ export declare const EMBEDDING_DIMENSIONS: {
25
+ readonly 'openai-text-embedding-3-small': 1536;
26
+ readonly 'openai-text-embedding-3-large': 3072;
27
+ readonly 'openai-text-embedding-ada-002': 1536;
28
+ readonly 'cohere-embed-english-v3': 1024;
29
+ readonly 'cohere-embed-multilingual-v3': 1024;
30
+ readonly 'voyage-large-2': 1536;
31
+ readonly custom: 0;
32
+ };
33
+ export type EmbeddingModel = keyof typeof EMBEDDING_DIMENSIONS;
34
+ /**
35
+ * Default embedding model and dimension
36
+ */
37
+ export declare const DEFAULT_EMBEDDING_MODEL: EmbeddingModel;
38
+ export declare const DEFAULT_EMBEDDING_DIMENSION: 1536;
39
+ /**
40
+ * Embedding with model information for proper validation
41
+ */
42
+ export declare const EmbeddingSchema: z.ZodObject<{
43
+ model: z.ZodString;
44
+ vector: z.ZodArray<z.ZodNumber>;
45
+ dimension: z.ZodNumber;
46
+ generatedAt: z.ZodString;
47
+ }, z.core.$strip>;
48
+ export type Embedding = z.infer<typeof EmbeddingSchema>;
49
+ /**
50
+ * Creates an embedding with validation
51
+ */
52
+ export declare function createEmbedding(vector: number[], model?: string): Embedding;
53
+ /**
54
+ * How an entity appears to humans
55
+ */
56
+ export declare const HumanRepresentationSchema: z.ZodObject<{
57
+ label: z.ZodString;
58
+ description: z.ZodOptional<z.ZodString>;
59
+ icon: z.ZodOptional<z.ZodString>;
60
+ color: z.ZodOptional<z.ZodString>;
61
+ preview: z.ZodOptional<z.ZodString>;
62
+ suggestions: z.ZodOptional<z.ZodArray<z.ZodString>>;
63
+ helpText: z.ZodOptional<z.ZodString>;
64
+ }, z.core.$strip>;
65
+ export type HumanRepresentation = z.infer<typeof HumanRepresentationSchema>;
66
+ /**
67
+ * A constraint that agents must respect
68
+ */
69
+ export declare const AgentConstraintSchema: z.ZodObject<{
70
+ type: z.ZodEnum<{
71
+ custom: "custom";
72
+ readonly: "readonly";
73
+ pattern: "pattern";
74
+ required: "required";
75
+ immutable: "immutable";
76
+ range: "range";
77
+ dependency: "dependency";
78
+ capability: "capability";
79
+ permission: "permission";
80
+ }>;
81
+ field: z.ZodOptional<z.ZodString>;
82
+ params: z.ZodRecord<z.ZodString, z.ZodUnknown>;
83
+ message: z.ZodOptional<z.ZodString>;
84
+ }, z.core.$strip>;
85
+ export type AgentConstraint = z.infer<typeof AgentConstraintSchema>;
86
+ /**
87
+ * An action that agents can perform on this entity
88
+ */
89
+ export declare const AgentActionDefinitionSchema: z.ZodObject<{
90
+ name: z.ZodString;
91
+ description: z.ZodString;
92
+ params: z.ZodRecord<z.ZodString, z.ZodObject<{
93
+ type: z.ZodString;
94
+ required: z.ZodOptional<z.ZodBoolean>;
95
+ description: z.ZodOptional<z.ZodString>;
96
+ default: z.ZodOptional<z.ZodUnknown>;
97
+ enum: z.ZodOptional<z.ZodArray<z.ZodString>>;
98
+ }, z.core.$strip>>;
99
+ returns: z.ZodOptional<z.ZodObject<{
100
+ type: z.ZodString;
101
+ description: z.ZodOptional<z.ZodString>;
102
+ }, z.core.$strip>>;
103
+ requiredCapabilities: z.ZodOptional<z.ZodArray<z.ZodString>>;
104
+ sideEffects: z.ZodOptional<z.ZodArray<z.ZodString>>;
105
+ destructive: z.ZodOptional<z.ZodBoolean>;
106
+ }, z.core.$strip>;
107
+ export type AgentActionDefinition = z.infer<typeof AgentActionDefinitionSchema>;
108
+ /**
109
+ * A relationship to another entity
110
+ */
111
+ export declare const AgentRelationSchema: z.ZodObject<{
112
+ type: z.ZodEnum<{
113
+ dependency: "dependency";
114
+ parent: "parent";
115
+ child: "child";
116
+ sibling: "sibling";
117
+ reference: "reference";
118
+ related: "related";
119
+ }>;
120
+ targetId: z.ZodString;
121
+ targetType: z.ZodString;
122
+ weight: z.ZodDefault<z.ZodNumber>;
123
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
124
+ }, z.core.$strip>;
125
+ export type AgentRelation = z.infer<typeof AgentRelationSchema>;
126
+ /**
127
+ * How an entity appears to AI agents.
128
+ *
129
+ * NOTE: This is metadata that describes how agents SHOULD interact.
130
+ * Actual enforcement happens at runtime in @revealui/actions.
131
+ */
132
+ export declare const AgentRepresentationSchema: z.ZodObject<{
133
+ semanticType: z.ZodString;
134
+ embedding: z.ZodOptional<z.ZodObject<{
135
+ model: z.ZodString;
136
+ vector: z.ZodArray<z.ZodNumber>;
137
+ dimension: z.ZodNumber;
138
+ generatedAt: z.ZodString;
139
+ }, z.core.$strip>>;
140
+ constraints: z.ZodOptional<z.ZodArray<z.ZodObject<{
141
+ type: z.ZodEnum<{
142
+ custom: "custom";
143
+ readonly: "readonly";
144
+ pattern: "pattern";
145
+ required: "required";
146
+ immutable: "immutable";
147
+ range: "range";
148
+ dependency: "dependency";
149
+ capability: "capability";
150
+ permission: "permission";
151
+ }>;
152
+ field: z.ZodOptional<z.ZodString>;
153
+ params: z.ZodRecord<z.ZodString, z.ZodUnknown>;
154
+ message: z.ZodOptional<z.ZodString>;
155
+ }, z.core.$strip>>>;
156
+ actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
157
+ name: z.ZodString;
158
+ description: z.ZodString;
159
+ params: z.ZodRecord<z.ZodString, z.ZodObject<{
160
+ type: z.ZodString;
161
+ required: z.ZodOptional<z.ZodBoolean>;
162
+ description: z.ZodOptional<z.ZodString>;
163
+ default: z.ZodOptional<z.ZodUnknown>;
164
+ enum: z.ZodOptional<z.ZodArray<z.ZodString>>;
165
+ }, z.core.$strip>>;
166
+ returns: z.ZodOptional<z.ZodObject<{
167
+ type: z.ZodString;
168
+ description: z.ZodOptional<z.ZodString>;
169
+ }, z.core.$strip>>;
170
+ requiredCapabilities: z.ZodOptional<z.ZodArray<z.ZodString>>;
171
+ sideEffects: z.ZodOptional<z.ZodArray<z.ZodString>>;
172
+ destructive: z.ZodOptional<z.ZodBoolean>;
173
+ }, z.core.$strip>>>;
174
+ relations: z.ZodOptional<z.ZodArray<z.ZodObject<{
175
+ type: z.ZodEnum<{
176
+ dependency: "dependency";
177
+ parent: "parent";
178
+ child: "child";
179
+ sibling: "sibling";
180
+ reference: "reference";
181
+ related: "related";
182
+ }>;
183
+ targetId: z.ZodString;
184
+ targetType: z.ZodString;
185
+ weight: z.ZodDefault<z.ZodNumber>;
186
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
187
+ }, z.core.$strip>>>;
188
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
189
+ keywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
190
+ priority: z.ZodOptional<z.ZodNumber>;
191
+ }, z.core.$strip>;
192
+ export type AgentRepresentation = z.infer<typeof AgentRepresentationSchema>;
193
+ /**
194
+ * Base schema for all RevealUI entities with dual representation
195
+ */
196
+ export declare const DualEntitySchema: z.ZodObject<{
197
+ id: z.ZodString;
198
+ version: z.ZodDefault<z.ZodNumber>;
199
+ human: z.ZodOptional<z.ZodObject<{
200
+ label: z.ZodString;
201
+ description: z.ZodOptional<z.ZodString>;
202
+ icon: z.ZodOptional<z.ZodString>;
203
+ color: z.ZodOptional<z.ZodString>;
204
+ preview: z.ZodOptional<z.ZodString>;
205
+ suggestions: z.ZodOptional<z.ZodArray<z.ZodString>>;
206
+ helpText: z.ZodOptional<z.ZodString>;
207
+ }, z.core.$strip>>;
208
+ agent: z.ZodOptional<z.ZodObject<{
209
+ semanticType: z.ZodString;
210
+ embedding: z.ZodOptional<z.ZodObject<{
211
+ model: z.ZodString;
212
+ vector: z.ZodArray<z.ZodNumber>;
213
+ dimension: z.ZodNumber;
214
+ generatedAt: z.ZodString;
215
+ }, z.core.$strip>>;
216
+ constraints: z.ZodOptional<z.ZodArray<z.ZodObject<{
217
+ type: z.ZodEnum<{
218
+ custom: "custom";
219
+ readonly: "readonly";
220
+ pattern: "pattern";
221
+ required: "required";
222
+ immutable: "immutable";
223
+ range: "range";
224
+ dependency: "dependency";
225
+ capability: "capability";
226
+ permission: "permission";
227
+ }>;
228
+ field: z.ZodOptional<z.ZodString>;
229
+ params: z.ZodRecord<z.ZodString, z.ZodUnknown>;
230
+ message: z.ZodOptional<z.ZodString>;
231
+ }, z.core.$strip>>>;
232
+ actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
233
+ name: z.ZodString;
234
+ description: z.ZodString;
235
+ params: z.ZodRecord<z.ZodString, z.ZodObject<{
236
+ type: z.ZodString;
237
+ required: z.ZodOptional<z.ZodBoolean>;
238
+ description: z.ZodOptional<z.ZodString>;
239
+ default: z.ZodOptional<z.ZodUnknown>;
240
+ enum: z.ZodOptional<z.ZodArray<z.ZodString>>;
241
+ }, z.core.$strip>>;
242
+ returns: z.ZodOptional<z.ZodObject<{
243
+ type: z.ZodString;
244
+ description: z.ZodOptional<z.ZodString>;
245
+ }, z.core.$strip>>;
246
+ requiredCapabilities: z.ZodOptional<z.ZodArray<z.ZodString>>;
247
+ sideEffects: z.ZodOptional<z.ZodArray<z.ZodString>>;
248
+ destructive: z.ZodOptional<z.ZodBoolean>;
249
+ }, z.core.$strip>>>;
250
+ relations: z.ZodOptional<z.ZodArray<z.ZodObject<{
251
+ type: z.ZodEnum<{
252
+ dependency: "dependency";
253
+ parent: "parent";
254
+ child: "child";
255
+ sibling: "sibling";
256
+ reference: "reference";
257
+ related: "related";
258
+ }>;
259
+ targetId: z.ZodString;
260
+ targetType: z.ZodString;
261
+ weight: z.ZodDefault<z.ZodNumber>;
262
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
263
+ }, z.core.$strip>>>;
264
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
265
+ keywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
266
+ priority: z.ZodOptional<z.ZodNumber>;
267
+ }, z.core.$strip>>;
268
+ createdAt: z.ZodString;
269
+ updatedAt: z.ZodString;
270
+ }, z.core.$strip>;
271
+ export type DualEntity = z.infer<typeof DualEntitySchema>;
272
+ /**
273
+ * Generates a human representation from structured data
274
+ */
275
+ export declare function toHumanRepresentation(data: {
276
+ name?: string;
277
+ title?: string;
278
+ description?: string;
279
+ type?: string;
280
+ icon?: string;
281
+ color?: string;
282
+ }): HumanRepresentation;
283
+ /**
284
+ * Generates a basic agent representation
285
+ */
286
+ export declare function toAgentRepresentation(semanticType: string, options?: Partial<Omit<AgentRepresentation, 'semanticType'>>): AgentRepresentation;
287
+ /**
288
+ * Creates timestamps for new entities
289
+ */
290
+ export declare function createTimestamps(): {
291
+ createdAt: string;
292
+ updatedAt: string;
293
+ };
294
+ /**
295
+ * Updates the updatedAt timestamp
296
+ */
297
+ export declare function updateTimestamp(): {
298
+ updatedAt: string;
299
+ };
300
+ /**
301
+ * Creates a new version of an entity (for versioned updates)
302
+ */
303
+ export declare function incrementVersion(currentVersion: number): number;
304
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/representation/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAM1B;;;GAGG;AACH,eAAO,MAAM,6BAA6B,IAAI,CAAA;AAM9C;;;GAGG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;CAQvB,CAAA;AAEV,MAAM,MAAM,cAAc,GAAG,MAAM,OAAO,oBAAoB,CAAA;AAE9D;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAAE,cAAgD,CAAA;AACtF,eAAO,MAAM,2BAA2B,MAAgD,CAAA;AAMxF;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;iBAgBxB,CAAA;AAEJ,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAEvD;;GAEG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,EAAE,EAChB,KAAK,GAAE,MAAgC,GACtC,SAAS,CAoBX;AAMD;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;iBAqBpC,CAAA;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAM3E;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;iBAsBhC,CAAA;AAEF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAMnE;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;iBAmCtC,CAAA;AAEF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAM/E;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;iBAsB9B,CAAA;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAM/D;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwBpC,CAAA;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAM3E;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkB3B,CAAA;AAEF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAMzD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,GAAG,mBAAmB,CAQtB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC,GAC3D,mBAAmB,CAKrB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAG3E;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAEvD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAE/D"}