@keetanetwork/anchor 0.0.7 → 0.0.8

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.
@@ -0,0 +1,229 @@
1
+ import type { ServiceMetadata } from '../../lib/resolver.ts';
2
+ import { lib as KeetaNetLib } from '@keetanetwork/keetanet-client';
3
+ import * as CurrencyInfo from '@keetanetwork/currency-info';
4
+ import type { TokenAddress, TokenPublicKeyString } from '@keetanetwork/keetanet-client/lib/account.js';
5
+ type HexString = `0x${string}`;
6
+ export type KeetaNetTokenPublicKeyString = ReturnType<InstanceType<typeof KeetaNetLib.Account<typeof KeetaNetLib.Account.AccountKeyAlgorithm.TOKEN>>['publicKeyString']['get']>;
7
+ type CurrencySearchInput = CurrencyInfo.ISOCurrencyCode | CurrencyInfo.ISOCurrencyNumber | CurrencyInfo.Currency;
8
+ type CurrencySearchCanonical = CurrencyInfo.ISOCurrencyCode;
9
+ type TokenSearchInput = TokenAddress | TokenPublicKeyString;
10
+ type TokenSearchCanonical = TokenPublicKeyString;
11
+ export type MovableAssetSearchInput = CurrencySearchInput | TokenSearchInput;
12
+ export type MovableAssetSearchCanonical = CurrencySearchCanonical | TokenSearchCanonical;
13
+ export type MovableAsset = TokenAddress | TokenPublicKeyString | CurrencyInfo.Currency;
14
+ export type AssetLocationInput = AssetLocation | AssetLocationString;
15
+ export type AssetLocationCanonical = AssetLocationString;
16
+ export type AssetMovementRail = unknown;
17
+ export type ProviderSearchInput = {
18
+ asset: MovableAsset;
19
+ from?: AssetLocationInput;
20
+ to?: AssetLocationInput;
21
+ };
22
+ /**
23
+ * Defines the chain and id for a supported asset location
24
+ */
25
+ export type AssetLocation = {
26
+ type: 'chain';
27
+ chain: {
28
+ type: 'keeta';
29
+ networkId: bigint;
30
+ } | {
31
+ type: 'evm';
32
+ chainId: bigint;
33
+ };
34
+ } | {
35
+ type: 'bank-account';
36
+ workInProgress?: never;
37
+ };
38
+ export type AssetLocationString = `chain:${'keeta' | 'evm'}:${bigint}` | `bank-account:${never}`;
39
+ export type AssetLocationLike = AssetLocation | AssetLocationString;
40
+ export interface Asset {
41
+ location?: AssetLocationString;
42
+ id: string;
43
+ }
44
+ export type Rail = 'ACH_SEND' | 'ACH_DEBIT' | 'KEETA_SEND' | 'EVM_SEND' | 'EVM_CALL';
45
+ export interface AssetWithRails extends Asset {
46
+ rails: (({
47
+ inbound: Rail[];
48
+ outbound?: Rail[];
49
+ } | {
50
+ inbound?: Rail[];
51
+ outbound: Rail[];
52
+ } | {
53
+ inbound?: never;
54
+ outbound?: never;
55
+ }) & {
56
+ common?: Rail[];
57
+ });
58
+ }
59
+ export interface AssetPath {
60
+ pair: [AssetWithRails, AssetWithRails];
61
+ kycProviders?: string[];
62
+ }
63
+ export interface SupportedAssets {
64
+ asset: TokenPublicKeyString;
65
+ paths: AssetPath[];
66
+ }
67
+ export interface AssetWithRailsMetadata {
68
+ location: string;
69
+ id: string;
70
+ rails: (({
71
+ inbound: string[];
72
+ outbound?: string[];
73
+ } | {
74
+ inbound?: string[];
75
+ outbound: string[];
76
+ } | {
77
+ inbound?: never;
78
+ outbound?: never;
79
+ }) & {
80
+ common?: string[];
81
+ });
82
+ }
83
+ export declare function convertAssetLocationToString(input: AssetLocationLike): AssetLocationString;
84
+ export declare function toAssetLocationFromString(input: string): AssetLocation;
85
+ export declare function convertAssetLocationInputToCanonical(input: AssetLocationInput): AssetLocationCanonical;
86
+ export declare function toAssetLocation(input: AssetLocationInput): AssetLocation;
87
+ export declare function convertAssetSearchInputToCanonical(input: MovableAssetSearchInput): MovableAssetSearchCanonical;
88
+ export type Operations = NonNullable<ServiceMetadata['services']['assetMovement']>[string]['operations'];
89
+ export type OperationNames = keyof Operations;
90
+ export type KeetaAssetMovementAnchorInitiateTransferRequest = {
91
+ asset: MovableAsset;
92
+ from: {
93
+ location: AssetLocationLike;
94
+ };
95
+ to: {
96
+ location: AssetLocationLike;
97
+ recipient: string;
98
+ };
99
+ value: string;
100
+ allowedRails?: AssetMovementRail[];
101
+ };
102
+ export type AssetTransferInstructions = ({
103
+ type: 'KEETA_SEND';
104
+ location: AssetLocationLike;
105
+ sendToAddress: string;
106
+ value: string;
107
+ tokenAddress: string;
108
+ external?: string;
109
+ } | {
110
+ type: 'EVM_SEND';
111
+ location: AssetLocationLike;
112
+ sendToAddress: string;
113
+ value: string;
114
+ tokenAddress: HexString;
115
+ } | {
116
+ type: 'EVM_CALL';
117
+ location: AssetLocationLike;
118
+ contractAddress: string;
119
+ contractMethodName: string;
120
+ contractMethodArgs: string[];
121
+ }) & ({
122
+ assetFee: string;
123
+ });
124
+ export type KeetaAssetMovementAnchorInitiateTransferResponse = ({
125
+ ok: true;
126
+ id: string;
127
+ instructionChoices: AssetTransferInstructions[];
128
+ }) | ({
129
+ ok: false;
130
+ error: string;
131
+ });
132
+ export interface KeetaAssetMovementAnchorGetTransferStatusRequest {
133
+ id: string;
134
+ }
135
+ type TransactionStatus = string;
136
+ export type TransactionId = {
137
+ id: string;
138
+ nonce: string;
139
+ };
140
+ type TransactionIds<T extends string> = {
141
+ [type in T]: TransactionId | null;
142
+ };
143
+ export type KeetaAssetMovementTransaction = {
144
+ id: string;
145
+ status: TransactionStatus;
146
+ asset: MovableAsset;
147
+ from: {
148
+ location: AssetLocationString;
149
+ value: string;
150
+ transactions: TransactionIds<'persistentForwarding' | 'deposit' | 'finalization'>;
151
+ };
152
+ to: {
153
+ location: AssetLocationString;
154
+ value: string;
155
+ transactions: TransactionIds<'withdraw'>;
156
+ };
157
+ fee: {
158
+ asset: MovableAsset;
159
+ value: string;
160
+ } | null;
161
+ createdAt: string;
162
+ updatedAt: string;
163
+ };
164
+ export type KeetaAssetMovementAnchorGetTransferStatusResponse = ({
165
+ ok: true;
166
+ transaction: KeetaAssetMovementTransaction;
167
+ } | {
168
+ ok: false;
169
+ error: string;
170
+ });
171
+ export type KeetaAssetMovementAnchorCreatePersistentForwardingRequest = {
172
+ asset: MovableAsset;
173
+ destinationLocation: AssetLocationLike;
174
+ destinationAddress: string;
175
+ sourceLocation: AssetLocationLike;
176
+ };
177
+ export type KeetaAssetMovementAnchorCreatePersistentForwardingResponse = ({
178
+ ok: true;
179
+ address: string;
180
+ } | {
181
+ ok: false;
182
+ error: string;
183
+ });
184
+ type PaginationQuery = {
185
+ limit?: number;
186
+ offset?: number;
187
+ };
188
+ type PaginationResponseInformation = {
189
+ total: string;
190
+ };
191
+ export type KeetaAssetMovementAnchorlistTransactionsRequest = {
192
+ persistentAddresses?: {
193
+ location: AssetLocationLike;
194
+ persistentAddress: string;
195
+ }[];
196
+ from?: {
197
+ location: AssetLocationLike;
198
+ userAddress?: string;
199
+ asset?: MovableAsset;
200
+ };
201
+ to?: {
202
+ location: AssetLocationLike;
203
+ userAddress?: string;
204
+ asset?: MovableAsset;
205
+ };
206
+ pagination?: PaginationQuery;
207
+ };
208
+ export type KeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse = (({
209
+ ok: true;
210
+ transactions: KeetaAssetMovementTransaction[];
211
+ } & PaginationResponseInformation) | {
212
+ ok: false;
213
+ error: string;
214
+ });
215
+ export declare const assertKeetaSupportedAssets: (input: unknown) => SupportedAssets[];
216
+ export declare const assertKeetaAssetMovementAnchorCreatePersistentForwardingRequest: (input: unknown) => KeetaAssetMovementAnchorCreatePersistentForwardingRequest;
217
+ export declare const assertKeetaAssetMovementAnchorCreatePersistentForwardingResponse: (input: unknown) => KeetaAssetMovementAnchorCreatePersistentForwardingResponse;
218
+ export declare const assertKeetaAssetMovementAnchorInitiateTransferRequest: (input: unknown) => KeetaAssetMovementAnchorInitiateTransferRequest;
219
+ export declare const assertKeetaAssetMovementAnchorInitiateTransferResponse: (input: unknown) => KeetaAssetMovementAnchorInitiateTransferResponse;
220
+ export declare const assertKeetaAssetMovementAnchorGetTransferStatusRequest: (input: unknown) => KeetaAssetMovementAnchorGetTransferStatusRequest;
221
+ export declare const assertKeetaAssetMovementAnchorGetTransferStatusResponse: (input: unknown) => KeetaAssetMovementAnchorGetTransferStatusResponse;
222
+ export declare const assertKeetaAssetMovementAnchorlistTransactionsRequest: (input: unknown) => KeetaAssetMovementAnchorlistTransactionsRequest;
223
+ export declare const assertKeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse: (input: unknown) => KeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse;
224
+ export declare const isKeetaAssetMovementAnchorCreatePersistentForwardingResponse: (input: unknown) => input is KeetaAssetMovementAnchorCreatePersistentForwardingResponse;
225
+ export declare const isKeetaAssetMovementAnchorInitiateTransferResponse: (input: unknown) => input is KeetaAssetMovementAnchorInitiateTransferResponse;
226
+ export declare const isKeetaAssetMovementAnchorGetExchangeStatusResponse: (input: unknown) => input is KeetaAssetMovementAnchorGetTransferStatusResponse;
227
+ export declare const isKeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse: (input: unknown) => input is KeetaAssetMovementAnchorlistPersistentForwardingTransactionsResponse;
228
+ export {};
229
+ //# sourceMappingURL=common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/services/asset-movement/common.ts"],"names":[],"mappings":"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"}