@stndrds/schema 0.1.0-alpha.56 → 0.1.0-alpha.58

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1,6 +1,9 @@
1
- import { D as DateAttribute, U as UserAttribute, a as DocumentAttribute, A as Attribute, S as SystemResource, b as SystemAction, O as ObjectAction, T as TextAttribute, c as TextAreaAttribute, R as RichtextAttribute, d as RichtextFeature, N as NumberAttribute, C as CheckboxAttribute, P as PhoneAttribute, e as CurrencyAttribute, f as Option, g as StatusAttribute, h as SelectAttribute, M as MultiselectAttribute, L as LocationAttribute, F as FileAttribute, i as SingleRelationAttribute, j as MultiRelationAttribute, k as RelationTarget, l as RatingAttribute, m as FormulaAttribute, n as FormulaReturnType, o as RollupAttribute, p as RollupFunction, q as AttributeType, I as InferAttributeValue, r as ObjectDefinition, s as Field, t as AttributeGroupField, G as Group, u as TableTab, V as ViewLayout, v as InverseTableTab, w as ViewDefinition, x as InstanceStatus, y as Tab, z as FilterState, B as SortRule, E as DirectTableTab, W as WorkflowTheme, H as WorkflowConfig, J as SlotMode, K as ConditionGroup, Q as ConditionRule, X as WorkflowNode, Y as WorkflowDefinition, Z as FlowRow, _ as DocumentTemplate } from './runtime-D5MuaVQs.mjs';
2
- export { az as AIBatchQuestion, aA as AIBatchQuestionAnswer, ay as AIBatchQuestionOption, at as AIChatMessage, as as AIChatMessagePart, an as AIChatMessagePartType, aF as AIConversation, hF as AIConversationsRepository, aG as AIMessage, aE as AIMessageAttachment, aj as AIMessageRole, aK as AIProviderMetrics, aw as AIQuestion, ax as AIQuestionAnswer, av as AIQuestionOption, au as AIQuestionType, ak as AIThinkingLevel, aC as AITodoItem, aD as AITodoList, aB as AITodoStatus, am as AIToolCall, aH as AIToolCallRecord, al as AIToolCallStatus, aJ as AIUsageMetrics, hH as AIUsageMetricsRepository, aI as AIUserMemory, hG as AIUserMemoryRepository, d8 as ActivityTab, cm as AddAttribute, hN as AddAttributeInput, bU as AdvancedFilterState, cX as AssignRoleInput, hb as AttributeChange, aN as AttributeGroup, cl as AttributeMap, ch as AttributeSchema, ho as AttributesRepository, a_ as AuditAction, a$ as AuditActorType, b0 as AuditChange, b3 as AuditListOptions, b1 as AuditLogEntry, ht as AuditRepository, aZ as AuditResourceType, j0 as AuditService, b4 as AuditServiceOptions, aO as BaseAttribute, hJ as BaseRepository, hI as BaseService, a5 as BoundingBox, fK as CacheAdapter, fI as CacheKeyType, fL as CacheOptions, dL as CanvasViewport, bG as CheckboxFilterOperator, cL as CompletionStatus, gE as ConditionExecutor, dl as ConditionNode, dB as ConditionOperator, aL as CreateAIMessageInput, b2 as CreateAuditLogInput, hM as CreateCustomObjectInput, jU as CreateDBAttribute, jQ as CreateDBObject, k2 as CreateDBView, k6 as CreateDBWorkflow, kf as CreateDBWorkflowAccessGrant, k9 as CreateDBWorkflowInstance, kc as CreateDBWorkflowInvitation, bp as CreateDocument, b9 as CreateDocumentGenerationTemplate, bt as CreateDocumentSlot, br as CreateDocumentTemplate, bC as CreateFile, e6 as CreateGrantInput, iF as CreateGrantResult, d$ as CreateInvitationInput, e0 as CreateInvitationResult, jX as CreateObjectRecord, cW as CreatePermissionInput, bv as CreateProcessingJob, jf as CreateRecordDocumentInput, jg as CreateRecordDocumentResult, cU as CreateRoleInput, a7 as CreateSignatureInput, d2 as CreateUserProfile, jp as CreateViewInput, iT as CreateWorkflowInput, aT as Currency, bN as CurrencyFilterValue, cq as CustomAttributeValue, d7 as CustomTab, jT as DBAttribute, jP as DBObject, k1 as DBView, k5 as DBWorkflow, ke as DBWorkflowAccessGrant, k8 as DBWorkflowInstance, kb as DBWorkflowInvitation, jG as DEFAULT_LABEL_FALLBACK, es as DEFAULT_THEME, eH as DEFAULT_VALIDATION_MESSAGES, fB as DatabaseAdapter, bH as DateFilterOperator, aQ as DateFormat, aR as DateValue, bi as Document, bf as DocumentAutoProcessing, ah as DocumentData, gF as DocumentExecutor, j3 as DocumentGenerationNotConfiguredError, j4 as DocumentGenerationService, b8 as DocumentGenerationTemplate, hD as DocumentGenerationTemplateListOptions, j2 as DocumentGenerationTemplateNotFoundError, hE as DocumentGenerationTemplatesRepository, hC as DocumentJobsRepository, bx as DocumentListOptions, dm as DocumentNode, j5 as DocumentProcessingConfig, iz as DocumentProcessingHook, iy as DocumentProcessingHookOptions, j6 as DocumentProcessingService, ja as DocumentRenderError, j8 as DocumentRendererOptions, jc as DocumentRendererService, ji as DocumentService, jh as DocumentServiceOptions, bk as DocumentSlot, be as DocumentSlotDefinition, hB as DocumentSlotsRepository, bj as DocumentStatus, by as DocumentTemplateListOptions, jd as DocumentTemplateService, hz as DocumentTemplatesRepository, hA as DocumentsRepository, db as DocumentsTab, cR as EffectivePermissions, gG as EndExecutor, dn as EndNode, g5 as EvaluationResult, g6 as EvaluationTrace, gs as ExecutorCompleteResult, gt as ExecutorContext, gu as ExecutorErrorResult, gB as ExecutorRegistry, gv as ExecutorResult, gw as ExecutorSuccessResult, gx as ExecutorWaitResult, bR as ExtendedFilterRule, cA as ExtractAttributes, cC as ExtractObjectRecord, cD as ExtractObjectRecordWithCustom, cu as ExtractRecord, cw as ExtractRecordInput, cx as ExtractRecordInputStrict, cv as ExtractRecordStrict, cy as ExtractRecordUpdate, cz as ExtractRecordUpdateStrict, bh as ExtractionField, bg as ExtractionMapping, fQ as FetchResult, iR as FieldReadOnlyResult, bB as File, js as FileContent, k0 as FileListOptions, jk as FileService, jj as FileServiceOptions, bA as FileVisibility, hs as FilesRepository, bS as FilterCombinator, bT as FilterGroup, bL as FilterOperator, bQ as FilterRule, bP as FilterValue, c7 as FlowDefinition, c4 as FlowPage, c5 as FlowRelation, c3 as FlowRowField, c2 as FlowSlot, c6 as FlowStatus, da as FlowsTab, ej as FormContextResponse, gH as FormExecutor, ek as FormFieldContext, dp as FormFieldRef, el as FormFieldRow, dq as FormNode, em as FormNodeInfo, d6 as FormTab, fR as FormattedRecord, i8 as FormulaResolverService, i7 as FormulaResolverServiceOptions, gV as FormulaResult, jE as FullSyncOptions, jD as FullSyncResult, ed as GeneratedDocument, cf as GeocodingAdapter, cc as GeocodingAutocompleteParams, ce as GeocodingParams, jl as GeocodingService, cb as GeocodingSuggestion, i0 as GetRelationOptionsParams, j_ as GlobalSearchOptions, j$ as GlobalSearchResultItem, jm as GlobalSearchService, iB as GrantExpiredError, iA as GrantNotFoundError, iC as GrantRevokedError, iE as GrantServiceConfig, fS as GroupedFetchResult, hc as HookContext, hd as HookDefinition, he as HookHandler, hh as HookRegistry, hf as HookType, ae as IdentityVerificationAdapter, cn as InferRecord, ci as InferRecordFromSchema, co as InferRecordInput, cp as InferRecordUpdate, cj as InferRecordWithRequirements, fT as InsertOptions, gZ as InvalidPathError, iO as InvitationAlreadyAcceptedError, iN as InvitationExpiredError, iM as InvitationNotFoundError, iP as InvitationRevokedError, iL as InvitationServiceConfig, e1 as InvitationStatus, d4 as InviteUserInput, fD as JwtVerificationResult, ip as LabelResolver, jY as ListOptions, aU as Location, aV as LocationGranularity, fE as MagicLinkPayload, g_ as MaxDepthExceededError, hj as MockStores, bJ as MultiselectFilterOperator, c0 as NO_VALUE_OPERATORS, b$ as NoValueOperator, gy as NodeExecutor, dM as NodePosition, fP as NoopCacheAdapter, cg as NoopGeocodingAdapter, hg as NoopHookRegistry, d9 as NotesTab, bF as NumberFilterOperator, aP as NumberUnit, b_ as OPERATORS_BY_TYPE, cK as ObjectAttribute, cS as ObjectPermissions, cM as ObjectRecord, hp as ObjectRecordsRepository, hQ as ObjectSchemaService, hP as ObjectSchemaServiceOptions, hn as ObjectsRepository, $ as OcrAdapter, a0 as OcrInput, a1 as OcrOptions, a3 as OcrPage, a2 as OcrResult, a4 as OcrTextBlock, kh as OperationResult, h2 as PathCardinality, h3 as PathSegment, h4 as PathSegmentType, b6 as PdfTemplateField, dT as PendingAction, bb as PendingDocumentRequest, cP as Permission, cN as PermissionScope, jo as PermissionService, jn as PermissionServiceOptions, hu as PermissionsRepository, aS as Phone, bO as PhoneFilterValue, cY as PolicyContext, hl as PolicyRegistry, c_ as PolicyViolationError, bm as ProcessingJob, bo as ProcessingJobStatus, bn as ProcessingJobType, g3 as QueryBuilder, g4 as QueryBuilderOptions, fU as QueryBuilderState, f$ as QueryMultipleResultsError, g0 as QueryNoResultError, hU as QueryOptions, hW as QueryResult, bZ as QueryState, aW as RELATION_TARGET_ANY, cE as RESERVED_ATTRIBUTE_NAMES, en as ReadOnlyReason, ar as ReasoningPartData, je as RecordDocumentsResult, cs as RecordMetadata, cZ as RecordPolicy, hX as RecordQueryService, hT as RecordQueryServiceOptions, i5 as RecordResolverService, hS as RecordService, hR as RecordServiceOptions, fV as RegistryMap, fW as RegistryObjectNames, aX as RelationAttribute, bK as RelationFilterOperator, jN as RelationLabelResolver, h_ as RelationOption, h$ as RelationOptionsResponse, i4 as RelationService, i1 as RelationServiceOptions, hZ as RelationValidationError, hY as RelationValidationResult, bM as RelativeDateValue, j7 as RenderDocumentInput, j9 as RenderDocumentResult, cG as ReservedAttributeName, i2 as ResolveIdsBatchRequest, i3 as ResolveIdsBatchResponse, i6 as ResolvedRelations, iI as ResumeWorkflowInput, cd as ReverseGeocodingParams, cO as Role, ix as RollupCascadeContext, i9 as RollupResult, id as RollupScheduler, ic as RollupSchedulerOptions, ib as RollupService, ia as RollupServiceOptions, g1 as SHORTCUT_TO_FILTER_OPERATOR, cF as SYSTEM_FIELD_NAMES, gi as SchemaContext, hK as SchemaContextAware, hL as SchemaContextAwareRepository, h5 as SchemaResolver, jZ as SearchOptions, hV as SearchQueryOptions, bI as SelectFilterOperator, cJ as SharingMode, fX as ShortcutOperator, a6 as SignatureAdapter, a9 as SignaturePosition, aa as SignatureRequestResult, ad as SignatureStatus, ab as SignatureStatusResult, jv as SignedUrlOptions, a8 as SignerRequest, ac as SignerStatus, bl as SlotStatus, bY as SortDirection, gI as StartExecutor, dr as StartNode, iH as StartWorkflowInput, aM as StatusGroup, jw as StorageAdapter, jb as StorageDownloadNotSupportedError, bz as StorageProvider, jt as StorageUploadInput, ju as StorageUploadResult, jz as SyncOptions, jy as SyncResult, cH as SystemFieldName, ct as SystemFields, cT as SystemPermissions, d5 as TabType, b7 as TemplateSource, gp as TenantContext, ga as TenantContextError, ew as TenantId, bE as TextFilterOperator, ao as TextPartData, ep as ThemeColors, eq as ThemeLogo, er as ThemeTypography, aq as ThinkingPartData, cI as Timestamps, iD as TokenRevokedError, ap as ToolPartData, h9 as TraversalOptions, ha as TraversalResult, ck as TypedAttribute, cB as TypedObjectRecord, jV as UpdateDBAttribute, jR as UpdateDBObject, k3 as UpdateDBView, k7 as UpdateDBWorkflow, kg as UpdateDBWorkflowAccessGrant, ka as UpdateDBWorkflowInstance, kd as UpdateDBWorkflowInvitation, bq as UpdateDocument, ba as UpdateDocumentGenerationTemplate, bu as UpdateDocumentSlot, bs as UpdateDocumentTemplate, bD as UpdateFile, hO as UpdateObjectInput, bw as UpdateProcessingJob, cV as UpdateRoleInput, d3 as UpdateUserProfile, jq as UpdateViewInput, iU as UpdateWorkflowInput, jx as UploadFileInput, jW as UpsertDBAttribute, jS as UpsertDBObject, k4 as UpsertDBView, ex as UserId, d1 as UserProfile, i$ as UserProfileService, i_ as UserProfileServiceOptions, hr as UserProfilesRepository, c$ as UserRole, cQ as UserRoleAssignment, iZ as UserService, d0 as UserStatus, iY as UserValidationError, iX as UserValidationResult, ev as Uuid, eG as ValidationMessages, fr as ValidationResult, b5 as VariableMapping, ai as VerificationCheck, ag as VerificationResult, af as VerifyInput, jr as ViewService, kj as ViewSyncLogger, kk as ViewSyncOptions, ki as ViewSyncResult, hq as ViewsRepository, cr as WithCustomAttributes, e7 as WorkflowAccessGrant, iG as WorkflowAccessGrantService, hy as WorkflowAccessGrantsRepository, eo as WorkflowAccessMode, fF as WorkflowAccessPayload, dU as WorkflowError, ee as WorkflowExecutionContext, dV as WorkflowInstance, iK as WorkflowInstanceService, iJ as WorkflowInstanceServiceOptions, hw as WorkflowInstancesRepository, e2 as WorkflowInvitation, iQ as WorkflowInvitationService, hx as WorkflowInvitationsRepository, fG as WorkflowJwtConfig, fH as WorkflowJwtPayload, fC as WorkflowJwtService, dN as WorkflowLayout, ds as WorkflowNodeType, iS as WorkflowRelationService, iW as WorkflowService, iV as WorkflowServiceOptions, dO as WorkflowSlot, dP as WorkflowStatus, dW as WorkflowTransition, hv as WorkflowsRepository, gb as addSchemaToContext, dC as and, ie as applyDefaultValues, ey as asTenantId, ez as asUserId, e$ as attributeConfigSchemas, j1 as buildAuditChanges, ii as buildPolicyContext, fM as cacheKeys, fN as cacheTtl, e8 as canAccessNode, dX as canResumeInstance, ig as checkPermission, ij as checkRecordAccess, il as checkRecordDeleteOrThrow, ik as checkRecordModifyOrThrow, im as checkSharedObjectWriteAccess, eM as checkboxConfigSchema, gz as complete, io as computeLabel, jO as computeLabelWithRelations, fA as computeRecordStatus, fo as createAttributeValidator, f6 as createCheckboxValidator, is as createContextForCreate, iu as createContextForDelete, iv as createContextForRestore, it as createContextForUpdate, f9 as createCurrencyValidator, f7 as createDateValidator, gq as createDefaultExecutorRegistry, fY as createDefaultState, fv as createDraftValidator, ef as createEmptyContext, fe as createFileValidator, fp as createFormAttributeValidator, fk as createFormulaValidator, fd as createLocationValidator, hi as createMockAdapter, fh as createMultiRelationValidator, fc as createMultiselectValidator, f5 as createNumberValidator, fq as createObjectValidator, f8 as createPhoneValidator, g2 as createQueryBuilder, fj as createRatingValidator, fi as createRelationValidator, fn as createRichtextValidator, fl as createRollupValidator, fb as createSelectValidator, fg as createSingleRelationValidator, dY as createStartTransition, fa as createStatusValidator, fm as createTextAreaValidator, f4 as createTextValidator, ff as createUserValidator, eP as currencyConfigSchema, eN as dateConfigSchema, hk as defaultPolicyRegistry, fO as defaultTtl, e_ as documentConfigSchema, ir as enrichRecordsWithFormulas, jK as enrichValuesForDisplay, jL as enrichValuesWithSelectLabels, iq as enrichWithFormulas, dD as eq, gA as error, g8 as evaluate, g7 as evaluateCondition, gJ as evaluateFormula, gK as evaluateFormulaAttribute, gL as evaluateFormulaAttributeWithRelations, gM as evaluateFormulaWithRelations, gN as evaluateFormulaWithResult, g9 as evaluateWithTrace, jJ as extractAttributeNames, gO as extractFormulaVariables, jM as extractRelationIds, gP as extractRelationNames, gQ as extractRelationReferences, eU as fileConfigSchema, gR as flattenRelationsForEval, gS as formatFormulaResult, fZ as formatRecord, f_ as formatRecords, eY as formulaConfigSchema, et as generateCssVariables, eA as generateId, eB as generatePrefixedId, eD as generateTemplateName, f0 as getAttributeConfigSchema, gj as getContext, eg as getContextValue, gr as getDefaultExecutorRegistry, fy as getMissingRequiredAttributes, dt as getNodeOutputs, gW as getPathDepth, ih as getPolicy, gX as getRelationPath, gc as getSchemaByNameFromContext, gd as getSchemaContext, ge as getSchemaFromContext, jC as getSyncPreview, gY as getTargetAttributeName, gk as getTenantId, gl as getUserId, kn as getViewSyncPreview, gm as hasContext, gT as hasRelationReferences, gf as hasSchemaContext, fJ as hashOptions, dE as inValues, dh as isActivityTab, bV as isAdvancedFilterState, du as isAdvancedFormNode, dF as isConditionGroup, dv as isConditionNode, dG as isConditionRule, dg as isCustomTab, de as isDirectTableTab, dw as isDocumentNode, dk as isDocumentsTab, bd as isDocxTemplateSource, dH as isEmpty, dx as isEndNode, c8 as isFlowDefinition, c9 as isFlowPublished, dj as isFlowsTab, dy as isFormNode, dc as isFormTab, e9 as isGrantExpired, ea as isGrantRevoked, eb as isGrantValid, dZ as isInstanceTerminal, d_ as isInstanceWaiting, df as isInverseTableTab, e3 as isInvitationAccepted, e4 as isInvitationExpired, e5 as isInvitationValid, jI as isLabelExpression, c1 as isNoValueOperator, dI as isNotEmpty, di as isNotesTab, bc as isPdfTemplateSource, fz as isRecordComplete, dz as isSimpleFormNode, dA as isStartNode, ca as isSystemFlow, dQ as isSystemWorkflow, dd as isTableTab, ec as isTokenRevoked, aY as isUniversalRelation, dR as isWorkflowDefinition, dS as isWorkflowPublished, eR as locationConfigSchema, eh as mergeFormToSlot, eu as mergeWithDefaults, eT as multiselectConfigSchema, dJ as neq, hm as notesPolicy, eL as numberConfigSchema, dK as or, f2 as parseAttributeConfig, g$ as parsePath, h0 as pathHasManyCardinality, eO as phoneConfigSchema, eX as ratingConfigSchema, iw as recalculateParentRollups, eE as registry, eW as relationConfigSchema, jH as renderLabelExpression, h6 as resolveMultiplePaths, h7 as resolveSingleValue, eK as richtextConfigSchema, eZ as rollupConfigSchema, gn as runWithContext, gg as runWithMergedSchemaContext, gh as runWithSchemaContext, f3 as safeParseAttributeConfig, eS as selectConfigSchema, ei as setContextValue, eC as slugify, eQ as statusConfigSchema, gC as success, jF as syncAll, jA as syncNativeObjects, kl as syncNativeViews, eI as textConfigSchema, eJ as textareaConfigSchema, bW as toAdvancedFilterState, bX as toSimpleFilterState, h8 as traversePath, eV as userConfigSchema, fs as validateAttribute, f1 as validateAttributeConfig, fw as validateDraft, fx as validateDraftOrThrow, gU as validateFormulaExpression, ft as validateObject, fu as validateObjectOrThrow, h1 as validatePath, jB as verifyNativeObjectsSync, km as verifyNativeViewsSync, eF as viewRegistry, gD as wait, go as withTenantContext } from './runtime-D5MuaVQs.mjs';
1
+ import { S as SystemResource, a as SystemAction, O as ObjectAction, I as InferAttributeValue, F as Field, A as AttributeGroupField, G as Group, T as TableTab, D as DetailViewLayout, b as InverseTableTab, c as DetailViewDefinition, d as InstanceStatus, e as Tab, f as FilterState, g as SortRule, h as DirectTableTab, L as ListViewDefinition, W as WorkflowTheme, i as WorkflowConfig, j as SlotMode, C as ConditionGroup, k as ConditionRule, l as WorkflowNode, m as WorkflowDefinition, n as FlowRow, V as ViewType, o as ViewDefinition, p as DocumentTemplate } from './runtime-SCsDOQi0.mjs';
2
+ export { aa as AIBatchQuestion, ab as AIBatchQuestionAnswer, a9 as AIBatchQuestionOption, a4 as AIChatMessage, a3 as AIChatMessagePart, _ as AIChatMessagePartType, ag as AIConversation, fV as AIConversationsRepository, ah as AIMessage, af as AIMessageAttachment, U as AIMessageRole, al as AIProviderMetrics, a7 as AIQuestion, a8 as AIQuestionAnswer, a6 as AIQuestionOption, a5 as AIQuestionType, X as AIThinkingLevel, ad as AITodoItem, ae as AITodoList, ac as AITodoStatus, Z as AIToolCall, ai as AIToolCallRecord, Y as AIToolCallStatus, ak as AIUsageMetrics, fW as AIUsageMetricsRepository, aj as AIUserMemory, fX as AIUserMemoryRepository, ck as ActivityTab, bH as AddAttribute, gj as AddAttributeInput, bg as AdvancedFilterState, c7 as AssignRoleInput, fJ as AttributeChange, bG as AttributeMap, bC as AttributeSchema, fY as AttributesRepository, ao as AuditAction, ap as AuditActorType, aq as AuditChange, at as AuditListOptions, ar as AuditLogEntry, fZ as AuditRepository, an as AuditResourceType, hv as AuditService, au as AuditServiceOptions, gf as BaseRepository, ge as BaseService, B as BoundingBox, e7 as CacheAdapter, e5 as CacheKeyType, e8 as CacheOptions, ct as CalendarViewConfig, cx as CalendarViewDefinition, db as CanvasViewport, b2 as CheckboxFilterOperator, fa as ConditionExecutor, cQ as ConditionNode, d3 as ConditionOperator, cA as ConfigOverrides, am as CreateAIMessageInput, as as CreateAuditLogInput, gi as CreateCustomObjectInput, ir as CreateDBAttribute, im as CreateDBObject, iB as CreateDBView, iF as CreateDBViewOverlay, iI as CreateDBWorkflow, iR as CreateDBWorkflowAccessGrant, iL as CreateDBWorkflowInstance, iO as CreateDBWorkflowInvitation, aN as CreateDocument, az as CreateDocumentGenerationTemplate, aR as CreateDocumentSlot, aP as CreateDocumentTemplate, a_ as CreateFile, dz as CreateGrantInput, h9 as CreateGrantResult, ds as CreateInvitationInput, dt as CreateInvitationResult, iu as CreateObjectRecord, c6 as CreatePermissionInput, aT as CreateProcessingJob, hK as CreateRecordDocumentInput, hL as CreateRecordDocumentResult, c4 as CreateRoleInput, x as CreateSignatureInput, ce as CreateUserProfile, hU as CreateViewInput, hm as CreateWorkflowInput, b9 as CurrencyFilterValue, bL as CustomAttributeValue, cj as CustomTab, iq as DBAttribute, il as DBObject, iA as DBView, iE as DBViewOverlay, iH as DBWorkflow, iQ as DBWorkflowAccessGrant, iK as DBWorkflowInstance, iN as DBWorkflowInvitation, ib as DEFAULT_LABEL_FALLBACK, dU as DEFAULT_THEME, d_ as DatabaseAdapter, b3 as DateFilterOperator, cr as DetailViewConfig, aG as Document, aD as DocumentAutoProcessing, Q as DocumentData, fb as DocumentExecutor, hy as DocumentGenerationNotConfiguredError, hz as DocumentGenerationService, ay as DocumentGenerationTemplate, f_ as DocumentGenerationTemplateListOptions, hx as DocumentGenerationTemplateNotFoundError, f$ as DocumentGenerationTemplatesRepository, g0 as DocumentJobsRepository, aV as DocumentListOptions, cR as DocumentNode, hA as DocumentProcessingConfig, h3 as DocumentProcessingHook, h2 as DocumentProcessingHookOptions, hB as DocumentProcessingService, hF as DocumentRenderError, hD as DocumentRendererOptions, hH as DocumentRendererService, hN as DocumentService, hM as DocumentServiceOptions, aI as DocumentSlot, aC as DocumentSlotDefinition, g1 as DocumentSlotsRepository, aH as DocumentStatus, aW as DocumentTemplateListOptions, hI as DocumentTemplateService, g3 as DocumentTemplatesRepository, g2 as DocumentsRepository, cn as DocumentsTab, c1 as EffectivePermissions, fc as EndExecutor, cS as EndNode, eu as EvaluationResult, ev as EvaluationTrace, e_ as ExecutorCompleteResult, e$ as ExecutorContext, f0 as ExecutorErrorResult, f7 as ExecutorRegistry, f1 as ExecutorResult, f2 as ExecutorSuccessResult, f3 as ExecutorWaitResult, bd as ExtendedFilterRule, bV as ExtractAttributes, bX as ExtractObjectRecord, bY as ExtractObjectRecordWithCustom, bP as ExtractRecord, bR as ExtractRecordInput, bS as ExtractRecordInputStrict, bQ as ExtractRecordStrict, bT as ExtractRecordUpdate, bU as ExtractRecordUpdateStrict, aF as ExtractionField, aE as ExtractionMapping, eI as FeatureFlagsContext, eA as FeatureFlagsContextError, ed as FetchResult, aZ as File, hZ as FileContent, iz as FileListOptions, hP as FileService, hO as FileServiceOptions, aY as FileVisibility, g4 as FilesRepository, be as FilterCombinator, bf as FilterGroup, b7 as FilterOperator, bc as FilterRule, bb as FilterValue, bs as FlowDefinition, bp as FlowPage, bq as FlowRelation, bo as FlowRowField, bn as FlowSlot, br as FlowStatus, cm as FlowsTab, dL as FormContextResponse, fd as FormExecutor, dM as FormFieldContext, cT as FormFieldRef, dN as FormFieldRow, cU as FormNode, dO as FormNodeInfo, ci as FormTab, ee as FormattedRecord, gG as FormulaResolverService, gF as FormulaResolverServiceOptions, fr as FormulaResult, i9 as FullSyncOptions, i8 as FullSyncResult, cv as GalleryViewConfig, cz as GalleryViewDefinition, dG as GeneratedDocument, bA as GeocodingAdapter, bx as GeocodingAutocompleteParams, bz as GeocodingParams, hQ as GeocodingService, bw as GeocodingSuggestion, gy as GetRelationOptionsParams, hX as GetViewOptions, hW as GetViewsOptions, ix as GlobalSearchOptions, iy as GlobalSearchResultItem, hR as GlobalSearchService, h5 as GrantExpiredError, h4 as GrantNotFoundError, h6 as GrantRevokedError, h8 as GrantServiceConfig, ef as GroupedFetchResult, fK as HookContext, fL as HookDefinition, fM as HookHandler, fP as HookRegistry, fN as HookType, M as IdentityVerificationAdapter, bI as InferRecord, bD as InferRecordFromSchema, bJ as InferRecordInput, bK as InferRecordUpdate, bE as InferRecordWithRequirements, eg as InsertOptions, fv as InvalidPathError, hi as InvitationAlreadyAcceptedError, hh as InvitationExpiredError, hg as InvitationNotFoundError, hj as InvitationRevokedError, hf as InvitationServiceConfig, du as InvitationStatus, cg as InviteUserInput, e0 as JwtVerificationResult, gV as LabelResolver, iv as ListOptions, cs as ListViewConfig, co as ListViewLayout, e1 as MagicLinkPayload, fw as MaxDepthExceededError, fR as MockStores, b5 as MultiselectFilterOperator, bl as NO_VALUE_OPERATORS, bk as NoValueOperator, f4 as NodeExecutor, dc as NodePosition, ec as NoopCacheAdapter, bB as NoopGeocodingAdapter, fO as NoopHookRegistry, cl as NotesTab, b1 as NumberFilterOperator, bj as OPERATORS_BY_TYPE, c2 as ObjectPermissions, g5 as ObjectRecordsRepository, gm as ObjectSchemaService, gl as ObjectSchemaServiceOptions, g6 as ObjectsRepository, q as OcrAdapter, r as OcrInput, s as OcrOptions, u as OcrPage, t as OcrResult, v as OcrTextBlock, iT as OperationResult, fA as PathCardinality, fB as PathSegment, fC as PathSegmentType, aw as PdfTemplateField, dj as PendingAction, aB as PendingDocumentRequest, b$ as Permission, bZ as PermissionScope, hT as PermissionService, hS as PermissionServiceOptions, g7 as PermissionsRepository, ba as PhoneFilterValue, c8 as PolicyContext, fT as PolicyRegistry, ca as PolicyViolationError, aK as ProcessingJob, aM as ProcessingJobStatus, aL as ProcessingJobType, es as QueryBuilder, et as QueryBuilderOptions, eh as QueryBuilderState, eo as QueryMultipleResultsError, ep as QueryNoResultError, gq as QueryOptions, gs as QueryResult, bi as QueryState, dP as ReadOnlyReason, a2 as ReasoningPartData, hJ as RecordDocumentsResult, bN as RecordMetadata, c9 as RecordPolicy, gt as RecordQueryService, gp as RecordQueryServiceOptions, gD as RecordResolverService, go as RecordService, gn as RecordServiceOptions, ei as RegistryMap, ej as RegistryObjectNames, b6 as RelationFilterOperator, ij as RelationLabelResolver, gw as RelationOption, gx as RelationOptionsResponse, gC as RelationService, gz as RelationServiceOptions, gv as RelationValidationError, gu as RelationValidationResult, b8 as RelativeDateValue, hC as RenderDocumentInput, hE as RenderDocumentResult, gA as ResolveIdsBatchRequest, gB as ResolveIdsBatchResponse, gE as ResolvedRelations, hc as ResumeWorkflowInput, by as ReverseGeocodingParams, b_ as Role, h1 as RollupCascadeContext, gH as RollupResult, gL as RollupScheduler, gK as RollupSchedulerOptions, gJ as RollupService, gI as RollupServiceOptions, eq as SHORTCUT_TO_FILTER_OPERATOR, eQ as SchemaContext, gg as SchemaContextAware, gh as SchemaContextAwareRepository, fD as SchemaResolver, iw as SearchOptions, gr as SearchQueryOptions, b4 as SelectFilterOperator, ek as ShortcutOperator, w as SignatureAdapter, z as SignaturePosition, E as SignatureRequestResult, K as SignatureStatus, H as SignatureStatusResult, i0 as SignedUrlOptions, y as SignerRequest, J as SignerStatus, aJ as SlotStatus, bh as SortDirection, fe as StartExecutor, cV as StartNode, hb as StartWorkflowInput, i1 as StorageAdapter, hG as StorageDownloadNotSupportedError, aX as StorageProvider, h_ as StorageUploadInput, h$ as StorageUploadResult, i4 as SyncOptions, i3 as SyncResult, bO as SystemFields, c3 as SystemPermissions, ch as TabType, ax as TemplateSource, eX as TenantContext, ez as TenantContextError, b0 as TextFilterOperator, $ as TextPartData, dR as ThemeColors, dS as ThemeLogo, dT as ThemeTypography, a1 as ThinkingPartData, cu as TimelineViewConfig, cy as TimelineViewDefinition, h7 as TokenRevokedError, a0 as ToolPartData, fH as TraversalOptions, fI as TraversalResult, bF as TypedAttribute, bW as TypedObjectRecord, is as UpdateDBAttribute, io as UpdateDBObject, iC as UpdateDBView, iG as UpdateDBViewOverlay, iJ as UpdateDBWorkflow, iS as UpdateDBWorkflowAccessGrant, iM as UpdateDBWorkflowInstance, iP as UpdateDBWorkflowInvitation, aO as UpdateDocument, aA as UpdateDocumentGenerationTemplate, aS as UpdateDocumentSlot, aQ as UpdateDocumentTemplate, a$ as UpdateFile, gk as UpdateObjectInput, aU as UpdateProcessingJob, c5 as UpdateRoleInput, cf as UpdateUserProfile, hV as UpdateViewInput, hn as UpdateWorkflowInput, i2 as UploadFileInput, it as UpsertDBAttribute, ip as UpsertDBObject, iD as UpsertDBView, cd as UserProfile, hu as UserProfileService, ht as UserProfileServiceOptions, g8 as UserProfilesRepository, cb as UserRole, c0 as UserRoleAssignment, hs as UserService, cc as UserStatus, hr as UserValidationError, hq as UserValidationResult, av as VariableMapping, R as VerificationCheck, P as VerificationResult, N as VerifyInput, cw as ViewConfig, cp as ViewLayout, cB as ViewOverlay, dZ as ViewOverlaysRepository, hY as ViewService, iV as ViewSyncLogger, iW as ViewSyncOptions, iU as ViewSyncResult, cq as ViewTab, g9 as ViewsRepository, bM as WithCustomAttributes, dA as WorkflowAccessGrant, ha as WorkflowAccessGrantService, ga as WorkflowAccessGrantsRepository, dQ as WorkflowAccessMode, e2 as WorkflowAccessPayload, dk as WorkflowError, dH as WorkflowExecutionContext, dl as WorkflowInstance, he as WorkflowInstanceService, hd as WorkflowInstanceServiceOptions, gb as WorkflowInstancesRepository, dv as WorkflowInvitation, hk as WorkflowInvitationService, gc as WorkflowInvitationsRepository, e3 as WorkflowJwtConfig, e4 as WorkflowJwtPayload, d$ as WorkflowJwtService, dd as WorkflowLayout, cW as WorkflowNodeType, hl as WorkflowRelationService, hp as WorkflowService, ho as WorkflowServiceOptions, de as WorkflowSlot, df as WorkflowStatus, dm as WorkflowTransition, gd as WorkflowsRepository, eJ as addSchemaToContext, d4 as and, gM as applyDefaultValues, hw as buildAuditChanges, gP as buildPolicyContext, e9 as cacheKeys, ea as cacheTtl, dB as canAccessNode, dn as canResumeInstance, gN as checkPermission, gQ as checkRecordAccess, gS as checkRecordDeleteOrThrow, gR as checkRecordModifyOrThrow, gT as checkSharedObjectWriteAccess, f5 as complete, gU as computeLabel, ik as computeLabelWithRelations, gY as createContextForCreate, g_ as createContextForDelete, g$ as createContextForRestore, gZ as createContextForUpdate, eY as createDefaultExecutorRegistry, el as createDefaultState, dI as createEmptyContext, fQ as createMockAdapter, er as createQueryBuilder, dp as createStartTransition, fS as defaultPolicyRegistry, eb as defaultTtl, gX as enrichRecordsWithFormulas, ig as enrichValuesForDisplay, ih as enrichValuesWithSelectLabels, gW as enrichWithFormulas, d5 as eq, f6 as error, ex as evaluate, ew as evaluateCondition, ff as evaluateFormula, fg as evaluateFormulaAttribute, fh as evaluateFormulaAttributeWithRelations, fi as evaluateFormulaWithRelations, fj as evaluateFormulaWithResult, ey as evaluateWithTrace, ie as extractAttributeNames, fk as extractFormulaVariables, ii as extractRelationIds, fl as extractRelationNames, fm as extractRelationReferences, fn as flattenRelationsForEval, fo as formatFormulaResult, em as formatRecord, en as formatRecords, dV as generateCssVariables, eR as getContext, dJ as getContextValue, eZ as getDefaultExecutorRegistry, eB as getFeatureFlags, eC as getFeatureValue, cX as getNodeOutputs, fs as getPathDepth, gO as getPolicy, ft as getRelationPath, eK as getSchemaByNameFromContext, eL as getSchemaContext, eM as getSchemaFromContext, i7 as getSyncPreview, fu as getTargetAttributeName, eS as getTenantId, eT as getUserId, i$ as getViewSeedPreview, j0 as getViewSyncPreview, eU as hasContext, eD as hasFeatureFlagsContext, fp as hasRelationReferences, eN as hasSchemaContext, e6 as hashOptions, d6 as inValues, cM as isActivityTab, cY as isAdvancedFormNode, cE as isCalendarView, d7 as isConditionGroup, cZ as isConditionNode, d8 as isConditionRule, cL as isCustomTab, cC as isDetailView, cJ as isDirectTableTab, c_ as isDocumentNode, cP as isDocumentsTab, c$ as isEndNode, eE as isFeatureEnabled, bt as isFlowDefinition, bu as isFlowPublished, cO as isFlowsTab, d0 as isFormNode, cH as isFormTab, cG as isGalleryView, dC as isGrantExpired, dD as isGrantRevoked, dE as isGrantValid, dq as isInstanceTerminal, dr as isInstanceWaiting, cK as isInverseTableTab, dw as isInvitationAccepted, dx as isInvitationExpired, dy as isInvitationValid, id as isLabelExpression, cD as isListView, bm as isNoValueOperator, cN as isNotesTab, d1 as isSimpleFormNode, d2 as isStartNode, bv as isSystemFlow, dg as isSystemWorkflow, cI as isTableTab, cF as isTimelineView, dF as isTokenRevoked, dh as isWorkflowDefinition, di as isWorkflowPublished, dW as mergeWithDefaults, d9 as neq, fU as notesPolicy, da as or, fx as parsePath, fy as pathHasManyCardinality, h0 as recalculateParentRollups, dX as registry, ic as renderLabelExpression, fE as resolveMultiplePaths, fF as resolveSingleValue, eV as runWithContext, eF as runWithFeatureFlags, eO as runWithMergedSchemaContext, eP as runWithSchemaContext, iX as seedRegistryViews, dK as setContextValue, f8 as success, ia as syncAll, i5 as syncNativeObjects, iY as syncNativeViews, fG as traversePath, eG as tryGetFeatureValue, fq as validateFormulaExpression, fz as validatePath, i6 as verifyNativeObjectsSync, i_ as verifyNativeViewsSync, iZ as verifyRegistryViewsSeeded, dY as viewRegistry, f9 as wait, eH as withFeatureFlags, eW as withTenantContext } from './runtime-SCsDOQi0.mjs';
3
+ import { D as DateAttribute, U as UserAttribute, a as DocumentAttribute, A as Attribute, F as FeatureGate, T as TextAttribute, b as TextAreaAttribute, R as RichtextAttribute, c as RichtextFeature, N as NumberAttribute, C as CheckboxAttribute, P as PhoneAttribute, d as CurrencyAttribute, O as Option, S as StatusAttribute, e as SelectAttribute, M as MultiselectAttribute, L as LocationAttribute, f as FileAttribute, g as SingleRelationAttribute, h as MultiRelationAttribute, i as RelationTarget, j as RatingAttribute, k as FormulaAttribute, l as FormulaReturnType, m as RollupAttribute, n as RollupFunction, o as AttributeType, p as ObjectDefinition, q as FlagValueType, r as FeatureFlagDefinition, s as FlagLevel, t as FeatureFlagsRepository, u as StaticFlagDefault, v as ResolvedFlag } from './validators-BgmWgr-G.mjs';
4
+ export { x as AttributeGroup, B as BaseAttribute, a3 as CompletionStatus, H as Currency, a7 as DEFAULT_VALIDATION_MESSAGES, z as DateFormat, E as DateValue, X as FeatureFlagsConfig, W as FlagOverride, I as Location, J as LocationGranularity, y as NumberUnit, a2 as ObjectAttribute, a4 as ObjectRecord, G as Phone, K as RELATION_TARGET_ANY, Y as RESERVED_ATTRIBUTE_NAMES, Q as RelationAttribute, _ as ReservedAttributeName, Z as SYSTEM_FIELD_NAMES, a1 as SharingMode, w as StatusGroup, $ as SystemFieldName, a0 as Timestamps, a6 as ValidationMessages, aT as ValidationResult, ar as attributeConfigSchemas, ac as checkboxConfigSchema, b0 as computeRecordStatus, aQ as createAttributeValidator, ay as createCheckboxValidator, aB as createCurrencyValidator, az as createDateValidator, aX as createDraftValidator, aG as createFileValidator, aR as createFormAttributeValidator, aM as createFormulaValidator, aF as createLocationValidator, aJ as createMultiRelationValidator, aE as createMultiselectValidator, ax as createNumberValidator, aS as createObjectValidator, aA as createPhoneValidator, aL as createRatingValidator, aK as createRelationValidator, aP as createRichtextValidator, aN as createRollupValidator, aD as createSelectValidator, aI as createSingleRelationValidator, aC as createStatusValidator, aO as createTextAreaValidator, aw as createTextValidator, aH as createUserValidator, af as currencyConfigSchema, ad as dateConfigSchema, aq as documentConfigSchema, ak as fileConfigSchema, a5 as formatZodErrors, ao as formulaConfigSchema, as as getAttributeConfigSchema, a_ as getMissingRequiredAttributes, a$ as isRecordComplete, V as isUniversalRelation, ah as locationConfigSchema, aj as multiselectConfigSchema, ab as numberConfigSchema, au as parseAttributeConfig, ae as phoneConfigSchema, an as ratingConfigSchema, am as relationConfigSchema, aa as richtextConfigSchema, ap as rollupConfigSchema, av as safeParseAttributeConfig, ai as selectConfigSchema, ag as statusConfigSchema, a8 as textConfigSchema, a9 as textareaConfigSchema, al as userConfigSchema, aU as validateAttribute, at as validateAttributeConfig, aY as validateDraft, aZ as validateDraftOrThrow, aV as validateObject, aW as validateObjectOrThrow } from './validators-BgmWgr-G.mjs';
3
5
  import { z } from 'zod';
