/
statuses-api.ts
78 lines (69 loc) · 2.11 KB
/
statuses-api.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
import { TxStatusData } from 'src/features/common/status-manager/models/tx-status-data';
import { SymbiosisToken } from 'src/features/cross-chain/calculation-manager/providers/symbiosis-provider/models/symbiosis-trade-data';
import { CelerTransferStatus } from 'src/features/cross-chain/status-manager/models/celer-transfer-status.enum';
import { CrossChainTradeData } from 'src/features/cross-chain/status-manager/models/cross-chain-trade-data';
export interface DeBridgeFilteredListApiResponse {
orderIds: [string];
}
export interface DeBridgeOrderApiStatusResponse {
orderId: string;
status: DeBridgeApiStateStatus;
}
export interface DeBridgeOrderApiResponse {
fulfilledDstEventMetadata: {
transactionHash: {
stringValue: string;
};
};
}
export const DE_BRIDGE_API_STATE_STATUS = {
FULFILLED: 'Fulfilled',
SENTUNLOCK: 'SentUnlock',
CLAIMEDUNLOCK: 'ClaimedUnlock',
ORDERCANCELLED: 'OrderCancelled',
SENTORDERCANCEL: 'SentOrderCancel',
CLAIMEDORDERCANCEL: 'ClaimedOrderCancel',
CREATED: 'Created'
} as const;
export type DeBridgeApiStateStatus =
(typeof DE_BRIDGE_API_STATE_STATUS)[keyof typeof DE_BRIDGE_API_STATE_STATUS];
export interface SymbiosisApiResponse {
status: {
code: string;
text: string;
};
tx: {
hash: string;
chainId: number;
} | null;
transitTokenSent: SymbiosisToken | null;
}
export interface BtcStatusResponse {
block_height: number | undefined;
block_index: number | undefined;
double_spend: boolean;
fee: number;
hash: string;
inputs: unknown[];
lock_time: number;
out: unknown[];
relayed_by: string;
size: number;
time: number;
tx_index: number;
ver: number;
vin_sz: number;
vout_sz: number;
weight: number;
}
export interface CelerXtransferStatusResponse {
err: string;
txSearchInfo: {
transfer: {
xfer_id: string;
dst_tx_hash: string;
xfer_status: CelerTransferStatus;
}[];
}[];
}
export type GetDstTxDataFn = (data: CrossChainTradeData) => Promise<TxStatusData>;