@ultrade/shared 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (189) hide show
  1. package/dist/baseModel/base.model.d.ts +26 -0
  2. package/dist/baseModel/index.d.ts +2 -0
  3. package/dist/common/auth.helper.d.ts +4 -0
  4. package/dist/common/auth.helper.js +367 -0
  5. package/dist/common/awsKms.d.ts +2 -0
  6. package/dist/common/awsKms.js +265 -0
  7. package/dist/common/big-number.helper.d.ts +38 -0
  8. package/dist/common/big-number.helper.js +263 -0
  9. package/dist/common/index.d.ts +11 -0
  10. package/dist/common/index.js +2541 -0
  11. package/dist/common/indexer.helper.d.ts +2 -0
  12. package/dist/common/indexer.helper.js +387 -0
  13. package/dist/common/logger.d.ts +32 -0
  14. package/dist/common/logger.js +188 -0
  15. package/dist/common/mappers/codexAsset.mapper.d.ts +2 -0
  16. package/dist/common/mappers/codexAsset.mapper.js +40 -0
  17. package/dist/common/mappers/codexBalance.mapper.d.ts +2 -0
  18. package/dist/common/mappers/codexBalance.mapper.js +38 -0
  19. package/dist/common/mappers/index.d.ts +3 -0
  20. package/dist/common/mappers/index.js +1421 -0
  21. package/dist/common/mappers/trade.mapper.d.ts +6 -0
  22. package/dist/common/mappers/trade.mapper.js +1343 -0
  23. package/dist/common/migration.helpers.d.ts +4 -0
  24. package/dist/common/migration.helpers.js +44 -0
  25. package/dist/common/redis.helper.d.ts +27 -0
  26. package/dist/common/redis.helper.js +269 -0
  27. package/dist/common/secret.helper.d.ts +28 -0
  28. package/dist/common/secret.helper.js +144 -0
  29. package/dist/common/timestamp.helper.d.ts +1 -0
  30. package/dist/common/timestamp.helper.js +41 -0
  31. package/dist/common/utils/assert.d.ts +1 -0
  32. package/dist/common/utils/assert.js +32 -0
  33. package/dist/common/utils/decode.d.ts +5 -0
  34. package/dist/common/utils/decode.js +206 -0
  35. package/dist/common/utils/index.d.ts +9 -0
  36. package/dist/common/utils/index.js +122 -0
  37. package/dist/common/utils/social.d.ts +1 -0
  38. package/dist/common/utils/social.js +30 -0
  39. package/dist/common/utils/stat.d.ts +1 -0
  40. package/dist/common/utils/stat.js +274 -0
  41. package/dist/constants/allowedUrls.d.ts +1 -0
  42. package/dist/constants/auth.d.ts +2 -0
  43. package/dist/constants/cctp.d.ts +3 -0
  44. package/dist/constants/codex.d.ts +11 -0
  45. package/dist/constants/env.d.ts +6 -0
  46. package/dist/constants/index.d.ts +7 -0
  47. package/dist/constants/index.js +455 -0
  48. package/dist/constants/queue.d.ts +39 -0
  49. package/dist/constants/response.d.ts +82 -0
  50. package/dist/constants/settings.d.ts +2 -0
  51. package/dist/constants/social.d.ts +3 -0
  52. package/dist/constants/withdrawalWalletsMessage.d.ts +1 -0
  53. package/dist/enums/chains.enum.d.ts +50 -0
  54. package/dist/enums/db/account/index.d.ts +19 -0
  55. package/dist/enums/db/affiliate.enum.d.ts +7 -0
  56. package/dist/enums/db/available-pair-settings.enum.d.ts +12 -0
  57. package/dist/enums/db/chains.d.ts +30 -0
  58. package/dist/enums/db/common.enum.d.ts +4 -0
  59. package/dist/enums/db/component/index.d.ts +22 -0
  60. package/dist/enums/db/index.d.ts +21 -0
  61. package/dist/enums/db/market-maker.enum.d.ts +15 -0
  62. package/dist/enums/db/notification-center/userNotification.enum.d.ts +36 -0
  63. package/dist/enums/db/order-side.enum.d.ts +5 -0
  64. package/dist/enums/db/order-status.enum.d.ts +8 -0
  65. package/dist/enums/db/order-type.enum.d.ts +7 -0
  66. package/dist/enums/db/pending-actions.enum.d.ts +6 -0
  67. package/dist/enums/db/relayer.enum.d.ts +23 -0
  68. package/dist/enums/db/setting-type.enum.d.ts +8 -0
  69. package/dist/enums/db/social-action.enum.d.ts +24 -0
  70. package/dist/enums/db/social-prompt.enum.d.ts +8 -0
  71. package/dist/enums/db/social.enum.d.ts +10 -0
  72. package/dist/enums/db/state-type.enum.d.ts +9 -0
  73. package/dist/enums/db/trade.enums.d.ts +10 -0
  74. package/dist/enums/db/tradingKeyType.enum.d.ts +4 -0
  75. package/dist/enums/db/upgrade.enum.d.ts +5 -0
  76. package/dist/enums/db/withdrawal-wallet.enum.d.ts +5 -0
  77. package/dist/enums/index.d.ts +5 -0
  78. package/dist/enums/index.js +893 -0
  79. package/dist/enums/maintenanceMode.enum.d.ts +10 -0
  80. package/dist/enums/notification.enum.d.ts +7 -0
  81. package/dist/enums/social.enum.d.ts +10 -0
  82. package/dist/helpers/Encoding.d.ts +33 -0
  83. package/dist/helpers/Encoding.js +318 -0
  84. package/dist/helpers/algo.helper.d.ts +14 -0
  85. package/dist/helpers/algo.helper.js +1211 -0
  86. package/dist/helpers/api.helper.d.ts +16 -0
  87. package/dist/helpers/api.helper.js +1652 -0
  88. package/dist/helpers/assert.helper.d.ts +10 -0
  89. package/dist/helpers/assert.helper.js +1677 -0
  90. package/dist/helpers/atomic.helper.d.ts +21 -0
  91. package/dist/helpers/atomic.helper.js +712 -0
  92. package/dist/helpers/balance.helper.d.ts +13 -0
  93. package/dist/helpers/balance.helper.js +4330 -0
  94. package/dist/helpers/codex/common.helper.d.ts +24 -0
  95. package/dist/helpers/codex/common.helper.js +4246 -0
  96. package/dist/helpers/codex/index.d.ts +6 -0
  97. package/dist/helpers/codex/index.js +4246 -0
  98. package/dist/helpers/codex/mbr.helper.d.ts +6 -0
  99. package/dist/helpers/codex/mbr.helper.js +4246 -0
  100. package/dist/helpers/codex/mna.helper.d.ts +2 -0
  101. package/dist/helpers/codex/mna.helper.js +4246 -0
  102. package/dist/helpers/codex/order.helper.d.ts +6 -0
  103. package/dist/helpers/codex/order.helper.js +4246 -0
  104. package/dist/helpers/codex/setGlobal.helper.d.ts +27 -0
  105. package/dist/helpers/codex/setGlobal.helper.js +4312 -0
  106. package/dist/helpers/codex/transfer.helper.d.ts +21 -0
  107. package/dist/helpers/codex/transfer.helper.js +4246 -0
  108. package/dist/helpers/codex/txn.helper.d.ts +13 -0
  109. package/dist/helpers/codex/txn.helper.js +4246 -0
  110. package/dist/helpers/codex.helper.d.ts +106 -0
  111. package/dist/helpers/codex.helper.js +4246 -0
  112. package/dist/helpers/email.helper.d.ts +5 -0
  113. package/dist/helpers/email.helper.js +112 -0
  114. package/dist/helpers/eth.helper.d.ts +12 -0
  115. package/dist/helpers/eth.helper.js +4246 -0
  116. package/dist/helpers/hummingbots.helper.d.ts +2 -0
  117. package/dist/helpers/hummingbots.helper.js +163 -0
  118. package/dist/helpers/index.d.ts +5 -0
  119. package/dist/helpers/index.js +837 -0
  120. package/dist/helpers/interval.helpers.d.ts +9 -0
  121. package/dist/helpers/interval.helpers.js +110 -0
  122. package/dist/helpers/liquidity.helper.d.ts +6 -0
  123. package/dist/helpers/liquidity.helper.js +81 -0
  124. package/dist/helpers/order.helper.d.ts +7 -0
  125. package/dist/helpers/order.helper.js +946 -0
  126. package/dist/helpers/pair.helper.d.ts +9 -0
  127. package/dist/helpers/pair.helper.js +938 -0
  128. package/dist/helpers/pointSystem.helper.d.ts +14 -0
  129. package/dist/helpers/pointSystem.helper.js +392 -0
  130. package/dist/helpers/ticker.helpers.d.ts +8 -0
  131. package/dist/helpers/ticker.helpers.js +358 -0
  132. package/dist/helpers/vaa.helper.d.ts +2 -0
  133. package/dist/helpers/vaa.helper.js +4350 -0
  134. package/dist/helpers/withdraw.helper.d.ts +14 -0
  135. package/dist/helpers/withdraw.helper.js +4784 -0
  136. package/dist/interfaces/accountInfo.interface.d.ts +15 -0
  137. package/dist/interfaces/algostreamer/index.d.ts +49 -0
  138. package/dist/interfaces/api/affiliate.interface.d.ts +71 -0
  139. package/dist/interfaces/cache.interface.d.ts +25 -0
  140. package/dist/interfaces/confirmed-txn.interface.d.ts +46 -0
  141. package/dist/interfaces/controller.interface.d.ts +6 -0
  142. package/dist/interfaces/db/baseModel.interface.d.ts +5 -0
  143. package/dist/interfaces/db/hummingbot/index.d.ts +18 -0
  144. package/dist/interfaces/db/index.d.ts +10 -0
  145. package/dist/interfaces/db/market/index.d.ts +313 -0
  146. package/dist/interfaces/db/marketing/index.d.ts +48 -0
  147. package/dist/interfaces/db/notification_center/index.d.ts +33 -0
  148. package/dist/interfaces/db/relayer/index.d.ts +56 -0
  149. package/dist/interfaces/db/social/index.d.ts +188 -0
  150. package/dist/interfaces/db/softDeleteModel.interface.d.ts +4 -0
  151. package/dist/interfaces/db/white_label/index.d.ts +161 -0
  152. package/dist/interfaces/db/withdrawal_wallets/index.d.ts +12 -0
  153. package/dist/interfaces/dto/index.d.ts +62 -0
  154. package/dist/interfaces/emailService.interface.d.ts +4 -0
  155. package/dist/interfaces/index.d.ts +17 -0
  156. package/dist/interfaces/index.js +1319 -0
  157. package/dist/interfaces/kmsService.interface.d.ts +4 -0
  158. package/dist/interfaces/last-look-trade.interface.d.ts +10 -0
  159. package/dist/interfaces/market.interface.d.ts +17 -0
  160. package/dist/interfaces/order.interface.d.ts +162 -0
  161. package/dist/interfaces/pair.interface.d.ts +10 -0
  162. package/dist/interfaces/query.interface.d.ts +6 -0
  163. package/dist/interfaces/services/accountCache.interface.d.ts +15 -0
  164. package/dist/interfaces/services/algod.interface.d.ts +5 -0
  165. package/dist/interfaces/services/balances.interface.d.ts +11 -0
  166. package/dist/interfaces/services/coin-market-cap.interface.d.ts +124 -0
  167. package/dist/interfaces/services/index.d.ts +8 -0
  168. package/dist/interfaces/services/price-model.interface.d.ts +4 -0
  169. package/dist/interfaces/services/price-service.interface.d.ts +8 -0
  170. package/dist/interfaces/services/socialActivity.interface.d.ts +48 -0
  171. package/dist/interfaces/services/tmc.interface.d.ts +9 -0
  172. package/dist/interfaces/streaming.interface.d.ts +95 -0
  173. package/dist/interfaces/timestream.interface.d.ts +29 -0
  174. package/dist/interfaces/trading.interface.d.ts +235 -0
  175. package/dist/interfaces/tradingKey.interface.d.ts +26 -0
  176. package/dist/interfaces/transfer.interface.d.ts +12 -0
  177. package/dist/interfaces/wallet.interface.d.ts +89 -0
  178. package/dist/interfaces/withdrawalWallets.interface.d.ts +14 -0
  179. package/dist/types/algo-order.type.d.ts +10 -0
  180. package/dist/types/amm/amm.d.ts +163 -0
  181. package/dist/types/api/request.types.d.ts +99 -0
  182. package/dist/types/codex.types.d.ts +28 -0
  183. package/dist/types/hummingbots.types.d.ts +23 -0
  184. package/dist/types/index.d.ts +8 -0
  185. package/dist/types/index.js +362 -0
  186. package/dist/types/notification.type.d.ts +10 -0
  187. package/dist/types/settings.type.d.ts +162 -0
  188. package/dist/types/state.type.d.ts +4 -0
  189. package/package.json +78 -0
