Class EntityMutatorFactory<TFields, TID, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>

The primary interface for creating, mutating, and deleting entities.

Type Parameters

  • TFields extends object

  • TID extends NonNullable<TFields[TSelectedFields]>

  • TViewerContext extends ViewerContext

  • TEntity extends Entity<TFields, TID, TViewerContext, TSelectedFields>

  • TPrivacyPolicy extends EntityPrivacyPolicy<TFields, TID, TViewerContext, TEntity, TSelectedFields>

  • TSelectedFields extends keyof TFields = keyof TFields

Hierarchy

  • EntityMutatorFactory

Constructors

  • Type Parameters

    • TFields extends object

    • TID extends {}

    • TViewerContext extends ViewerContext<TViewerContext>

    • TEntity extends Entity<TFields, TID, TViewerContext, TSelectedFields, TEntity>

    • TPrivacyPolicy extends EntityPrivacyPolicy<TFields, TID, TViewerContext, TEntity, TSelectedFields, TPrivacyPolicy>

    • TSelectedFields extends string | number | symbol = keyof TFields

    Parameters

    Returns EntityMutatorFactory<TFields, TID, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>

Properties

databaseAdapter: EntityDatabaseAdapter<TFields>
entityClass: IEntityClass<TFields, TID, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>
entityCompanionProvider: EntityCompanionProvider
entityConfiguration: EntityConfiguration<TFields>
entityLoaderFactory: EntityLoaderFactory<TFields, TID, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>
metricsAdapter: IEntityMetricsAdapter
mutationTriggers: EntityMutationTriggerConfiguration<TFields, TID, TViewerContext, TEntity, TSelectedFields>
mutationValidators: EntityMutationValidator<TFields, TID, TViewerContext, TEntity, TSelectedFields>[]
privacyPolicy: TPrivacyPolicy

Methods

  • Vend mutator for creating a new entity in given query context.

    Parameters

    • viewerContext: TViewerContext

      viewer context of creating user

    • queryContext: EntityQueryContext

      query context in which to perform the create

    Returns CreateMutator<TFields, TID, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>

    mutator for creating an entity

  • Delete an existing entity in given query context.

    Parameters

    • existingEntity: TEntity

      entity to delete

    • queryContext: EntityQueryContext

      query context in which to perform the delete

    Returns DeleteMutator<TFields, TID, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>

  • Vend mutator for updating an existing entity in given query context.

    Parameters

    • existingEntity: TEntity

      entity to update

    • queryContext: EntityQueryContext

      query context in which to perform the update

    Returns UpdateMutator<TFields, TID, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>

    mutator for updating existingEntity

Generated using TypeDoc