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

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