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