@@ -0,0 +1,188 @@
1
+ import { ActionSource, PromptTypeEnum, SeasonStatusEnum, TweetType } from '@enums';
2
+ import { IAccount, ICompany } from '@interfaces';
3
+ export interface ISocialAccount {
4
+ address: string;
5
+ companyId: number;
6
+ account: IAccount;
7
+ email?: string;
8
+ originalEmail?: string;
9
+ emailSentDate?: Date;
10
+ randomHash?: string;
11
+ emailVerified: boolean;
12
+ totalTradingVolumeUsd: number;
13
+ twitterAccount?: ITwitterAccount;
14
+ telegramAccount?: ITelegramAccount;
15
+ discordAccount?: IDiscordAccount;
16
+ accountSeasonStats: IAccountSeasonStats[];
17
+ createdAt: Date;
18
+ updatedAt: Date;
19
+ }
20
+ export interface ITwitterAccount {
21
+ address: string;
22
+ companyId: number;
23
+ account: ISocialAccount;
24
+ twitterAccountSettings?: ITwitterAccountSettings;
25
+ userName: string;
26
+ twitterId: string;
27
+ name: string;
28
+ createdAt: Date;
29
+ updatedAt: Date;
30
+ deletedAt: Date;
31
+ }
32
+ export interface ITwitterAccountSettings {
33
+ address: string;
34
+ companyId: number;
35
+ twitterAccount: ITwitterAccount;
36
+ refreshToken: string;
37
+ canFollowAccounts: boolean;
38
+ canCreateTweets: boolean;
39
+ canLikeTweets: boolean;
40
+ createdAt: Date;
41
+ updatedAt: Date;
42
+ }
43
+ export interface ITelegramAccount {
44
+ address: string;
45
+ companyId: number;
46
+ account: ISocialAccount;
47
+ telegramId: string;
48
+ userName: string;
49
+ createdAt: Date;
50
+ updatedAt: Date;
51
+ deletedAt: Date;
52
+ }
53
+ export interface IDiscordAccount {
54
+ address: string;
55
+ companyId: number;
56
+ account: ISocialAccount;
57
+ discordId: string;
58
+ userName: string;
59
+ name: string;
60
+ createdAt: Date;
61
+ updatedAt: Date;
62
+ deletedAt: Date;
63
+ }
64
+ export interface ICompanyFollower {
65
+ userName: string;
66
+ companyId: number;
67
+ userId: string;
68
+ name: string;
69
+ createdAt: Date;
70
+ updatedAt: Date;
71
+ }
72
+ export interface ISocialSeason {
73
+ id: number;
74
+ companyId: number;
75
+ startDate: Date;
76
+ endDate?: Date;
77
+ name: string;
78
+ isSelected: boolean;
79
+ status: SeasonStatusEnum;
80
+ createdAt: Date;
81
+ updatedAt: Date;
82
+ }
83
+ export interface IAction {
84
+ id: number;
85
+ companyId: number;
86
+ seasonId: number;
87
+ socialSeason: ISocialSeason;
88
+ source: ActionSource;
89
+ name: string;
90
+ description: string;
91
+ points: number;
92
+ enabled: boolean;
93
+ }
94
+ export interface IActionTemplate {
95
+ id: number;
96
+ source: ActionSource;
97
+ name: string;
98
+ description: string;
99
+ points: number;
100
+ enabled: boolean;
101
+ }
102
+ export interface IActionHistory {
103
+ id: number;
104
+ address: string;
105
+ companyId: number;
106
+ account: IAccountSeasonStats;
107
+ actionId: number;
108
+ seasonId: number;
109
+ action: IAction;
110
+ source: ActionSource;
111
+ points: number;
112
+ referenceId?: string;
113
+ createdAt: Date;
114
+ }
115
+ export interface IUnlock {
116
+ id: number;
117
+ companyId: number;
118
+ seasonId: number;
119
+ socialSeason: ISocialSeason;
120
+ name: string;
121
+ description: string;
122
+ points: number;
123
+ enabled: boolean;
124
+ }
125
+ export interface IUnlockTemplate {
126
+ id: number;
127
+ name: string;
128
+ description: string;
129
+ points: number;
130
+ enabled: boolean;
131
+ }
132
+ export interface IAccountSeasonStats {
133
+ address: string;
134
+ companyId: number;
135
+ seasonId: number;
136
+ socialSeason: ISocialSeason;
137
+ socialAccount: ISocialAccount;
138
+ points: number;
139
+ tasksCompleted: number;
140
+ unlocksAchieved: number;
141
+ }
142
+ export interface IPrompt {
143
+ id: number;
144
+ title: string;
145
+ content: string;
146
+ enabled: boolean;
147
+ type: PromptTypeEnum;
148
+ createdAt: Date;
149
+ updatedAt: Date;
150
+ }
151
+ export interface ISystemPrompt extends IPrompt {
152
+ default: boolean;
153
+ weight: number;
154
+ }
155
+ export interface ICompanyPrompt extends IPrompt {
156
+ companyId: number;
157
+ company: ICompany;
158
+ }
159
+ export interface ICompanyChatGPTConfiguration {
160
+ companyId: number;
161
+ companyDescription: string;
162
+ apiKey: string;
163
+ enabled: boolean;
164
+ company: ICompany;
165
+ }
166
+ export interface ICompanyTweet {
167
+ id: string;
168
+ companyId: number;
169
+ seasonId: number;
170
+ type: TweetType;
171
+ text: string;
172
+ enabled: boolean;
173
+ isProcessed: boolean;
174
+ expiresAt: Date;
175
+ createdAt: Date;
176
+ updatedAt: Date;
177
+ }
178
+ export interface IAIRequestQuota {
179
+ address: string;
180
+ companyId: number;
181
+ socialAccount: ISocialAccount;
182
+ requestCount: number;
183
+ requestThreshold: number;
184
+ requestDate: Date;
185
+ }
186
+ export interface IUltradeOldUserEmail {
187
+ email: string;
188
+ }
@@ -0,0 +1,4 @@
1
+ import { IBaseModel } from "./baseModel.interface";
2
+ export interface ISoftDeleteModel extends IBaseModel {
3
+ deleted_on: Date;
4
+ }
@@ -0,0 +1,161 @@
1
+ import { SettingTypeColumn, MarketMakerRebateTier } from '@enums';
2
+ import { ICollectionWallet, IBaseModel, ISoftDeleteModel, IAccount, IPair, IAvailablePairSetting, IInvitedByAffiliateAccount } from '@interfaces';
3
+ export interface ICompanyBDPartner {
4
+ companyId: number;
5
+ name: string;
6
+ email: string;
7
+ telegramId?: string;
8
+ twitterId?: string;
9
+ additionalInfo?: string;
10
+ address: string;
11
+ chainId: number;
12
+ feeShare: number;
13
+ company: ICompany;
14
+ enabled: boolean;
15
+ expiresAt?: Date;
16
+ createdAt: Date;
17
+ updatedAt: Date;
18
+ }
19
+ export interface ICompanyAffiliate {
20
+ id: number;
21
+ address: string;
22
+ companyId: number;
23
+ name?: string;
24
+ email?: string;
25
+ chainId?: number;
26
+ company: ICompany;
27
+ account: IAccount;
28
+ invitedAccounts: IInvitedByAffiliateAccount[];
29
+ feeShare?: number;
30
+ pointsReward?: number;
31
+ enabled: boolean;
32
+ expiresAt?: Date;
33
+ createdAt: Date;
34
+ updatedAt: Date;
35
+ }
36
+ export type CreateAffiliate = {
37
+ address: string;
38
+ companyId: number;
39
+ referralToken: string;
40
+ referralLink: string;
41
+ name?: string;
42
+ email?: string;
43
+ chainId: number;
44
+ feeShare?: number;
45
+ pointsReward?: number;
46
+ expiresAt?: Date;
47
+ };
48
+ export type DBAffiliate = {
49
+ id: number;
50
+ address: string;
51
+ name?: string;
52
+ email?: string;
53
+ chainId: number;
54
+ feeShare?: number;
55
+ pointsReward?: number;
56
+ enabled: boolean;
57
+ expiresAt?: Date;
58
+ createdAt: Date;
59
+ referralLink: string;
60
+ };
61
+ export type AffiliateDBMetric = {
62
+ invitedAccountsCount: number;
63
+ newDepositorsCount: number;
64
+ };
65
+ export interface ICompany extends ISoftDeleteModel, ICollectionWallet {
66
+ name: string;
67
+ enabled: boolean;
68
+ domain: string;
69
+ settings: ICompanySetting[];
70
+ parentId?: number;
71
+ parent: ICompany;
72
+ partnerId?: number;
73
+ isSuper: boolean;
74
+ collectionWallet?: string;
75
+ collectionWalletChainId?: number;
76
+ companyBDPartner?: ICompanyBDPartner;
77
+ }
78
+ export interface ICompanySetting extends IBaseModel {
79
+ value: string;
80
+ enabled: boolean;
81
+ companyId: number;
82
+ company: ICompany;
83
+ settingId: string;
84
+ setting: ISetting;
85
+ }
86
+ export declare class ISetting {
87
+ id: string;
88
+ description: string;
89
+ hint: string;
90
+ help_url: string;
91
+ type: SettingTypeColumn;
92
+ allowed_values: string[];
93
+ settings: ICompanySetting[];
94
+ public: boolean;
95
+ }
96
+ export interface IUser {
97
+ id: number;
98
+ email: string;
99
+ sub: string;
100
+ enabled: boolean;
101
+ companyId?: number;
102
+ roleId?: number;
103
+ createdSettingHistoryItems: ICompanySettingHistoryItem[];
104
+ updatedSettingHistoryItems: ICompanySettingHistoryItem[];
105
+ createdSettings: ICompanySetting[];
106
+ updatedSettings: ICompanySetting[];
107
+ updatedCompanies: ICompany[];
108
+ createdCompanies: ICompany[];
109
+ role: IRole;
110
+ company: ICompany;
111
+ }
112
+ export interface IRole extends IBaseModel {
113
+ title: string;
114
+ permissions: IPermission[];
115
+ settings: IUser[];
116
+ }
117
+ export interface IPermission {
118
+ id: string;
119
+ title: string;
120
+ description: string;
121
+ role: IRole[];
122
+ }
123
+ export interface IMarketMaker extends IBaseModel {
124
+ address: string;
125
+ name: string;
126
+ account: IAccount;
127
+ chainId: number;
128
+ rebateTier: MarketMakerRebateTier;
129
+ takerFee: number;
130
+ enabled: boolean;
131
+ }
132
+ export interface IPairSettingHistoryItem extends IBaseModel {
133
+ prev_value?: string;
134
+ new_value: string;
135
+ pairId: number;
136
+ pair: IPair;
137
+ setting: IAvailablePairSetting;
138
+ }
139
+ export interface ICompanySettingHistoryItem extends IBaseModel {
140
+ prev_value?: string;
141
+ new_value: string;
142
+ companyId: number;
143
+ company: ICompany;
144
+ settingId: string;
145
+ setting: ISetting;
146
+ }
147
+ export interface ITag {
148
+ id: number;
149
+ value: string;
150
+ pairs: IPair[];
151
+ }
152
+ export interface IPriceCoin {
153
+ address: string;
154
+ chainId: number;
155
+ decimal: number;
156
+ name: string;
157
+ unitName: string;
158
+ isGas: boolean;
159
+ cmcLink?: string;
160
+ disabled: boolean;
161
+ }
@@ -0,0 +1,12 @@
1
+ import { WithdrawalWalletType } from '@enums';
2
+ export { WithdrawalWalletType };
3
+ export interface IWithdrawalWallets {
4
+ name: string;
5
+ type: WithdrawalWalletType;
6
+ address: string;
7
+ description: string;
8
+ account_address: string;
9
+ signature: string;
10
+ createdAt: Date;
11
+ }
12
+ export type ISafeWithdrawalWallets = Omit<IWithdrawalWallets, 'signature' | 'account_address'>;
@@ -0,0 +1,62 @@
1
+ import { OrderSide, OrderStatus, OrderType, TradeStatus } from "@enums";
2
+ import { OrderSideShort } from "../order.interface";
3
+ export interface ICodexAssetDto {
4
+ id: number;
5
+ address: string;
6
+ chainId: number;
7
+ name: string;
8
+ unitName: string;
9
+ decimals: number;
10
+ isGas: boolean;
11
+ img: string;
12
+ cmcLink: string;
13
+ isArchived?: boolean;
14
+ }
15
+ export interface ICodexBalanceDto {
16
+ hash: string;
17
+ loginAddress: string;
18
+ loginChainId: number;
19
+ tokenId?: number;
20
+ tokenAddress: string;
21
+ tokenChainId: number;
22
+ amount: string;
23
+ lockedAmount: string;
24
+ }
25
+ export interface ITradeDto {
26
+ tradeId: number;
27
+ amount: string;
28
+ price: string;
29
+ createdAt: number;
30
+ updatedAt: number;
31
+ total?: string;
32
+ orderId?: number;
33
+ orderSide?: OrderSideShort;
34
+ pairId?: number;
35
+ baseTokenId?: number;
36
+ baseTokenDecimal?: number;
37
+ quoteTokenId?: number;
38
+ quoteTokenDecimal?: number;
39
+ status?: TradeStatus;
40
+ fee?: string;
41
+ isBuyer?: boolean;
42
+ isMaker?: boolean;
43
+ }
44
+ export interface IOrderDto {
45
+ id: number;
46
+ pairId: number;
47
+ pair: string;
48
+ side: OrderSide;
49
+ type: OrderType;
50
+ price: string;
51
+ amount: string;
52
+ filledAmount: string;
53
+ total: string;
54
+ filledTotal: string;
55
+ avgPrice: string;
56
+ status: OrderStatus;
57
+ userId: string;
58
+ createdAt: number;
59
+ updatedAt: number;
60
+ completedAt?: number;
61
+ trades?: ITradeDto[];
62
+ }
@@ -0,0 +1,4 @@
1
+ export interface IEmailService {
2
+ sendUserConfirmationEmail(email: string, address: string, hash: string, companyName?: string, embeddedAppUrl?: string): Promise<void>;
3
+ sendEmailAboutMaintenanceOnError(service: string, error: string): Promise<void>;
4
+ }
@@ -0,0 +1,17 @@
1
+ export * from "./accountInfo.interface";
2
+ export * from "./order.interface";
3
+ export * from "./query.interface";
4
+ export * from "./streaming.interface";
5
+ export * from "./timestream.interface";
6
+ export * from "./tradingKey.interface";
7
+ export * from "./transfer.interface";
8
+ export * from "./wallet.interface";
9
+ export * from "./market.interface";
10
+ export * from "./dto";
11
+ export * from "./cache.interface";
12
+ export * from "./withdrawalWallets.interface";
13
+ export * from "./last-look-trade.interface";
14
+ export * from "./pair.interface";
15
+ export * from "./trading.interface";
16
+ export * from "./db";
17
+ export * from "./services";