6
+ export { TenantId, UserId, Uuid, asTenantId, asUserId, generateId, generatePrefixedId, generateTemplateName, indexBy, slugify } from './utils.mjs';
4
7
  import { IconName, CountryIso3, CurrencyCode, MimeType, ColorId } from '@stndrds/constants';
5
8
  import 'jose';
6
9
 
@@ -71,6 +74,47 @@ interface AgentMessage {
71
74
  error?: string;
72
75
  }
73
76
 
77
+ /**
78
+ * Attribute Property Protection
79
+ *
80
+ * Defines which properties can be modified based on attribute type (custom vs system).
81
+ *
82
+ * Protection levels:
83
+ * 1. Identity properties: NEVER modifiable (defines attribute structure)
84
+ * 2. Behavior properties: Modifiable for custom attributes, PROTECTED for system attributes
85
+ * 3. Presentation properties: ALWAYS modifiable (display only, no logic impact)
86
+ */
87
+ /**
88
+ * Identity properties - Never modifiable
89
+ * These define the fundamental structure of the attribute.
90
+ */
91
+ declare const IDENTITY_PROPERTIES: readonly ["name", "type"];
92
+ /**
93
+ * Behavior properties - Protected for system attributes
94
+ * These affect business logic and data integrity.
95
+ */
96
+ declare const BEHAVIOR_PROPERTIES: readonly ["required", "disabled", "hidden", "archived", "deprecated", "defaultValue", "config", "order", "unique"];
97
+ /**
98
+ * Presentation properties - Always modifiable
99
+ * These only affect display, not logic.
100
+ */
101
+ declare const PRESENTATION_PROPERTIES: readonly ["label", "description", "placeholder", "icon"];
102
+ type IdentityProperty = (typeof IDENTITY_PROPERTIES)[number];
103
+ type BehaviorProperty = (typeof BEHAVIOR_PROPERTIES)[number];
104
+ type PresentationProperty = (typeof PRESENTATION_PROPERTIES)[number];
105
+ /**
106
+ * Check if a property is an identity property (never modifiable)
107
+ */
108
+ declare function isIdentityProperty(property: string): property is IdentityProperty;
109
+ /**
110
+ * Check if a property is a behavior property (protected for system attributes)
111
+ */
112
+ declare function isBehaviorProperty(property: string): property is BehaviorProperty;
113
+ /**
114
+ * Check if a property is a presentation property (always modifiable)
115
+ */
116
+ declare function isPresentationProperty(property: string): property is PresentationProperty;
117
+
74
118
  /**
75
119
  * Common configuration for all builders (Objects & Attributes)
76
120
  */
