@keetanetwork/anchor 0.0.3 → 0.0.5

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 (45) hide show
  1. package/client/index.d.ts +6 -0
  2. package/client/index.d.ts.map +1 -1
  3. package/client/index.js +7 -0
  4. package/client/index.js.map +1 -1
  5. package/lib/error.d.ts +14 -0
  6. package/lib/error.d.ts.map +1 -0
  7. package/lib/error.js +38 -0
  8. package/lib/error.js.map +1 -0
  9. package/lib/resolver.d.ts +159 -60
  10. package/lib/resolver.d.ts.map +1 -1
  11. package/lib/resolver.js +3519 -384
  12. package/lib/resolver.js.map +1 -1
  13. package/lib/utils/brand.d.ts +12 -0
  14. package/lib/utils/brand.d.ts.map +1 -0
  15. package/lib/utils/brand.js +2 -0
  16. package/lib/utils/brand.js.map +1 -0
  17. package/lib/utils/never.d.ts +4 -0
  18. package/lib/utils/never.d.ts.map +1 -1
  19. package/lib/utils/never.js.map +1 -1
  20. package/lib/utils/signing.d.ts +17 -0
  21. package/lib/utils/signing.d.ts.map +1 -0
  22. package/lib/utils/signing.js +73 -0
  23. package/lib/utils/signing.js.map +1 -0
  24. package/lib/utils/url.d.ts +2 -0
  25. package/lib/utils/url.d.ts.map +1 -0
  26. package/lib/utils/url.js +8 -0
  27. package/lib/utils/url.js.map +1 -0
  28. package/npm-shrinkwrap.json +13 -6
  29. package/package.json +4 -2
  30. package/services/fx/client.d.ts +137 -0
  31. package/services/fx/client.d.ts.map +1 -0
  32. package/services/fx/client.js +519 -0
  33. package/services/fx/client.js.map +1 -0
  34. package/services/fx/common.d.ts +133 -0
  35. package/services/fx/common.d.ts.map +1 -0
  36. package/services/fx/common.js +45 -0
  37. package/services/fx/common.js.map +1 -0
  38. package/services/fx/server.d.ts +77 -0
  39. package/services/fx/server.d.ts.map +1 -0
  40. package/services/fx/server.js +693 -0
  41. package/services/fx/server.js.map +1 -0
  42. package/services/kyc/client.d.ts +1 -1
  43. package/services/kyc/client.d.ts.map +1 -1
  44. package/services/kyc/client.js +7 -53
  45. package/services/kyc/client.js.map +1 -1
package/client/index.d.ts CHANGED
@@ -1,10 +1,16 @@
1
1
  import type { KeetaKYCAnchorClientConfig } from '../services/kyc/client.ts';
2
+ import type { KeetaFXAnchorClientConfig } from '../services/fx/client.ts';
2
3
  import KeetaKYCAnchorClient from '../services/kyc/client.js';
4
+ import KeetaFXAnchorClient from '../services/fx/client.js';
3
5
  import * as lib from '../lib/index.js';
4
6
  import * as KeetaNet from '@keetanetwork/keetanet-client';
5
7
  export declare namespace KYC {
6
8
  type ClientConfig = KeetaKYCAnchorClientConfig;
7
9
  const Client: typeof KeetaKYCAnchorClient;
8
10
  }
11
+ export declare namespace FX {
12
+ type ClientConfig = KeetaFXAnchorClientConfig;
13
+ const Client: typeof KeetaFXAnchorClient;
14
+ }
9
15
  export { lib, KeetaNet };
