Skip to content

@purista/core v2.0.5


PURISTA API / @purista/core / SubscriptionDefinition

Type Alias: SubscriptionDefinition<S, TransformInputPayload, TransformInputParams, FunctionPayloadType, FunctionParamsType, FunctionOutputType, FinalFunctionOutputType, TransformOutputHookOutput, Resources, Invokes, EmitList, MetadataType>

SubscriptionDefinition<S, TransformInputPayload, TransformInputParams, FunctionPayloadType, FunctionParamsType, FunctionOutputType, FinalFunctionOutputType, TransformOutputHookOutput, Resources, Invokes, EmitList, MetadataType>: object

Defined in: packages/core/src/core/types/subscription/SubscriptionDefinition.ts:25

The definition for a subscription provided by some service.

Type Parameters

S extends Service

TransformInputPayload

TransformInputParams

FunctionPayloadType

FunctionParamsType

FunctionOutputType

FinalFunctionOutputType

TransformOutputHookOutput

Resources extends Record<string, any>

Invokes extends InvokeList

EmitList extends Record<string, Schema>

MetadataType extends SubscriptionDefinitionMetadataBase = SubscriptionDefinitionMetadataBase

Type declaration

call

call: SubscriptionFunction<S, FunctionPayloadType, FunctionParamsType, FunctionOutputType, Resources, Invokes, EmitList>

the subscription function

deprecated

deprecated: boolean

emitEventName?

optional emitEventName: string

event name to be used for custom message if the subscription functions returns value

emitList

emitList: FromEmitToOtherType<EmitList, SchemaObject>

eventBridgeConfig

eventBridgeConfig: DefinitionEventBridgeConfig

config information for event bridge

eventName?

optional eventName: string

filter forevent name

hooks

hooks: object

hooks of subscription

hooks.afterGuard?

optional hooks.afterGuard: Record<string, SubscriptionAfterGuardHook<S, FunctionPayloadType, FunctionParamsType, FunctionOutputType, Resources, Invokes, EmitList>>

hooks.beforeGuard?

optional hooks.beforeGuard: Record<string, SubscriptionBeforeGuardHook<S, FunctionPayloadType, FunctionParamsType, Resources, Invokes, EmitList>>

hooks.transformInput?

optional hooks.transformInput: object

hooks.transformInput.transformFunction

hooks.transformInput.transformFunction: SubscriptionTransformInputHook<S, TransformInputPayload, TransformInputParams, FunctionPayloadType, FunctionParamsType>

hooks.transformInput.transformInputSchema

hooks.transformInput.transformInputSchema: Schema

hooks.transformInput.transformParameterSchema

hooks.transformInput.transformParameterSchema: Schema

hooks.transformOutput?

optional hooks.transformOutput: object

hooks.transformOutput.transformFunction

hooks.transformOutput.transformFunction: SubscriptionTransformOutputHook<S, FinalFunctionOutputType, FunctionParamsType, TransformOutputHookOutput>

hooks.transformOutput.transformOutputSchema

hooks.transformOutput.transformOutputSchema: Schema

invokes

invokes: FromInvokeToOtherType<Invokes, { outputSchema: SchemaObject; parameterSchema: SchemaObject; payloadSchema: SchemaObject; }>

messageType?

optional messageType: EBMessageType

filter for message type

metadata

metadata: MetadataType

the metadata of the subscription

principalId?

optional principalId: PrincipalId

filter for principal id

receiver?

optional receiver: object

filter for messages consumed by given receiver

receiver.instanceId?

optional receiver.instanceId: InstanceId

receiver.serviceName?

optional receiver.serviceName: string

receiver.serviceTarget?

optional receiver.serviceTarget: string

receiver.serviceVersion?

optional receiver.serviceVersion: string

sender?

optional sender: object

filter for messages produced by given sender

sender.instanceId?

optional sender.instanceId: InstanceId

sender.serviceName?

optional sender.serviceName: string

sender.serviceTarget?

optional sender.serviceTarget: string

sender.serviceVersion?

optional sender.serviceVersion: string

subscriptionDescription

subscriptionDescription: string

the description of the subscription

subscriptionName

subscriptionName: string

the name of the subscription

tenantId?

optional tenantId: TenantId

filter for tenant id