@@ -1023,6 +1067,51 @@ interface ResumeWorkflowApiInput {
1023
1067
  input: Record<string, unknown>;
1024
1068
  }
1025
1069
 
1070
+ /**
1071
+ * Utility functions for working with objects.
1072
+ * Provides type-safe helpers to avoid common anti-patterns like Object.keys().length checks.
1073
+ */
1074
+ /**
1075
+ * Checks if an object is empty (has no own enumerable properties).
1076
+ * Handles null/undefined safely.
1077
+ *
1078
+ * @example
1079
+ * isEmpty({}) // true
1080
+ * isEmpty({ foo: 'bar' }) // false
1081
+ * isEmpty(null) // true
1082
+ * isEmpty(undefined) // true
1083
+ */
1084
+ declare function isEmpty(obj: unknown): boolean;
1085
+ /**
1086
+ * Type guard to check if an object is not empty.
1087
+ * Narrows the type to Record<string, unknown>.
1088
+ *
1089
+ * @example
1090
+ * if (isNotEmpty(params)) {
1091
+ * // params is Record<string, unknown> here
1092
+ * }
1093
+ */
1094
+ declare function isNotEmpty(obj: unknown): obj is Record<string, unknown>;
1095
+ /**
1096
+ * Returns the object if it has properties, otherwise returns undefined.
1097
+ * Useful for conditional parameter passing.
1098
+ *
1099
+ * @example
1100
+ * const params = toUndefinedIfEmpty({ foo: 'bar' }); // { foo: 'bar' }
1101
+ * const empty = toUndefinedIfEmpty({}); // undefined
1102
+ */
1103
+ declare function toUndefinedIfEmpty<T extends Record<string, unknown>>(obj: T | undefined | null): T | undefined;
1104
+ /**
1105
+ * Checks if an object has at least one own enumerable property.
1106
+ * Alias for isNotEmpty for better readability in some contexts.
1107
+ *
1108
+ * @example
1109
+ * if (hasProperties(config)) {
1110
+ * // config has at least one property
1111
+ * }
1112
+ */
1113
+ declare function hasProperties(obj: unknown): obj is Record<string, unknown>;
1114
+
1026
1115
  /**
1027
1116
  * Default empty value placeholder
1028
1117
  */