10
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,0BAA0B,EAC1B,MAAM,2BAA2B,CAAC;AACnC,OAAO,oBAAoB,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAC;AACvC,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAI1D,yBAAiB,GAAG,CAAC;IACpB,KAAY,YAAY,GAAG,0BAA0B,CAAC;IAC/C,MAAM,MAAM,EAAE,OAAO,oBAA2C,CAAC;CACxE;AAED,OAAO,EACN,GAAG,EACH,QAAQ,EACR,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,0BAA0B,EAC1B,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EACX,yBAAyB,EACzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,oBAAoB,MAAM,2BAA2B,CAAC;AAC7D,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAC;AACvC,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAI1D,yBAAiB,GAAG,CAAC;IACpB,KAAY,YAAY,GAAG,0BAA0B,CAAC;IAC/C,MAAM,MAAM,EAAE,OAAO,oBAA2C,CAAC;CACxE;AAGD,yBAAiB,EAAE,CAAC;IACnB,KAAY,YAAY,GAAG,yBAAyB,CAAC;IAC9C,MAAM,MAAM,EAAE,OAAO,mBAAyC,CAAC;CACtE;AAED,OAAO,EACN,GAAG,EACH,QAAQ,EACR,CAAC"}
package/client/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import KeetaKYCAnchorClient from '../services/kyc/client.js';
2
+ import KeetaFXAnchorClient from '../services/fx/client.js';
2
3
  import * as lib from '../lib/index.js';
3
4
  import * as KeetaNet from '@keetanetwork/keetanet-client';
4
5
  // TODO: Determine how we want to export the client
@@ -7,5 +8,11 @@ export var KYC;
7
8
  (function (KYC) {
8
9
  KYC.Client = KeetaKYCAnchorClient;
9
10
  })(KYC || (KYC = {}));
11
+ // TODO: Determine how we want to export the client
12
+ // eslint-disable-next-line @typescript-eslint/no-namespace
13
+ export var FX;
14
+ (function (FX) {
15
+ FX.Client = KeetaFXAnchorClient;
16
+ })(FX || (FX = {}));
10
17
  export { lib, KeetaNet };
