@@ -146,27 +146,63 @@ export interface FireFlyEphemeralSubscription extends FireFlySubscriptionBase {
146
146
namespace : string ;
147
147
}
148
148
149
- export interface FireFlyEnrichedEvent extends FireFlyEventResponse {
150
- blockchainEvent ?: FireFlyBlockchainEventResponse ;
151
- contractAPI ?: FireFlyContractAPIResponse ;
152
- contractInterface ?: FireFlyContractInterfaceResponse ;
153
- datatype ?: FireFlyDatatypeResponse ;
154
- identity ?: FireFlyIdentityResponse ;
155
- message ?: FireFlyMessageResponse ;
156
- tokenApproval ?: FireFlyTokenApprovalResponse ;
157
- tokenPool ?: FireFlyTokenPoolResponse ;
158
- tokenTransfer ?: FireFlyTokenTransferResponse ;
159
- transaction ?: FireFlyTransactionResponse ;
160
- operation ?: FireFlyOperationResponse ;
161
- }
162
-
163
- export interface FireFlyEventDelivery extends FireFlyEnrichedEvent {
149
+ export type FireFlyEnrichedEvent = FireFlyEventResponse &
150
+ (
151
+ | {
152
+ type : 'transaction_submitted' ;
153
+ transaction : FireFlyTransactionResponse ;
154
+ }
155
+ | {
156
+ type : 'message_confirmed' | 'message_rejected' ;
157
+ message : FireFlyMessageResponse ;
158
+ }
159
+ | {
160
+ type : 'identity_confirmed' | 'identity_updated' ;
161
+ identity : FireFlyIdentityResponse ;
162
+ }
163
+ | {
164
+ type : 'token_pool_confirmed' ;
165
+ tokenPool : FireFlyTokenPoolResponse ;
166
+ }
167
+ | {
168
+ type : 'token_transfer_confirmed' ;
169
+ tokenTransfer : FireFlyTokenTransferResponse ;
170
+ }
171
+ | {
172
+ type : 'token_approval_confirmed' ;
173
+ tokenApproval : FireFlyTokenApprovalResponse ;
174
+ }
175
+ | {
176
+ type : 'contract_interface_confirmed' ;
177
+ contractInterface : FireFlyContractInterfaceResponse ;
178
+ }
179
+ | {
180
+ type : 'contract_api_confirmed' ;
181
+ contractAPI : FireFlyContractAPIResponse ;
182
+ }
183
+ | {
184
+ type : 'blockchain_event_received' ;
185
+ blockchainEvent : FireFlyBlockchainEventResponse ;
186
+ }
187
+ | {
188
+ type :
189
+ | 'token_pool_op_failed'
190
+ | 'token_approval_op_failed'
191
+ | 'blockchain_invoke_op_succeeded'
192
+ | 'blockchain_invoke_op_failed'
193
+ | 'blockchain_contract_deploy_op_succeeded'
194
+ | 'blockchain_contract_deploy_op_failed' ;
195
+ operation : FireFlyOperationResponse ;
196
+ }
197
+ ) ;
198
+
199
+ export type FireFlyEventDelivery = FireFlyEnrichedEvent & {
164
200
subscription : {
165
201
id : string ;
166
202
name : string ;
167
203
namespace : string ;
168
204
} ;
169
- }
205
+ } ;
170
206
171
207
// Datatypes
172
208
0 commit comments