@@ -1319,7 +1408,6 @@ declare function isForbiddenError(error: unknown): error is ForbiddenError;
1319
1408
  declare class ConcurrentModificationError extends SchemaError {
1320
1409
  constructor(recordId: string);
1321
1410
  }
1322
- declare function isConcurrentModificationError(error: unknown): error is ConcurrentModificationError;
1323
1411
 
1324
1412
  /**
1325
1413
  * Builder config with literal name type preservation
@@ -1344,6 +1432,28 @@ declare abstract class BaseAttributeBuilder<TAttr extends Attribute> {
1344
1432
  order(value: number): this;
1345
1433
  defaultValue(value: "defaultValue" extends keyof TAttr ? TAttr["defaultValue"] : never): this;
1346
1434
  metadata(value: Record<string, unknown>): this;
1435
+ /**
1436
+ * Add a feature gate to conditionally show/hide/disable this attribute.
1437
+ *
1438
+ * @param flagName - Name of the feature flag to check
1439
+ * @param options - Optional configuration for expected value and fallback behavior
1440
+ *
1441
+ * @example Hide attribute when flag is disabled
1442
+ * ```typescript
1443
+ * text({ name: "aiSummary", label: "AI Summary" })
1444
+ * .featureGate("ai-features")
1445
+ * ```
1446
+ *
1447
+ * @example Disable attribute when tier is not enterprise
1448
+ * ```typescript
1449
+ * text({ name: "advancedField", label: "Advanced Field" })
1450
+ * .featureGate("tier", { expectedValue: "enterprise", fallback: "disable" })
1451
+ * ```
1452
+ */
1453
+ featureGate(flagName: string, options?: {
1454
+ expectedValue?: unknown;
1455
+ fallback?: FeatureGate["fallback"];
1456
+ }): this;
1347
1457
  build(): TAttr;
1348
1458
  }