11
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAGA,OAAO,oBAAoB,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAC;AACvC,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAE1D,mDAAmD;AACnD,2DAA2D;AAC3D,MAAM,KAAW,GAAG,CAGnB;AAHD,WAAiB,GAAG;IAEN,UAAM,GAAgC,oBAAoB,CAAC;AACzE,CAAC,EAHgB,GAAG,KAAH,GAAG,QAGnB;AAED,OAAO,EACN,GAAG,EACH,QAAQ,EACR,CAAC","sourcesContent":["import type {\n\tKeetaKYCAnchorClientConfig\n} from '../services/kyc/client.ts';\nimport KeetaKYCAnchorClient from '../services/kyc/client.js';\nimport * as lib from '../lib/index.js';\nimport * as KeetaNet from '@keetanetwork/keetanet-client';\n\n// TODO: Determine how we want to export the client\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace KYC {\n\texport type ClientConfig = KeetaKYCAnchorClientConfig;\n\texport const Client: typeof KeetaKYCAnchorClient = KeetaKYCAnchorClient;\n}\n\nexport {\n\tlib,\n\tKeetaNet\n};\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAMA,OAAO,oBAAoB,MAAM,2BAA2B,CAAC;AAC7D,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAC;AACvC,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAE1D,mDAAmD;AACnD,2DAA2D;AAC3D,MAAM,KAAW,GAAG,CAGnB;AAHD,WAAiB,GAAG;IAEN,UAAM,GAAgC,oBAAoB,CAAC;AACzE,CAAC,EAHgB,GAAG,KAAH,GAAG,QAGnB;AACD,mDAAmD;AACnD,2DAA2D;AAC3D,MAAM,KAAW,EAAE,CAGlB;AAHD,WAAiB,EAAE;IAEL,SAAM,GAA+B,mBAAmB,CAAC;AACvE,CAAC,EAHgB,EAAE,KAAF,EAAE,QAGlB;AAED,OAAO,EACN,GAAG,EACH,QAAQ,EACR,CAAC","sourcesContent":["import type {\n\tKeetaKYCAnchorClientConfig\n} from '../services/kyc/client.ts';\nimport type {\n\tKeetaFXAnchorClientConfig\n} from '../services/fx/client.ts';\nimport KeetaKYCAnchorClient from '../services/kyc/client.js';\nimport KeetaFXAnchorClient from '../services/fx/client.js';\nimport * as lib from '../lib/index.js';\nimport * as KeetaNet from '@keetanetwork/keetanet-client';\n\n// TODO: Determine how we want to export the client\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace KYC {\n\texport type ClientConfig = KeetaKYCAnchorClientConfig;\n\texport const Client: typeof KeetaKYCAnchorClient = KeetaKYCAnchorClient;\n}\n// TODO: Determine how we want to export the client\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace FX {\n\texport type ClientConfig = KeetaFXAnchorClientConfig;\n\texport const Client: typeof KeetaFXAnchorClient = KeetaFXAnchorClient;\n}\n\nexport {\n\tlib,\n\tKeetaNet\n};\n"]}
package/lib/error.d.ts ADDED
@@ -0,0 +1,14 @@
1
+ export declare class KeetaAnchorUserError extends Error {
2
+ readonly name: string;
3
+ protected statusCode: number;
4
+ protected keetaAnchorUserErrorObjectTypeID: string;
5
+ private static readonly keetaAnchorUserErrorObjectTypeID;
6
+ static isInstance(input: unknown): input is KeetaAnchorUserError;
7
+ constructor(message: string);
8
+ asErrorResponse(contentType: 'text/plain' | 'application/json'): {
9
+ error: string;
10
+ statusCode: number;
11
+ contentType: string;
12
+ };
13
+ }
14
+ //# sourceMappingURL=error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/lib/error.ts"],"names":[],"mappings":"AAAA,qBAAa,oBAAqB,SAAQ,KAAK;IAC9C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,UAAU,SAAO;IAC3B,SAAS,CAAC,gCAAgC,EAAG,MAAM,CAAC;IACpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gCAAgC,CAA0C;IAElG,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,oBAAoB;gBAgBpD,OAAO,EAAE,MAAM;IAU3B,eAAe,CAAC,WAAW,EAAE,YAAY,GAAG,kBAAkB,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE;CAY3H"}
package/lib/error.js ADDED
@@ -0,0 +1,38 @@
1
+ export class KeetaAnchorUserError extends Error {
2
+ name;
3
+ statusCode = 400;
4
+ keetaAnchorUserErrorObjectTypeID;
5
+ static keetaAnchorUserErrorObjectTypeID = 'a1e64819-14b6-45ac-a1ec-b9c0bdd51e7b';
6
+ static isInstance(input) {
7
+ if (typeof input !== 'object' || input === null) {
8
+ return (false);
9
+ }
10
+ if (!('keetaAnchorUserErrorObjectTypeID' in input)) {
11
+ return (false);
12
+ }
13
+ if (input.keetaAnchorUserErrorObjectTypeID !== KeetaAnchorUserError.keetaAnchorUserErrorObjectTypeID) {
14
+ return (false);
15
+ }
16
+ return (true);
17
+ }
18
+ constructor(message) {
19
+ super(message);
20
+ this.name = 'KeetaAnchorUserError';
21
+ Object.defineProperty(this, 'keetaAnchorUserErrorObjectTypeID', {
22
+ value: KeetaAnchorUserError.keetaAnchorUserErrorObjectTypeID,
23
+ enumerable: false
24
+ });
25
+ }
26
+ asErrorResponse(contentType) {
27
+ let message = this.message;
28
+ if (contentType === 'application/json') {
29
+ message = JSON.stringify({ ok: false, error: this.message });
30
+ }
31
+ return ({
32
+ error: message,
33
+ statusCode: this.statusCode,
34
+ contentType: contentType
35
+ });
36
+ }
37
+ }
38
+ //# sourceMappingURL=error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/lib/error.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IACrC,IAAI,CAAS;IACZ,UAAU,GAAG,GAAG,CAAC;IACjB,gCAAgC,CAAU;IAC5C,MAAM,CAAU,gCAAgC,GAAG,sCAAsC,CAAC;IAElG,MAAM,CAAC,UAAU,CAAC,KAAc;QAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACjD,OAAM,CAAC,KAAK,CAAC,CAAC;QACf,CAAC;QAED,IAAI,CAAC,CAAC,kCAAkC,IAAI,KAAK,CAAC,EAAE,CAAC;YACpD,OAAM,CAAC,KAAK,CAAC,CAAC;QACf,CAAC;QAED,IAAI,KAAK,CAAC,gCAAgC,KAAK,oBAAoB,CAAC,gCAAgC,EAAE,CAAC;YACtG,OAAM,CAAC,KAAK,CAAC,CAAC;QACf,CAAC;QAED,OAAM,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAED,YAAY,OAAe;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;QAEnC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,kCAAkC,EAAE;YAC/D,KAAK,EAAE,oBAAoB,CAAC,gCAAgC;YAC5D,UAAU,EAAE,KAAK;SACjB,CAAC,CAAC;IACJ,CAAC;IAED,eAAe,CAAC,WAA8C;QAC7D,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC3B,IAAI,WAAW,KAAK,kBAAkB,EAAE,CAAC;YACxC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,OAAM,CAAC;YACN,KAAK,EAAE,OAAO;YACd,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,WAAW;SACxB,CAAC,CAAC;IACJ,CAAC","sourcesContent":["export class KeetaAnchorUserError extends Error {\n\treadonly name: string;\n\tprotected statusCode = 400;\n\tprotected keetaAnchorUserErrorObjectTypeID!: string;\n\tprivate static readonly keetaAnchorUserErrorObjectTypeID = 'a1e64819-14b6-45ac-a1ec-b9c0bdd51e7b';\n\n\tstatic isInstance(input: unknown): input is KeetaAnchorUserError {\n\t\tif (typeof input !== 'object' || input === null) {\n\t\t\treturn(false);\n\t\t}\n\n\t\tif (!('keetaAnchorUserErrorObjectTypeID' in input)) {\n\t\t\treturn(false);\n\t\t}\n\n\t\tif (input.keetaAnchorUserErrorObjectTypeID !== KeetaAnchorUserError.keetaAnchorUserErrorObjectTypeID) {\n\t\t\treturn(false);\n\t\t}\n\n\t\treturn(true);\n\t}\n\n\tconstructor(message: string) {\n\t\tsuper(message);\n\t\tthis.name = 'KeetaAnchorUserError';\n\n\t\tObject.defineProperty(this, 'keetaAnchorUserErrorObjectTypeID', {\n\t\t\tvalue: KeetaAnchorUserError.keetaAnchorUserErrorObjectTypeID,\n\t\t\tenumerable: false\n\t\t});\n\t}\n\n\tasErrorResponse(contentType: 'text/plain' | 'application/json'): { error: string; statusCode: number; contentType: string } {\n\t\tlet message = this.message;\n\t\tif (contentType === 'application/json') {\n\t\t\tmessage = JSON.stringify({ ok: false, error: this.message });\n\t\t}\n\n\t\treturn({\n\t\t\terror: message,\n\t\t\tstatusCode: this.statusCode,\n\t\t\tcontentType: contentType\n\t\t});\n\t}\n}\n"]}
package/lib/resolver.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as KeetaNetClient from '@keetanetwork/keetanet-client';
2
- import CurrencyInfo from '@keetanetwork/currency-info';
2
+ import * as CurrencyInfo from '@keetanetwork/currency-info';
3
3
  import type { Logger } from './log/index.ts';
