1 | import { Address, BigNumber, Bytes32, PublicIdentifier } from "./basic";
|
2 | import { enumify } from "./utils";
|
3 |
|
4 | export type Collateralizations = { [assetId: string]: boolean };
|
5 |
|
6 | export type RebalanceProfile = {
|
7 | assetId: Address;
|
8 | collateralizeThreshold: BigNumber;
|
9 | target: BigNumber;
|
10 | reclaimThreshold: BigNumber;
|
11 | };
|
12 |
|
13 |
|
14 | export interface VerifyNonceDtoType {
|
15 | sig: string;
|
16 | userIdentifier: PublicIdentifier;
|
17 | }
|
18 |
|
19 |
|
20 | export type ChannelAppSequences = {
|
21 | userSequenceNumber: number;
|
22 | nodeSequenceNumber: number;
|
23 | };
|
24 |
|
25 | interface PendingAsyncTransfer {
|
26 | assetId: Address;
|
27 | amount: BigNumber;
|
28 | encryptedPreImage: string;
|
29 | linkedHash: Bytes32;
|
30 | paymentId: Bytes32;
|
31 | }
|
32 |
|
33 |
|
34 |
|
35 |
|
36 | export const PriceOracleTypes = enumify({
|
37 | UNISWAP: "UNISWAP",
|
38 | HARDCODED: "HARDCODED",
|
39 | });
|
40 | export type PriceOracleTypes = typeof PriceOracleTypes[keyof typeof PriceOracleTypes];
|
41 |
|
42 | export type AllowedSwap = {
|
43 | from: Address;
|
44 | to: Address;
|
45 | fromChainId: number;
|
46 | toChainId: number;
|
47 | priceOracleType: PriceOracleTypes;
|
48 | };
|
49 |
|
50 | export type SwapRate = AllowedSwap & {
|
51 | rate: string;
|
52 | blockNumber?: number;
|
53 | };
|