1349
1459
  declare class TextAttributeBuilder<TName extends string, TRequired extends boolean = false> extends BaseAttributeBuilder<TextAttribute> {
@@ -2231,15 +2341,14 @@ interface BaseTabConfig {
2231
2341
  label: string;
2232
2342
  icon?: IconName;
2233
2343
  order?: number;
2234
- system?: boolean;
2235
2344
  }
2236
2345
  /**
2237
2346
  * Base builder for configuring table tabs (shared between Direct and Inverse)
2238
2347
  */
2239
2348
  declare abstract class BaseTableTabConfig<T extends TableTab> {
2240
- protected view: ViewBuilder;
2349
+ protected view: DetailViewBuilder;
2241
2350
  protected tabData: Partial<T>;
2242
- constructor(view: ViewBuilder, tabData: Partial<T>);
2351
+ constructor(view: DetailViewBuilder, tabData: Partial<T>);
2243
2352
  /**
2244
2353
  * Set columns to display
2245
2354
  * @example .columns("firstName", "lastName", "email")
@@ -2280,13 +2389,13 @@ declare abstract class BaseTableTabConfig<T extends TableTab> {
2280
2389
  */
2281
2390
  tab(name: string, label: string): TabBuilder;
2282
2391
  /**
2283
- * Finish this tab and return to ViewBuilder
2392
+ * Finish this tab and return to DetailViewBuilder
2284
2393
  */
2285
- done(): ViewBuilder;
2394
+ done(): DetailViewBuilder;
2286
2395
  /**
2287
2396
  * Build the final view definition
2288
2397
  */
2289
- build(): ViewDefinition;
2398
+ build(): DetailViewDefinition;
2290
2399
  protected finalize(): void;
2291
2400
  }
2292
2401
  /**
@@ -2302,7 +2411,7 @@ declare abstract class BaseTableTabConfig<T extends TableTab> {
2302
2411
  */
2303
2412
  declare class DirectTableTabConfig extends BaseTableTabConfig<DirectTableTab> {
2304
2413
  /** @internal */
2305
- constructor(view: ViewBuilder, base: BaseTabConfig, relationAttribute: string);
2414
+ constructor(view: DetailViewBuilder, base: BaseTabConfig, relationAttribute: string);
2306
2415
  }
2307
2416
  /**
2308
2417
  * Builder for configuring inverse table tabs (another object has relation to us)
@@ -2317,7 +2426,7 @@ declare class DirectTableTabConfig extends BaseTableTabConfig<DirectTableTab> {
2317
2426
  */
2318
2427
  declare class InverseTableTabConfig extends BaseTableTabConfig<InverseTableTab> {
2319
2428
  /** @internal */
2320
- constructor(view: ViewBuilder, base: BaseTabConfig, sourceObject: string, relationAttribute: string);
2429
+ constructor(view: DetailViewBuilder, base: BaseTabConfig, sourceObject: string, relationAttribute: string);
2321
2430
  }
2322
2431
  /**
2323
2432
  * Builder for configuring custom tabs
@@ -2326,7 +2435,7 @@ declare class CustomTabConfig {
2326
2435
  private view;
2327
2436
  private tabData;
2328
2437
  /** @internal */
2329
- constructor(view: ViewBuilder, base: BaseTabConfig, component: string);
2438
+ constructor(view: DetailViewBuilder, base: BaseTabConfig, component: string);
2330
2439
  /**
2331
2440
  * Set props to pass to the component
2332
2441
  */
@@ -2336,13 +2445,13 @@ declare class CustomTabConfig {
2336
2445
  */
2337
2446
  tab(name: string, label: string): TabBuilder;
2338
2447
  /**
2339
- * Finish this tab and return to ViewBuilder
2448
+ * Finish this tab and return to DetailViewBuilder
2340
2449
  */
2341
- done(): ViewBuilder;
2450
+ done(): DetailViewBuilder;
2342
2451
  /**
2343
2452
  * Build the final view definition
2344
2453
  */
2345
- build(): ViewDefinition;
2454
+ build(): DetailViewDefinition;
2346
2455
  }
2347
2456
  /**
2348
2457
  * Builder for configuring notes tabs
@@ -2351,7 +2460,7 @@ declare class NotesTabConfig {
2351
2460
  private view;
2352
2461
  private tabData;
2353
2462
  /** @internal */
2354
- constructor(view: ViewBuilder, base: BaseTabConfig);
2463
+ constructor(view: DetailViewBuilder, base: BaseTabConfig);
2355
2464
  /**
2356
2465
  * Show only private notes of the current user
2357
2466
  */
@@ -2365,13 +2474,13 @@ declare class NotesTabConfig {
2365
2474
  */
2366
2475
  tab(name: string, label: string): TabBuilder;
2367
2476
  /**
2368
- * Finish this tab and return to ViewBuilder
2477
+ * Finish this tab and return to DetailViewBuilder
2369
2478
  */
2370
- done(): ViewBuilder;
2479
+ done(): DetailViewBuilder;
2371
2480
  /**
2372
2481
  * Build the final view definition
2373
2482
  */
2374
- build(): ViewDefinition;
2483
+ build(): DetailViewDefinition;
2375
2484
  }
2376
2485
  /**
2377
2486
  * Builder for configuring activity tabs
@@ -2380,7 +2489,7 @@ declare class ActivityTabConfig {
2380
2489
  private view;
2381
2490
  private tabData;
2382
2491
  /** @internal */
2383
- constructor(view: ViewBuilder, base: BaseTabConfig);
2492
+ constructor(view: DetailViewBuilder, base: BaseTabConfig);
2384
2493
  /**
2385
2494
  * Set maximum number of activities to display
2386
2495
  */
@@ -2390,13 +2499,13 @@ declare class ActivityTabConfig {
2390
2499
  */
2391
2500
  tab(name: string, label: string): TabBuilder;
2392
2501
  /**
2393
- * Finish this tab and return to ViewBuilder
2502
+ * Finish this tab and return to DetailViewBuilder
2394
2503
  */
2395
- done(): ViewBuilder;
2504
+ done(): DetailViewBuilder;
2396
2505
  /**
2397
2506
  * Build the final view definition
2398
2507
  */
2399
- build(): ViewDefinition;
2508
+ build(): DetailViewDefinition;
2400
2509
  }
2401
2510
  /**
2402
2511
  * Builder for configuring flows tabs (workflow instances)
@@ -2414,7 +2523,7 @@ declare class FlowsTabConfig {
2414
2523
  private view;
2415
2524
  private tabData;
2416
2525
  /** @internal */
2417
- constructor(view: ViewBuilder, base: BaseTabConfig);
2526
+ constructor(view: DetailViewBuilder, base: BaseTabConfig);
2418
2527
  /**
2419
2528
  * Filter by instance statuses
2420
2529
  * @example .statusFilter("running", "waiting", "completed")
@@ -2438,13 +2547,13 @@ declare class FlowsTabConfig {
2438
2547
  */
2439
2548
  tab(name: string, label: string): TabBuilder;
2440
2549
  /**
2441
- * Finish this tab and return to ViewBuilder
2550
+ * Finish this tab and return to DetailViewBuilder
2442
2551
  */
2443
- done(): ViewBuilder;
2552
+ done(): DetailViewBuilder;
2444
2553
  /**
2445
2554
  * Build the final view definition
2446
2555
  */
2447
- build(): ViewDefinition;
2556
+ build(): DetailViewDefinition;
2448
2557
  }
2449
2558
  /**
2450
2559
  * Builder for configuring documents tabs
@@ -2472,7 +2581,7 @@ declare class DocumentsTabConfig {
2472
2581
  private view;
2473
2582
  private tabData;
2474
2583
  /** @internal */
2475
- constructor(view: ViewBuilder, base: BaseTabConfig);
2584
+ constructor(view: DetailViewBuilder, base: BaseTabConfig);
2476
2585
  /**
2477
2586
  * Allow uploading new documents
2478
2587
  */
@@ -2498,13 +2607,13 @@ declare class DocumentsTabConfig {
2498
2607
  */
2499
2608
  tab(name: string, label: string): TabBuilder;
2500
2609
  /**
2501
- * Finish this tab and return to ViewBuilder
2610
+ * Finish this tab and return to DetailViewBuilder
2502
2611
  */
2503
- done(): ViewBuilder;
2612
+ done(): DetailViewBuilder;
2504
2613
  /**
2505
2614
  * Build the final view definition
2506
2615
  */
2507
- build(): ViewDefinition;
2616
+ build(): DetailViewDefinition;
2508
2617
  }
2509
2618
  /**
2510
2619
  * Builder for creating tabs with type discrimination
@@ -2520,7 +2629,7 @@ declare class TabBuilder {
2520
2629
  private view;
2521
2630
  private base;
2522
2631
  /** @internal */
2523
- constructor(view: ViewBuilder, name: string, label: string);
2632
+ constructor(view: DetailViewBuilder, name: string, label: string);
2524
2633
  /**
2525
2634
  * Set tab icon
2526
2635
  */