4
4
  import type { JSONSerializable } from './utils/json.ts';
5
5
  type ExternalURL = {
@@ -7,25 +7,33 @@ type ExternalURL = {
7
7
  url: string;
8
8
  };
9
9
  type KeetaNetAccount = InstanceType<typeof KeetaNetClient.lib.Account>;
10
- type CurrencySearchInput = CurrencyInfo.ISOCurrencyCode | CurrencyInfo.ISOCurrencyNumber | CurrencyInfo.Currency;
11
- type CountrySearchInput = CurrencyInfo.ISOCountryCode | CurrencyInfo.ISOCountryNumber | CurrencyInfo.Country;
10
+ declare const KeetaNetAccount: typeof KeetaNetClient.lib.Account;
11
+ type KeetaNetAccountTokenPublicKeyString = ReturnType<InstanceType<typeof KeetaNetClient.lib.Account<typeof KeetaNetAccount.AccountKeyAlgorithm.TOKEN>>['publicKeyString']['get']>;
12
12
  /**
13
- * A cache object
13
+ * Canonical form of a currency code for use in the ServiceMetadata
14
+ * Which is either the ISO currency code (e.g. "USD", "EUR", "JPY")
15
+ * or a cryptocurrency code prefixed with a dollar sign (e.g. "$BTC", "$ETH")
14
16
  */
15
- type URLCacheObject = Map<string, {
16
- pass: true;
17
- value: JSONSerializable;
18
- expires: Date;
19
- } | {
20
- pass: false;
21
- error: unknown;
22
- expires: Date;
23
- }>;
17
+ type ServiceMetadataCurrencyCodeCanonical = CurrencyInfo.ISOCurrencyCode | `$${string}`;
18
+ /**
19
+ * Input types which can be used to search for which token represents
20
+ * a given currency or cryptocurrency.
21
+ */
22
+ type CurrencySearchInput = ServiceMetadataCurrencyCodeCanonical | CurrencyInfo.ISOCurrencyNumber | CurrencyInfo.Currency;
23
+ type CurrencySearchCanonical = ServiceMetadataCurrencyCodeCanonical;
24
+ type CountrySearchInput = CurrencyInfo.ISOCountryCode | CurrencyInfo.ISOCountryNumber | CurrencyInfo.Country;
24
25
  /**
25
26
  * Service Metadata General Structure
26
27
  */
27
28
  type ServiceMetadata = {
28
29
  version: number;
30
+ /**
31
+ * Map of the currency code to the token public key which
32
+ * represents that currency.
33
+ */
34
+ currencyMap: {
35
+ [currencyCode in ServiceMetadataCurrencyCodeCanonical]?: KeetaNetAccountTokenPublicKeyString;
36
+ };
29
37
  services: {
30
38
  banking?: {
31
39
  [id: string]: {
@@ -78,23 +86,82 @@ type ServiceMetadata = {
78
86
  ca: string;
79
87
  };
80
88
  };
89
+ /**
90
+ * Foreign Exchange (FX) services
91
+ *
92
+ * This is used to identify service providers which
93
+ * can convert currency from one currency to another.
94
+ */
81
95
  fx?: {
82
- inputCurrencyCodes: {
83
- outputCurrencyCodes: string[];
84
- kycProviders: string[];
85
- }[];
96
+ /**
97
+ * Provider ID which identifies the FX provider
98
+ */
99
+ [id: string]: {
100
+ operations: {
101
+ /**
102
+ * Get an estimate for a currency
103
+ * conversion (optional)
104
+ */
105
+ getEstimate?: string;
106
+ /**
107
+ * Get a quote for a currency
108
+ * conversion
109
+ */
110
+ getQuote: string;
111
+ /**
112
+ * Create an exchange to convert
113
+ * currency
114
+ */
115
+ createExchange: string;
116
+ /**
117
+ * Get the status of an exchange
118
+ * which was previously created
119
+ */
120
+ getExchangeStatus: string;
121
+ };
122
+ /**
123
+ * Path for which can be used to identify which
124
+ * currencies this FX provider can convert
125
+ * between.
126
+ */
127
+ from: {
128
+ /**
129
+ * Currency code which this FX provider can
130
+ * convert from
131
+ */
132
+ currencyCodes: KeetaNetAccountTokenPublicKeyString[];
133
+ /**
134
+ * Currency codes which this FX provider can
135
+ * convert to from the `from.currencyCode`
136
+ */
137
+ to: KeetaNetAccountTokenPublicKeyString[];
138
+ /**
139
+ * KYC providers which this FX provider
140
+ * supports (DN) -- if not specified,
141
+ * then it does not require KYC.
142
+ */
143
+ kycProviders?: string[];
144
+ }[];
145
+ };
86
146
  };
87
147
  inbound?: {
88
- workInProgress?: true;
148
+ [id: string]: {
149
+ workInProgress?: true;
150
+ };
89
151
  };
90
152
  outbound?: {
91
- workInProgress?: true;
153
+ [id: string]: {
154
+ workInProgress?: true;
155
+ };
92
156
  };
93
157
  cards?: {
94
- workInProgress?: true;
158
+ [id: string]: {
159
+ workInProgress?: true;
160
+ };
95
161
  };
96
162
  };
97
163
  };
164
+ type ServiceMetadataExternalizable = ToJSONValuizable<ServiceMetadata>;
98
165
  /**
99
166
  * Types of services which can be resolved
100
167
  */
@@ -126,12 +193,17 @@ type ServiceSearchCriteria<T extends Services> = {
126
193
  * Search for a provider which can convert from the following
127
194
  * input currency
128
195
  */
129
- inputCurrencyCode: CurrencySearchInput;
196
+ inputCurrencyCode?: CurrencySearchInput | KeetaNetAccountTokenPublicKeyString;
130
197
  /**
131
198
  * Search for a provider which can convert to the following
132
199
  * output currency
133
200
  */
134
- outputCurrencyCode: CurrencySearchInput;
201
+ outputCurrencyCode?: CurrencySearchInput | KeetaNetAccountTokenPublicKeyString;
202
+ /**
203
+ * Search for a provider which supports ANY of the following
204
+ * KYC providers
205
+ */
206
+ kycProviders?: string[];
135
207
  };
136
208
  'kyc': {
137
209
  /**
@@ -150,34 +222,14 @@ type ServiceSearchCriteria<T extends Services> = {
150
222
  workInProgress: true;
151
223
  };
152
224
  }[T];
153
- type ResolverConfig = {
154
- /**
155
- * The "root" account to use as the basis for all lookups. It should
156
- * contain the authoritative information for resolving in its
157
- * Metadata.
158
- */
159
- root: KeetaNetAccount;
160
- /**
161
- * A KeetaNet Client to access the network using.
162
- */
163
- client: KeetaNetClient.Client | KeetaNetClient.UserClient;
164
- /**
165
- * A list of trusted Certificate Authorities to use when connecting to
166
- * external HTTPS services.
167
- */
168
- trustedCAs: string[];
169
- /**
170
- * Logger to use for debugging
171
- */
172
- logger?: Logger;
173
- /**
174
- * ID for this instance of the resolver
175
- */
176
- id?: string;
177
- /**
178
- * Caching Parameters
179
- */
180
- cache?: Omit<NonNullable<MetadataConfig['cache']>, 'instance'>;
225
+ type ResolverLookupServiceResults<Service extends Services> = {
226
+ [id: string]: ToValuizableObject<NonNullable<ServiceMetadata['services'][Service]>[string]>;
227
+ };
228
+ type ServicesMetadataLookupMap = {
229
+ [Service in Services]: {
230
+ criteria: ServiceSearchCriteria<Service>;
231
+ results: ResolverLookupServiceResults<Service>;
232
+ };
181
233
  };
182
234
  type JSONSerializablePrimitive = Exclude<JSONSerializable, object>;
183
235
  type ValuizeInput = JSONSerializablePrimitive | ValuizableObject | ValuizableArray;
@@ -220,6 +272,47 @@ type ToJSONValuizableObject<T extends object> = {
220
272
  type ToJSONValuizable<T> = ToJSONValuizableObject<{
221
273
  tmp: T;
222
274
  }>['tmp'];
275
+ /**
276
+ * A cache object
277
+ */
278
+ type URLCacheObject = Map<string, {
279
+ pass: true;
280
+ value: JSONSerializable;
281
+ expires: Date;
282
+ } | {
283
+ pass: false;
284
+ error: unknown;
285
+ expires: Date;
286
+ }>;
287
+ type ResolverConfig = {
288
+ /**
289
+ * The "root" account to use as the basis for all lookups. It should
290
+ * contain the authoritative information for resolving in its
291
+ * Metadata.
292
+ */
293
+ root: KeetaNetAccount;
294
+ /**
295
+ * A KeetaNet Client to access the network using.
296
+ */
297
+ client: KeetaNetClient.Client | KeetaNetClient.UserClient;
298
+ /**
299
+ * A list of trusted Certificate Authorities to use when connecting to
300
+ * external HTTPS services.
301
+ */
302
+ trustedCAs: string[];
303
+ /**
304
+ * Logger to use for debugging
305
+ */
306
+ logger?: Logger;
307
+ /**
308
+ * ID for this instance of the resolver
309
+ */
310
+ id?: string;
311
+ /**
312
+ * Caching Parameters
313
+ */
314
+ cache?: Omit<NonNullable<MetadataConfig['cache']>, 'instance'>;
315
+ };
223
316
  type MetadataConfig = {
224
317
  trustedCAs: ResolverConfig['trustedCAs'];
225
318
  client: KeetaNetClient.Client;
@@ -251,7 +344,11 @@ declare class Metadata implements ValuizableInstance {
251
344
  * Assert that the supplied value is a valid Metadata Root Object
252
345
  */
253
346
  static assertMetadata(value: unknown): asserts value is ToJSONValuizable<ServiceMetadata>;
347
+ static isValuizable(value: unknown): value is ValuizableMethod;
254
348
  constructor(url: string | URL, config: MetadataConfig);
349
+ /**
350
+ * @param metadata Metadata to parse -- base64 encoded string or ArrayBuffer
351
+ */
255
352
  private parseMetadata;
256
353
  private readKeetaNetURL;
257
354
  private readHTTPSURL;
@@ -284,25 +381,27 @@ type ResolverStats = {
284
381
  miss: number;
285
382
  };
286
383
  };
287
- type ResolverLookupBankingResults = {
288
- [id: string]: ToValuizableObject<NonNullable<ServiceMetadata['services']['banking']>[string]>;
289
- };
290
- type ResolverLookupKYCResults = {
291
- [id: string]: ToValuizableObject<NonNullable<ServiceMetadata['services']['kyc']>[string]>;
292
- };
293
384
  declare class Resolver {
294
385
  #private;
295
386
  readonly id: string;
296
387
  static readonly Metadata: typeof Metadata;
388
+ private readonly lookupMap;
297
389
  constructor(config: ResolverConfig);
298
390
  get stats(): ResolverStats;
299
391
  private lookupBankingServices;
300
392
  private lookupKYCServices;
301
- lookup<T extends 'banking'>(service: T, criteria: ServiceSearchCriteria<'banking'>): Promise<ResolverLookupBankingResults | undefined>;
302
- lookup<T extends 'kyc'>(service: T, criteria: ServiceSearchCriteria<'kyc'>): Promise<ResolverLookupKYCResults | undefined>;
303
- lookup<T extends Services>(service: T, criteria: ServiceSearchCriteria<T>): Promise<ResolverLookupBankingResults | ResolverLookupKYCResults | undefined>;
393
+ private lookupFXServices;
394
+ listTokens(): Promise<{
395
+ token: KeetaNetAccountTokenPublicKeyString;
396
+ currency: CurrencySearchCanonical;
397
+ }[]>;
398
+ lookupToken(currencyCode: CurrencySearchInput | KeetaNetAccountTokenPublicKeyString): Promise<{
399
+ token: KeetaNetAccountTokenPublicKeyString;
400
+ currency: CurrencySearchCanonical;
401
+ } | null>;
402
+ lookup<T extends keyof ServicesMetadataLookupMap>(service: T, criteria: ServicesMetadataLookupMap[T]['criteria']): Promise<ServicesMetadataLookupMap[T]['results'] | undefined>;
304
403
  clearCache(): void;
305
404
  }
306
405
  export default Resolver;
307
- export type { ServiceMetadata, ServiceSearchCriteria, Services };
406
+ export type { ServiceMetadata, ServiceMetadataExternalizable, ServiceSearchCriteria, Services };
308
407
  //# sourceMappingURL=resolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/lib/resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/lib/resolver.ts"],"names":[],"mappings":"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"}