@@ -2529,15 +2638,11 @@ declare class TabBuilder {
2529
2638
  * Set display order
2530
2639
  */
2531
2640
  order(value: number): this;
2532
- /**
2533
- * Mark as system tab (protected)
2534
- */
2535
- system(): this;
2536
2641
  /**
2537
2642
  * Create a form tab with groups
2538
2643
  * @example .form(group("info", "Info").fields("name", "email"))
2539
2644
  */
2540
- form(...groups: (GroupBuilder | Group)[]): ViewBuilder;
2645
+ form(...groups: (GroupBuilder | Group)[]): DetailViewBuilder;
2541
2646
  /**
2542
2647
  * Create a direct table tab for a relation attribute on the current object
2543
2648
  *
@@ -2584,14 +2689,13 @@ declare class TabBuilder {
2584
2689
  documents(): DocumentsTabConfig;
2585
2690
  }
2586
2691
  /**
2587
- * Builder for creating view definitions
2692
+ * Builder for creating detail view definitions
2588
2693
  *
2589
2694
  * @example
2590
2695
  * ```typescript
2591
- * const COMPANY_VIEW = view("detail", "Company Detail")
2696
+ * const COMPANY_VIEW = detailView("detail", "Company Detail")
2592
2697
  * .for("companies")
2593
2698
  * .default()
2594
- * .system()
2595
2699
  * .icon("building")
2596
2700
  *
2597
2701
  * .tab("general", "Info").icon("info")
@@ -2618,9 +2722,8 @@ declare class TabBuilder {
2618
2722
  * .build();
2619
2723
  * ```
2620
2724
  */
2621
- declare class ViewBuilder {
2725
+ declare class DetailViewBuilder {
2622
2726
  private data;
2623
- private validated;
2624
2727
  constructor(name: string, label: string);
2625
2728
  /**
2626
2729
  * Set view description
@@ -2636,19 +2739,15 @@ declare class ViewBuilder {
2636
2739
  */
2637
2740
  for(objectName: string): this;
2638
2741
  /**
2639
- * Mark as default view for the object (within its layout)
2742
+ * Mark as default view for the object
2640
2743
  */
2641
2744
  default(): this;
2642
- /**
2643
- * Mark as system view (protected, defined by developer)
2644
- */
2645
- system(): this;
2646
2745
  /**
2647
2746
  * Set the layout mode for the view
2648
2747
  * @param value - "page" for full tabs, "modal" for single form
2649
2748
  * @default "page"
2650
2749
  */
2651
- layout(value: ViewLayout): this;
2750
+ layout(value: DetailViewLayout): this;
2652
2751
  /**
2653
2752
  * Shorthand for .layout("modal")
2654
2753
  * Modal views have a single form tab without tabs UI
@@ -2673,14 +2772,18 @@ declare class ViewBuilder {
2673
2772
  /**
2674
2773
  * Build the final view definition
2675
2774
  */
2676
- build(): ViewDefinition;
2775
+ build(): DetailViewDefinition;
2677
2776
  /**
2678
2777
  * Validate view name format (kebab-case)
2679
2778
  */
2680
2779
  private validateName;
2681
2780
  }
2682
2781
  /**
2683
- * Create a new view builder
2782
+ * @deprecated Use DetailViewBuilder instead
2783
+ */
2784
+ declare const ViewBuilder: typeof DetailViewBuilder;
2785
+ /**
2786
+ * Create a new detail view builder
2684
2787
  *
2685
2788
  * @param name - View name (kebab-case)
2686
2789
  * @param label - Display label
@@ -2688,16 +2791,15 @@ declare class ViewBuilder {
2688
2791
  * @example
2689
2792
  * ```typescript
2690
2793
  * // Page view (default) with multiple tabs
2691
- * const COMPANY_VIEW = view("detail", "Company Detail")
2794
+ * const COMPANY_VIEW = detailView("detail", "Company Detail")
2692
2795
  * .for("companies")
2693
2796
  * .default()
2694
- * .system()
2695
2797
  * .tab("general", "Info")
2696
2798
  * .form(group("main", "Main").fields("name", "status"))
2697
2799
  * .build();
2698
2800
  *
2699
2801
  * // Modal view with single form tab
2700
- * const COMPANY_MODAL = view("quick-edit", "Quick Edit")
2802
+ * const COMPANY_MODAL = detailView("quick-edit", "Quick Edit")
2701
2803
  * .for("companies")
2702
2804
  * .modal()
2703
2805
  * .default()
@@ -2706,7 +2808,214 @@ declare class ViewBuilder {
2706
2808
  * .build();
2707
2809
  * ```
2708
2810
  */
2709
- declare function view(name: string, label: string): ViewBuilder;
2811
+ declare function detailView(name: string, label: string): DetailViewBuilder;
2812
+ /**
2813
+ * @deprecated Use detailView() instead
2814
+ */
2815
+ declare function view(name: string, label: string): DetailViewBuilder;
2816
+ /**
2817
+ * Builder for creating list view definitions (RecordsView)
2818
+ *
2819
+ * @example
2820
+ * ```typescript
2821
+ * const CONTACTS_LIST = listView("default", "All Contacts")
2822
+ * .for("contacts")
2823
+ * .default()
2824
+ * .icon("users")
2825
+ * .columns("firstName", "lastName", "email", "company", "status")
2826
+ * .columnWidth("email", 200)
2827
+ * .sort("lastName", "asc")
2828
+ * .filter({
2829
+ * combinator: "and",
2830
+ * rules: [{ attribute: "status", operator: "is", value: "active" }]
2831
+ * })
2832
+ * .tab("all", "All").default()
2833
+ * .tab("active", "Active").filter({
2834
+ * combinator: "and",
2835
+ * rules: [{ attribute: "status", operator: "is", value: "active" }]
2836
+ * })
2837
+ * .build();
2838
+ *
2839
+ * // Kanban view
2840
+ * const DEALS_KANBAN = listView("pipeline", "Sales Pipeline")
2841
+ * .for("deals")
2842
+ * .kanban("stage") // Group by stage attribute
2843
+ * .columns("name", "amount", "company", "owner")
2844
+ * .sort("createdAt", "desc")
2845
+ * .build();
2846
+ * ```
2847
+ */
2848
+ declare class ListViewBuilder {
2849
+ private data;
2850
+ constructor(name: string, label: string);
2851
+ /**
2852
+ * Set view description
2853
+ */
2854
+ description(value: string): this;
2855
+ /**
2856
+ * Set view icon
2857
+ */
2858
+ icon(value: IconName): this;
2859
+ /**
2860
+ * Associate view with an object
2861
+ * @param objectName - Object name (kebab-case)
2862
+ */
2863
+ for(objectName: string): this;
2864
+ /**
2865
+ * Mark as default view for the object
2866
+ */
2867
+ default(): this;
2868
+ /**
2869
+ * Set metadata
2870
+ */
2871
+ metadata(value: Record<string, unknown>): this;
2872
+ /**
2873
+ * Set the layout to table (default)
2874
+ */
2875
+ table(): this;
2876
+ /**
2877
+ * Set the layout to kanban and specify the grouping attribute
2878
+ * @param groupByAttribute - Attribute to group by (must be a select/status type)
2879
+ */
2880
+ kanban(groupByAttribute: string): this;
2881
+ /**
2882
+ * Set columns to display
2883
+ * @example .columns("name", "email", "status", "createdAt")
2884
+ */
2885
+ columns(...names: string[]): this;
2886
+ /**
2887
+ * Set width for a specific column in pixels
2888
+ * @example .columnWidth("email", 200)
2889
+ */
2890
+ columnWidth(columnName: string, width: number): this;
2891
+ /**
2892
+ * Set widths for multiple columns
2893
+ * @example .columnWidths({ email: 200, name: 300, status: 100 })
2894
+ */
2895
+ columnWidths(widths: Record<string, number>): this;
2896
+ /**
2897
+ * Set default filters
2898
+ * @example .filter({ combinator: "and", rules: [{ attribute: "status", operator: "is", value: "active" }] })
2899
+ */
2900
+ filter(filters: FilterState): this;
2901
+ /**
2902
+ * Add a single sort rule
2903
+ * @example .sort("lastName", "asc")
2904
+ */
2905
+ sort(attribute: string, direction?: "asc" | "desc"): this;
2906
+ /**
2907
+ * Set multiple sort rules
2908
+ * @example .sorts([{ attribute: "lastName", direction: "asc" }, { attribute: "firstName", direction: "asc" }])
2909
+ */
2910
+ sorts(rules: SortRule[]): this;
2911
+ /**
2912
+ * Add an internal tab (filter preset)
2913
+ * Returns a TabConfigBuilder for chaining tab configuration
2914
+ * @example
2915
+ * ```typescript
2916
+ * .tab("all", "All Contacts").icon("users").default()
2917
+ * .tab("active", "Active").icon("check").filter({ ... })
2918
+ * ```
2919
+ */
2920
+ tab(id: string, label: string): ListViewTabConfigBuilder;
2921
+ /**
2922
+ * @internal Used by ListViewTabConfigBuilder to add tabs
2923
+ */
2924
+ _addTab(tab: {
2925
+ id: string;
2926
+ label: string;
2927
+ icon?: IconName;
2928
+ filters?: FilterState;
2929
+ default?: boolean;
2930
+ }): this;
2931
+ /**
2932
+ * Build the final list view definition
2933
+ */
2934
+ build(): ListViewDefinition;
2935
+ /**
2936
+ * Validate view name format (kebab-case)
2937
+ */
2938
+ private validateName;
2939
+ }
2940
+ /**
2941
+ * Builder for configuring internal tabs (filter presets) in list views
2942
+ */
2943
+ declare class ListViewTabConfigBuilder {
2944
+ private view;
2945
+ private tabData;
2946
+ /** @internal */
2947
+ constructor(view: ListViewBuilder, id: string, label: string);
2948
+ /**
2949
+ * Set tab icon
2950
+ */
2951
+ icon(value: IconName): this;
2952
+ /**
2953
+ * Set filters for this tab (filter preset)
2954
+ * @example .filter({ combinator: "and", rules: [{ attribute: "status", operator: "is", value: "active" }] })
2955
+ */
2956
+ filter(filters: FilterState): this;
2957
+ /**
2958
+ * Mark this tab as the default tab
2959
+ */
2960
+ default(): this;
2961
+ /**
2962
+ * Continue building with a new tab
2963
+ */
2964
+ tab(id: string, label: string): ListViewTabConfigBuilder;
2965
+ /**
2966
+ * Finish this tab and return to ListViewBuilder
2967
+ */
2968
+ done(): ListViewBuilder;
2969
+ /**
2970
+ * Build the final view definition
2971
+ */
2972
+ build(): ListViewDefinition;
2973
+ }
2974
+ /**
2975
+ * Create a new list view builder
2976
+ *
2977
+ * @param name - View name (kebab-case)
2978
+ * @param label - Display label
2979
+ *
2980
+ * @example
2981
+ * ```typescript
2982
+ * // Table view with columns and filters
2983
+ * const CONTACTS_LIST = listView("default", "All Contacts")
2984
+ * .for("contacts")
2985
+ * .default()
2986
+ * .columns("firstName", "lastName", "email", "status")
2987
+ * .sort("lastName", "asc")
2988
+ * .filter({
2989
+ * combinator: "and",
2990
+ * rules: [{ attribute: "status", operator: "is", value: "active" }]
2991
+ * })
2992
+ * .build();
2993
+ *
2994
+ * // Kanban view grouped by status
2995
+ * const DEALS_KANBAN = listView("pipeline", "Sales Pipeline")
2996
+ * .for("deals")
2997
+ * .kanban("stage")
2998
+ * .columns("name", "amount", "company")
2999
+ * .build();
3000
+ *
3001
+ * // Table view with internal tabs (filter presets)
3002
+ * const CONTACTS_WITH_TABS = listView("default", "Contacts")
3003
+ * .for("contacts")
3004
+ * .default()
3005
+ * .columns("firstName", "lastName", "email", "status")
3006
+ * .tab("all", "All Contacts").icon("users").default()
3007
+ * .tab("active", "Active").icon("check").filter({
3008
+ * combinator: "and",
3009
+ * rules: [{ attribute: "status", operator: "is", value: "active" }]
3010
+ * })
3011
+ * .tab("archived", "Archived").icon("archive").filter({
3012
+ * combinator: "and",
3013
+ * rules: [{ attribute: "status", operator: "is", value: "archived" }]
3014
+ * })
3015
+ * .build();
3016
+ * ```
3017
+ */
3018
+ declare function listView(name: string, label: string): ListViewBuilder;
2710
3019
  /**
2711
3020
  * Create a new group builder
2712
3021
  *
@@ -3009,6 +3318,463 @@ declare class WorkflowBuilder {
3009
3318
  */
3010
3319
  declare function workflow(name: string, label: string): WorkflowBuilder;
3011
3320
 
3321
+ /**
3322
+ * Flag Builder Module
3323
+ *
3324
+ * Provides fluent builders for creating feature flag definitions.
3325
+ * Follows the same pattern as attribute builders.
3326
+ *
3327
+ * @example
3328
+ * ```typescript
3329
+ * const architectMode = booleanFlag("architect-mode")
3330
+ * .label("Architect Mode")
3331
+ * .description("Enable WYSIWYG structure editing")
3332
+ * .tenantScoped()
3333
+ * .build();
3334
+ *
3335
+ * const tier = stringFlag("tier")
3336
+ * .label("Product Tier")
3337
+ * .defaultValue("free")
3338
+ * .tenantScoped()
3339
+ * .build();
3340
+ * ```
3341
+ */
3342
+
3343
+ /**
3344
+ * Base builder for all flag types.
3345
+ * Provides common methods like label(), description(), category().
3346
+ */
3347
+ declare abstract class BaseFlagBuilder<T, TValueType extends FlagValueType> {
3348
+ protected flag: Partial<FeatureFlagDefinition<T>>;
3349
+ constructor(name: string, valueType: TValueType, defaultValue: T);
3350
+ /**
3351
+ * Set the human-readable label for the flag.
3352
+ * Required - build() will throw if not set.
3353
+ */
3354
+ label(value: string): this;
3355
+ /**
3356
+ * Set an optional description for the flag.
3357
+ */
3358
+ description(value: string): this;
3359
+ /**
3360
+ * Set a category for grouping flags in UI.
3361
+ */
3362
+ category(value: string): this;
3363
+ /**
3364
+ * Mark this flag as a system flag.
3365
+ * System flags cannot be modified via API.
3366
+ */
3367
+ system(): this;
3368
+ /**
3369
+ * Restrict the flag to global and tenant levels only.
3370
+ * Per-user overrides will not be allowed.
3371
+ */
3372
+ tenantScoped(): this;
3373
+ /**
3374
+ * Restrict the flag to global level only.
3375
+ * No tenant or user overrides will be allowed.
3376
+ */
3377
+ globalOnly(): this;
3378
+ /**
3379
+ * Set custom allowed levels.
3380
+ */
3381
+ allowedLevels(levels: FlagLevel[]): this;
3382
+ /**
3383
+ * Build the flag definition.
3384
+ * @throws {Error} If label is not set
3385
+ */
3386
+ build(): FeatureFlagDefinition<T>;
3387
+ }
3388
+ /**
3389
+ * Builder for boolean flags (on/off toggles).
3390
+ */
3391
+ declare class BooleanFlagBuilder extends BaseFlagBuilder<boolean, "boolean"> {
3392
+ constructor(name: string);
3393
+ /**
3394
+ * Set the default value (default: false).
3395
+ */
3396
+ defaultValue(value: boolean): this;
3397
+ /**
3398
+ * Set the default to true.
3399
+ * Shorthand for .defaultValue(true).
3400
+ */
3401
+ enabledByDefault(): this;
3402
+ }
3403
+ /**
3404
+ * Builder for string flags (text values).
3405
+ */
3406
+ declare class StringFlagBuilder extends BaseFlagBuilder<string, "string"> {
3407
+ constructor(name: string);
3408
+ /**
3409
+ * Set the default value.
3410
+ */
3411
+ defaultValue(value: string): this;
3412
+ }
3413
+ /**
3414
+ * Builder for number flags (numeric values).
3415
+ */
3416
+ declare class NumberFlagBuilder extends BaseFlagBuilder<number, "number"> {
3417
+ constructor(name: string);
3418
+ /**
3419
+ * Set the default value.
3420
+ */
3421
+ defaultValue(value: number): this;
3422
+ }
3423
+ /**
3424
+ * Builder for JSON flags (complex structured values).
3425
+ */
3426
+ declare class JsonFlagBuilder<T> extends BaseFlagBuilder<T, "json"> {
3427
+ constructor(name: string, defaultValue: T);
3428
+ /**
3429
+ * Set the default value.
3430
+ */
3431
+ defaultValue(value: T): this;
3432
+ }
3433
+ /**
3434
+ * Create a boolean feature flag builder.
3435
+ *
3436
+ * @param name - Flag name in kebab-case (e.g., "architect-mode")
3437
+ * @returns A builder for configuring the flag
3438
+ *
3439
+ * @example
3440
+ * ```typescript
3441
+ * const flag = booleanFlag("architect-mode")
3442
+ * .label("Architect Mode")
3443
+ * .description("Enable WYSIWYG structure editing")
3444
+ * .tenantScoped()
3445
+ * .build();
3446
+ * ```
3447
+ */
3448
+ declare function booleanFlag(name: string): BooleanFlagBuilder;
3449
+ /**
3450
+ * Create a string feature flag builder.
3451
+ *
3452
+ * @param name - Flag name in kebab-case (e.g., "tier")
3453
+ * @returns A builder for configuring the flag
3454
+ *
3455
+ * @example
3456
+ * ```typescript
3457
+ * const flag = stringFlag("tier")
3458
+ * .label("Product Tier")
3459
+ * .defaultValue("free")
3460
+ * .tenantScoped()
3461
+ * .build();
3462
+ * ```
3463
+ */
3464
+ declare function stringFlag(name: string): StringFlagBuilder;
3465
+ /**
3466
+ * Create a number feature flag builder.
3467
+ *
3468
+ * @param name - Flag name in kebab-case (e.g., "max-users")
3469
+ * @returns A builder for configuring the flag
3470
+ *
3471
+ * @example
3472
+ * ```typescript
3473
+ * const flag = numberFlag("max-users")
3474
+ * .label("Maximum Users")
3475
+ * .defaultValue(5)
3476
+ * .tenantScoped()
3477
+ * .build();
3478
+ * ```
3479
+ */
3480
+ declare function numberFlag(name: string): NumberFlagBuilder;
3481
+ /**
3482
+ * Create a JSON feature flag builder for complex structured values.
3483
+ *
3484
+ * @param name - Flag name in kebab-case
3485
+ * @param defaultValue - Default structured value
3486
+ * @returns A builder for configuring the flag
3487
+ *
3488
+ * @example
3489
+ * ```typescript
3490
+ * const flag = jsonFlag("ui-config", { theme: "light", density: "normal" })
3491
+ * .label("UI Configuration")
3492
+ * .category("appearance")
3493
+ * .build();
3494
+ * ```
3495
+ */
3496
+ declare function jsonFlag<T>(name: string, defaultValue: T): JsonFlagBuilder<T>;
3497
+
3498
+ /**
3499
+ * Flag Registry Module
3500
+ *
3501
+ * Provides a centralized registry for feature flag definitions.
3502
+ * Similar to the native object registry but for feature flags.
3503
+ *
3504
+ * @example
3505
+ * ```typescript
3506
+ * // Register flags
3507
+ * flagRegistry.register(architectModeFlag);
3508
+ * flagRegistry.register(tierFlag);
3509
+ *
3510
+ * // Get flag definition
3511
+ * const flag = flagRegistry.get("architect-mode");
3512
+ *
3513
+ * // List all flags
3514
+ * const allFlags = flagRegistry.list();
3515
+ * ```
3516
+ */
3517
+
3518
+ /**
3519
+ * Registry for feature flag definitions.
3520
+ * Provides registration, retrieval, and listing capabilities.
3521
+ */
3522
+ declare class FlagRegistry {
3523
+ private flags;
3524
+ /**
3525
+ * Register a feature flag definition.
3526
+ *
3527
+ * @param flag - The flag definition to register
3528
+ * @throws {Error} If a flag with the same name is already registered
3529
+ *
3530
+ * @example
3531
+ * ```typescript
3532
+ * registry.register(booleanFlag("my-feature")
3533
+ * .label("My Feature")
3534
+ * .build()
3535
+ * );
3536
+ * ```
3537
+ */
3538
+ register<T>(flag: FeatureFlagDefinition<T>): void;
3539
+ /**
3540
+ * Register multiple flags at once.
3541
+ *
3542
+ * @param flags - Array of flag definitions to register
3543
+ */
3544
+ registerAll(flags: FeatureFlagDefinition[]): void;
3545
+ /**
3546
+ * Get a flag definition by name.
3547
+ *
3548
+ * @param name - The flag name
3549
+ * @returns The flag definition or undefined if not found
3550
+ */
3551
+ get<T = unknown>(name: string): FeatureFlagDefinition<T> | undefined;
3552
+ /**
3553
+ * Get a flag definition by name, throwing if not found.
3554
+ *
3555
+ * @param name - The flag name
3556
+ * @returns The flag definition
3557
+ * @throws {Error} If the flag is not registered
3558
+ */
3559
+ getOrThrow<T = unknown>(name: string): FeatureFlagDefinition<T>;
3560
+ /**
3561
+ * Check if a flag is registered.
3562
+ *
3563
+ * @param name - The flag name
3564
+ * @returns true if the flag is registered
3565
+ */
3566
+ has(name: string): boolean;
3567
+ /**
3568
+ * List all registered flag definitions.
3569
+ *
3570
+ * @returns Array of all flag definitions
3571
+ */
3572
+ list(): FeatureFlagDefinition[];
3573
+ /**
3574
+ * List all registered flag names.
3575
+ *
3576
+ * @returns Array of flag names
3577
+ */
3578
+ listNames(): string[];
3579
+ /**
3580
+ * List flags filtered by category.
3581
+ *
3582
+ * @param category - The category to filter by
3583
+ * @returns Array of flag definitions in the category
3584
+ */
3585
+ listByCategory(category: string): FeatureFlagDefinition[];
3586
+ /**
3587
+ * Get all unique categories.
3588
+ *
3589
+ * @returns Array of unique category names
3590
+ */
3591
+ getCategories(): string[];
3592
+ /**
3593
+ * Get the default value for a flag.
3594
+ *
3595
+ * @param name - The flag name
3596
+ * @returns The default value or undefined if flag not found
3597
+ */
3598
+ getDefaultValue<T = unknown>(name: string): T | undefined;
3599
+ /**
3600
+ * Get a map of all flag names to their default values.
3601
+ *
3602
+ * @returns Map of flag names to default values
3603
+ */
3604
+ getDefaults(): Map<string, unknown>;
3605
+ /**
3606
+ * Unregister a flag (mainly for testing).
3607
+ *
3608
+ * @param name - The flag name to unregister
3609
+ * @returns true if the flag was removed, false if it didn't exist
3610
+ */
3611
+ unregister(name: string): boolean;
3612
+ /**
3613
+ * Clear all registered flags (mainly for testing).
3614
+ */
3615
+ clear(): void;
3616
+ /**
3617
+ * Get the number of registered flags.
3618
+ */
3619
+ get size(): number;
3620
+ }
3621
+ /**
3622
+ * Global flag registry instance.
3623
+ *
3624
+ * @example
3625
+ * ```typescript
3626
+ * import { flagRegistry, booleanFlag } from "@stndrds/schema";
3627
+ *
3628
+ * // Register flags at app startup
3629
+ * flagRegistry.register(
3630
+ * booleanFlag("architect-mode")
3631
+ * .label("Architect Mode")
3632
+ * .tenantScoped()
3633
+ * .build()
3634
+ * );
3635
+ *
3636
+ * // Access from anywhere
3637
+ * const flags = flagRegistry.list();
3638
+ * ```
3639
+ */
3640
+ declare const flagRegistry: FlagRegistry;
3641
+ /**
3642
+ * Create a new isolated flag registry.
3643
+ * Useful for testing or multi-app scenarios.
3644
+ *
3645
+ * @returns A new FlagRegistry instance
3646
+ */
3647
+ declare function createFlagRegistry(): FlagRegistry;
3648
+
3649
+ /**
3650
+ * Flag Service Module
3651
+ *
3652
+ * Provides flag resolution with priority-based override handling.
3653
+ * Resolves flags from static defaults and optional database overrides.
3654
+ *
3655
+ * Resolution order (highest priority first):
3656
+ * 1. User override (if allowed)
3657
+ * 2. Tenant override (if allowed)
3658
+ * 3. Global override
3659
+ * 4. Static default from flag definition
3660
+ *
3661
+ * @example
3662
+ * ```typescript
3663
+ * const service = new FlagService(adapter, registry, staticDefaults);
3664
+ *
3665
+ * // Resolve all flags for current context
3666
+ * const flags = await service.resolveAll();
3667
+ *
3668
+ * // Check specific flag
3669
+ * const enabled = await service.isEnabled("architect-mode");
3670
+ * ```
3671
+ */
3672
+
3673
+ /**
3674
+ * Options for creating a FlagService instance.
3675
+ */
3676
+ interface FlagServiceOptions {
3677
+ /** Optional feature flags repository for database overrides */
3678
+ repository?: FeatureFlagsRepository;
3679
+ /** Flag registry containing flag definitions */
3680
+ registry: FlagRegistry;
3681
+ /** Static default values from module configuration */
3682
+ staticDefaults?: StaticFlagDefault[];
3683
+ }
3684
+ /**
3685
+ * Context for flag resolution (tenant and user IDs).
3686
+ */
3687
+ interface FlagResolutionContext {
3688
+ /** Current tenant ID */
3689
+ tenantId?: string;
3690
+ /** Current user ID */
3691
+ userId?: string;
3692
+ }
3693
+ /**
3694
+ * Service for resolving feature flag values.
3695
+ *
3696
+ * Combines static defaults with database overrides following
3697
+ * the priority: user > tenant > global > default.
3698
+ */
3699
+ declare class FlagService {
3700
+ private readonly repository?;
3701
+ private readonly registry;
3702
+ private readonly staticDefaults;
3703
+ constructor(options: FlagServiceOptions);
3704
+ /**
3705
+ * Resolve all flags for the current context.
3706
+ * Returns a Map suitable for runWithFeatureFlags().
3707
+ *
3708
+ * @param context - Resolution context with tenant/user IDs
3709
+ * @returns Map of flag names to resolved values
3710
+ */
3711
+ resolveAll(context?: FlagResolutionContext): Promise<Map<string, unknown>>;
3712
+ /**
3713
+ * Resolve a single flag with full metadata.
3714
+ *
3715
+ * @param flagName - The flag to resolve
3716
+ * @param context - Resolution context
3717
+ * @returns Resolved flag with source information
3718
+ */
3719
+ resolve<T = unknown>(flagName: string, context?: FlagResolutionContext): Promise<ResolvedFlag<T>>;
3720
+ /**
3721
+ * Quick check if a boolean flag is enabled.
3722
+ *
3723
+ * @param flagName - The flag to check
3724
+ * @param context - Resolution context
3725
+ * @returns true if the flag value is exactly true
3726
+ */
3727
+ isEnabled(flagName: string, context?: FlagResolutionContext): Promise<boolean>;
3728
+ /**
3729
+ * Get a flag value with type inference.
3730
+ *
3731
+ * @param flagName - The flag to get
3732
+ * @param context - Resolution context
3733
+ * @returns The resolved flag value
3734
+ */
3735
+ getValue<T = unknown>(flagName: string, context?: FlagResolutionContext): Promise<T>;
3736
+ /**
3737
+ * Set an override for a flag.
3738
+ *
3739
+ * @param flagName - The flag to override
3740
+ * @param level - The level of the override
3741
+ * @param value - The override value
3742
+ * @param options - Additional options
3743
+ */
3744
+ setOverride<T>(flagName: string, level: FlagLevel, value: T, options?: {
3745
+ targetId?: string;
3746
+ expiresAt?: Date;
3747
+ createdBy?: string;
3748
+ }): Promise<void>;
3749
+ /**
3750
+ * Delete an override.
3751
+ *
3752
+ * @param flagName - The flag name
3753
+ * @param level - The level to delete
3754
+ * @param targetId - Optional target ID for tenant/user level
3755
+ */
3756
+ deleteOverride(flagName: string, level: FlagLevel, targetId?: string): Promise<void>;
3757
+ /**
3758
+ * Get all overrides organized by level.
3759
+ */
3760
+ private getAllOverrides;
3761
+ /**
3762
+ * Resolve a flag value from overrides and defaults.
3763
+ */
3764
+ private resolveValue;
3765
+ /**
3766
+ * Resolve a flag value with source information.
3767
+ */
3768
+ private resolveWithSource;
3769
+ }
3770
+ /**
3771
+ * Create a FlagService instance.
3772
+ *
3773
+ * @param options - Service options
3774
+ * @returns A new FlagService instance
3775
+ */
3776
+ declare function createFlagService(options: FlagServiceOptions): FlagService;
3777
+
3012
3778
  /**
3013
3779
  * Native Notes Object
3014
3780
  *
@@ -3060,6 +3826,127 @@ declare const NOTES: ObjectBuilder<{
3060
3826
  linkedTo?: string | undefined;
3061
3827
  }>;
3062
3828
 
3829
+ /**
3830
+ * View Auto-Generator
3831
+ *
3832
+ * Generates fallback views from object definitions.
3833
+ * Used when no custom view is defined (lazy creation pattern).
3834
+ *
3835
+ * @example
3836
+ * ```typescript
3837
+ * import { generateFallbackView } from "@stndrds/schema";
3838
+ *
3839
+ * const view = generateFallbackView(objectDefinition, "detail");
3840
+ * // Returns a DetailViewDefinition with all visible attributes
3841
+ * ```
3842
+ */
3843
+
3844
+ interface GenerateFallbackViewOptions {
3845
+ /**
3846
+ * Include activity tab in detail views.
3847
+ * @default true
3848
+ */
3849
+ includeActivityTab?: boolean;
3850
+ /**
3851
+ * Include notes tab in detail views.
3852
+ * @default true
3853
+ */
3854
+ includeNotesTab?: boolean;
3855
+ /**
3856
+ * Include documents tab in detail views (if object has document attributes).
3857
+ * @default true
3858
+ */
3859
+ includeDocumentsTab?: boolean;
3860
+ /**
3861
+ * Include flows tab in detail views.
3862
+ * @default false
3863
+ */
3864
+ includeFlowsTab?: boolean;
3865
+ /**
3866
+ * Attributes to exclude from the generated view.
3867
+ */
3868
+ excludeAttributes?: string[];
3869
+ /**
3870
+ * Maximum number of columns for list views.
3871
+ * @default 5
3872
+ */
3873
+ maxListColumns?: number;
3874
+ }
3875
+ /**
3876
+ * Generate a default detail view from an object definition.
3877
+ *
3878
+ * @param object - The object definition
3879
+ * @param options - Generation options
3880
+ * @returns A generated DetailViewDefinition
3881
+ */
3882
+ declare function generateDefaultDetailView(object: ObjectDefinition, options?: GenerateFallbackViewOptions): DetailViewDefinition;
3883
+ /**
3884
+ * Generate a default list view from an object definition.
3885
+ *
3886
+ * @param object - The object definition
3887
+ * @param options - Generation options
3888
+ * @returns A generated ListViewDefinition
3889
+ */
3890
+ declare function generateDefaultListView(object: ObjectDefinition, options?: GenerateFallbackViewOptions): ListViewDefinition;
3891
+ /**
3892
+ * Generate a fallback view for any supported type.
3893
+ *
3894
+ * @param object - The object definition
3895
+ * @param type - View type to generate
3896
+ * @param options - Generation options
3897
+ * @returns A generated ViewDefinition
3898
+ */
3899
+ declare function generateFallbackView(object: ObjectDefinition, type: ViewType, options?: GenerateFallbackViewOptions): ViewDefinition;
3900
+
3901
+ /**
3902
+ * View Reset Utilities
3903
+ *
3904
+ * Functions for resetting views to their default state.
3905
+ *
3906
+ * @example
3907
+ * ```typescript
3908
+ * import { resetViewToDefault } from "@stndrds/schema";
3909
+ *
3910
+ * // Reset a detail view to its auto-generated default
3911
+ * const resetView = resetViewToDefault(currentView, objectDefinition);
3912
+ * ```
3913
+ */
3914
+
3915
+ interface ResetViewOptions extends GenerateFallbackViewOptions {
3916
+ /**
3917
+ * Preserve custom tabs (type: "custom") from the current view.
3918
+ * @default true
3919
+ */
3920
+ preserveCustomTabs?: boolean;
3921
+ /**
3922
+ * Preserve table tabs from the current view.
3923
+ * @default true
3924
+ */
3925
+ preserveTableTabs?: boolean;
3926
+ /**
3927
+ * Preserve view metadata (id, name, label, description).
3928
+ * @default true
3929
+ */
3930
+ preserveMetadata?: boolean;
3931
+ }
3932
+ /**
3933
+ * Reset a view to its default state based on the object definition.
3934
+ *
3935
+ * @param currentView - The current view to reset
3936
+ * @param object - The object definition
3937
+ * @param options - Reset options
3938
+ * @returns A new ViewDefinition with reset structure
3939
+ */
3940
+ declare function resetViewToDefault(currentView: ViewDefinition, object: ObjectDefinition, options?: ResetViewOptions): ViewDefinition;
3941
+ /**
3942
+ * Check if a view has been customized from its default state.
3943
+ *
3944
+ * @param view - The view to check
3945
+ * @param object - The object definition
3946
+ * @returns true if the view differs from the default
3947
+ */
3948
+ declare function isViewCustomized(view: ViewDefinition, object: ObjectDefinition): boolean;
3949
+
3063
3950
  declare const SYSTEM_TEMPLATE_IDS: {
3064
3951
  readonly FRENCH_ID_CARD: "00000000-0000-0000-0001-000000000001";
3065
3952
  readonly PASSPORT: "00000000-0000-0000-0001-000000000002";
@@ -3115,4 +4002,4 @@ declare function getSystemTemplate(name: string): DocumentTemplate | undefined;
3115
4002
  */
3116
4003
  declare function isSystemTemplate(name: string): boolean;
3117
4004
 
3118
- export { ALL_SYSTEM_RESOURCES, ActivityTabConfig, type AgentContentPart, type AgentMessage, type AnyAttributeBuilder, Attribute, AttributeGroupField, AttributeInUseError, AttributeNotFoundError, AttributeType, type AttributeUsage, AuthMethodSchema, type BuilderConfig, type ChatFileAttachment, CheckboxAttribute, ConcurrentModificationError, ConditionGroup, ConditionGroupSchema, ConditionNodeSchema, ConditionOperatorSchema, ConditionRule, ConditionRuleSchema, CreateShareInputSchema, CurrencyAttribute, CustomTabConfig, DEFAULT_ROLES, DEFAULT_ROLE_DESCRIPTIONS, DEFAULT_ROLE_LABELS, DEFAULT_ROLE_PERMISSIONS, DRIVING_LICENSE, DateAttribute, type DefaultRoleName, type DefaultRolePermissionConfig, DirectTableTab, DirectTableTabConfig, DocumentAttribute, DocumentNodeSchema, DocumentTemplate, DocumentsTabConfig, DuplicateError, EMPTY_VALUE_PLACEHOLDER, EndNodeSchema, type ExtractAttributeName, type ExtractAttributeRequired, FRENCH_ID_CARD, Field, FileAttribute, FileNotFoundError, FilterState, FlowRow, FlowRowFieldSchema, FlowRowSchema, FlowsTabConfig, ForbiddenError, FormFieldRefSchema, FormNodeSchema, FormulaAttribute, FormulaReturnType, GENERIC_DOCUMENT, Group, GroupBuilder, InferAttributeValue, InstanceStatus, InverseTableTab, InverseTableTabConfig, LocationAttribute, MultiRelationAttribute, MultiselectAttribute, NOTES, NodePositionSchema, NotFoundError, NotSystemObjectError, NotesTabConfig, NumberAttribute, ObjectAction, ObjectBuilder, ObjectDefinition, ObjectNotFoundError, ObjectReferencedError, Option, PASSPORT, PROOF_OF_ADDRESS, PhoneAttribute, ProtectedResourceError, ProtectedRoleError, RatingAttribute, RecordNotFoundError, type RecordReference, RecordReferencedError, RelationTarget, type ResumeWorkflowApiInput, RichtextAttribute, RichtextFeature, RoleNotFoundError, RollupAttribute, RollupFunction, SIGNABLE_CONTRACT, SYSTEM_ATTRIBUTES, SYSTEM_RESOURCES, SYSTEM_RESOURCE_LABELS, SYSTEM_TEMPLATES, SYSTEM_TEMPLATE_IDS, SchemaError, SchemaErrorCode, SelectAttribute, ShareStatusSchema, SingleRelationAttribute, SlotMode, SlotModeSchema, SortRule, StartNodeSchema, type StartWorkflowApiInput, StatusAttribute, SyncError, SystemAction, type SystemAttribute, type SystemAttributeName, SystemResource, Tab, TabBuilder, TableTab, TextAreaAttribute, TextAttribute, ThemeColorsSchema, ThemeLogoSchema, type TypedBuilderConfig, UserAttribute, UserProfileNotFoundError, type ValidatedConditionGroup, type ValidatedWorkflowDefinition, type ValidatedWorkflowNode, ValidationError, type ValidationErrorDetail, ViewBuilder, ViewDefinition, ViewLayout, ViewportSchema, WorkflowBuilder, WorkflowConditionBuilder, WorkflowConfig, WorkflowConfigSchema, WorkflowDefinition, WorkflowDefinitionSchema, WorkflowEndBuilder, type WorkflowEvent, type WorkflowEventType, WorkflowFormBuilder, WorkflowFormRowBuilder, type WorkflowGrantRevokedEvent, type WorkflowInstanceCancelledEvent, type WorkflowInstanceCompletedEvent, type WorkflowInstanceFailedEvent, type WorkflowInstanceStartedEvent, type WorkflowInvitationAcceptedEvent, type WorkflowInvitationCreatedEvent, type WorkflowInvitationExpiredEvent, WorkflowLayoutSchema, WorkflowNode, type WorkflowNodeCompletedEvent, type WorkflowNodeEnteredEvent, type WorkflowNodeFailedEvent, WorkflowNodeSchema, WorkflowShareSchema, WorkflowSimpleFormBuilder, WorkflowSlotSchema, WorkflowStartBuilder, WorkflowStatusSchema, WorkflowTheme, WorkflowThemeSchema, checkbox, currency, date, document, file, formatAttributeValue, formula, getSystemAttributeList, getSystemTemplate, group, isConcurrentModificationError, isDefaultRole, isForbiddenError, isInstanceEvent, isInvitationOrGrantEvent, isNodeEvent, isNotFoundError, isProtectedResourceError, isSchemaError, isSystemAttribute, isSystemAttributeObject, isSystemTemplate, isValidationError, location, multiselect, number, object, phone, rating, relation, richtext, rollup, select, status, text, textarea, user, view, workflow };
4005
+ export { ALL_SYSTEM_RESOURCES, ActivityTabConfig, type AgentContentPart, type AgentMessage, type AnyAttributeBuilder, Attribute, AttributeGroupField, AttributeInUseError, AttributeNotFoundError, AttributeType, type AttributeUsage, AuthMethodSchema, BEHAVIOR_PROPERTIES, type BehaviorProperty, type BuilderConfig, type ChatFileAttachment, CheckboxAttribute, ConcurrentModificationError, ConditionGroup, ConditionGroupSchema, ConditionNodeSchema, ConditionOperatorSchema, ConditionRule, ConditionRuleSchema, CreateShareInputSchema, CurrencyAttribute, CustomTabConfig, DEFAULT_ROLES, DEFAULT_ROLE_DESCRIPTIONS, DEFAULT_ROLE_LABELS, DEFAULT_ROLE_PERMISSIONS, DRIVING_LICENSE, DateAttribute, type DefaultRoleName, type DefaultRolePermissionConfig, DetailViewBuilder, DetailViewDefinition, DetailViewLayout, DirectTableTab, DirectTableTabConfig, DocumentAttribute, DocumentNodeSchema, DocumentTemplate, DocumentsTabConfig, DuplicateError, EMPTY_VALUE_PLACEHOLDER, EndNodeSchema, type ExtractAttributeName, type ExtractAttributeRequired, FRENCH_ID_CARD, FeatureFlagDefinition, FeatureFlagsRepository, FeatureGate, Field, FileAttribute, FileNotFoundError, FilterState, FlagLevel, FlagRegistry, type FlagResolutionContext, FlagService, type FlagServiceOptions, FlagValueType, FlowRow, FlowRowFieldSchema, FlowRowSchema, FlowsTabConfig, ForbiddenError, FormFieldRefSchema, FormNodeSchema, FormulaAttribute, FormulaReturnType, GENERIC_DOCUMENT, type GenerateFallbackViewOptions, Group, GroupBuilder, IDENTITY_PROPERTIES, type IdentityProperty, InferAttributeValue, InstanceStatus, InverseTableTab, InverseTableTabConfig, ListViewBuilder, ListViewDefinition, ListViewTabConfigBuilder, LocationAttribute, MultiRelationAttribute, MultiselectAttribute, NOTES, NodePositionSchema, NotFoundError, NotSystemObjectError, NotesTabConfig, NumberAttribute, ObjectAction, ObjectBuilder, ObjectDefinition, ObjectNotFoundError, ObjectReferencedError, Option, PASSPORT, PRESENTATION_PROPERTIES, PROOF_OF_ADDRESS, PhoneAttribute, type PresentationProperty, ProtectedResourceError, ProtectedRoleError, RatingAttribute, RecordNotFoundError, type RecordReference, RecordReferencedError, RelationTarget, type ResetViewOptions, ResolvedFlag, type ResumeWorkflowApiInput, RichtextAttribute, RichtextFeature, RoleNotFoundError, RollupAttribute, RollupFunction, SIGNABLE_CONTRACT, SYSTEM_ATTRIBUTES, SYSTEM_RESOURCES, SYSTEM_RESOURCE_LABELS, SYSTEM_TEMPLATES, SYSTEM_TEMPLATE_IDS, SchemaError, SchemaErrorCode, SelectAttribute, ShareStatusSchema, SingleRelationAttribute, SlotMode, SlotModeSchema, SortRule, StartNodeSchema, type StartWorkflowApiInput, StaticFlagDefault, StatusAttribute, SyncError, SystemAction, type SystemAttribute, type SystemAttributeName, SystemResource, Tab, TabBuilder, TableTab, TextAreaAttribute, TextAttribute, ThemeColorsSchema, ThemeLogoSchema, type TypedBuilderConfig, UserAttribute, UserProfileNotFoundError, type ValidatedConditionGroup, type ValidatedWorkflowDefinition, type ValidatedWorkflowNode, ValidationError, type ValidationErrorDetail, ViewBuilder, ViewDefinition, ViewType, ViewportSchema, WorkflowBuilder, WorkflowConditionBuilder, WorkflowConfig, WorkflowConfigSchema, WorkflowDefinition, WorkflowDefinitionSchema, WorkflowEndBuilder, type WorkflowEvent, type WorkflowEventType, WorkflowFormBuilder, WorkflowFormRowBuilder, type WorkflowGrantRevokedEvent, type WorkflowInstanceCancelledEvent, type WorkflowInstanceCompletedEvent, type WorkflowInstanceFailedEvent, type WorkflowInstanceStartedEvent, type WorkflowInvitationAcceptedEvent, type WorkflowInvitationCreatedEvent, type WorkflowInvitationExpiredEvent, WorkflowLayoutSchema, WorkflowNode, type WorkflowNodeCompletedEvent, type WorkflowNodeEnteredEvent, type WorkflowNodeFailedEvent, WorkflowNodeSchema, WorkflowShareSchema, WorkflowSimpleFormBuilder, WorkflowSlotSchema, WorkflowStartBuilder, WorkflowStatusSchema, WorkflowTheme, WorkflowThemeSchema, booleanFlag, checkbox, createFlagRegistry, createFlagService, currency, date, detailView, document, file, flagRegistry, formatAttributeValue, formula, generateDefaultDetailView, generateDefaultListView, generateFallbackView, getSystemAttributeList, getSystemTemplate, group, hasProperties, isBehaviorProperty, isDefaultRole, isEmpty, isForbiddenError, isIdentityProperty, isInstanceEvent, isInvitationOrGrantEvent, isNodeEvent, isNotEmpty, isNotFoundError, isPresentationProperty, isProtectedResourceError, isSchemaError, isSystemAttribute, isSystemAttributeObject, isSystemTemplate, isValidationError, isViewCustomized, jsonFlag, listView, location, multiselect, number, numberFlag, object, phone, rating, relation, resetViewToDefault, richtext, rollup, select, status, stringFlag, text, textarea, toUndefinedIfEmpty, user, view, workflow };