@grvt/sdk 0.0.1-beta.4 → 0.0.1-beta.6

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.
package/README.md CHANGED
@@ -13,7 +13,16 @@ npm install @grvt/sdk
13
13
  ### REST API Client
14
14
 
15
15
  ```typescript
16
- import { ECurrency, ETransferType, ITransferMetadata, ETransferProvider, ETransferDirection, EGrvtEnvironment, EChain } from '@grvt/sdk';
16
+ import {
17
+ ECurrency,
18
+ ETransferType,
19
+ ITransferMetadata,
20
+ ETransferProvider,
21
+ ETransferDirection,
22
+ EGrvtEnvironment,
23
+ EChain,
24
+ ISigningOption
25
+ } from '@grvt/sdk';
17
26
 
18
27
  // Initialize the client
19
28
  const client = new GrvtClient({
@@ -31,7 +40,7 @@ const subAccountSummary = await client.getSubAccountSummary({
31
40
  });
32
41
 
33
42
  // Transfer examples
34
- // Note: The signature field is optional. If not provided, the SDK will automatically compute it using the apiSecret.
43
+ // Note: the signature field is optional. If not provided, the SDK will automatically compute it using the apiSecret and provided signing options
35
44
 
36
45
  // Standard transfer
37
46
  const transfer1 = await client.transfer({
@@ -45,8 +54,7 @@ const transfer1 = await client.transfer({
45
54
  });
46
55
 
47
56
 
48
- // Transfer for deposit/withdrawal workflow. You can pass the metadata as the second argument
49
- // Note: The signature field is optional. If not provided, the SDK will automatically compute it using the apiSecret.
57
+ // Metadata for transfer, you can pass it as the second argument for the transfer API
50
58
  const metadata: ITransferMetadata = {
51
59
  provider: ETransferProvider.RHINO;
52
60
  direction: ETransferDirection.DEPOSIT; // Use ETransferDirection.WITHDRAWAL for withdraw flow
@@ -56,6 +64,12 @@ const metadata: ITransferMetadata = {
56
64
  provider_ref_id: commit_id,
57
65
  };
58
66
 
67
+ // Signing options for generating the signature as the third argument for the transfer API
68
+ const signingOptions: ISigningOption = {
69
+ nonce: 12345,
70
+ expiration: '1746093221289693252'
71
+ };
72
+
59
73
  const transfer2 = await client.transfer(
60
74
  {
61
75
  from_account_id: 'from-account-id',
@@ -64,7 +78,8 @@ const transfer2 = await client.transfer(
64
78
  num_tokens: '100',
65
79
  transfer_type: ETransferType.NON_NATIVE_BRIDGE_DEPOSIT, // Use NON_NATIVE_BRIDGE_WITHDRAW for withdraw flow
66
80
  },
67
- metadata
81
+ metadata,
82
+ signingOptions
68
83
  );
69
84
 
70
85
  // Request deposit approval
@@ -78,8 +93,8 @@ const depositApproval = await client.requestDepositApproval({
78
93
 
79
94
 
80
95
  // Withdraw funds from your account
81
- // Note: For withdrawals, the signature is automatically computed by the SDK using the apiSecret.
82
- const withdrawResult = await client.withdrawal({
96
+ // Note: the signature field is optional. If not provided, the SDK will automatically compute it using the apiSecret and provided signing options
97
+ const withdrawResult = await client.withdraw({
83
98
  from_account_id: 'your-account-id',
84
99
  to_eth_address: 'destination-eth-address',
85
100
  currency: ECurrency.USDT,
@@ -1,10 +1,11 @@
1
1
  import { IGrvtConfig } from '../config/config';
2
2
  import { GrvtBaseClient } from './GrvtBaseClient';
3
- import { TDG, MDG, IApiWithdrawalRequest } from '@grvt/client';
3
+ import { TDG, MDG, IApiWithdrawalRequest, IApiTransferResponse } from '@grvt/client';
4
4
  import { Wallet } from 'ethers';
5
5
  import { IApiSubAccountSummaryResponse, IApiFundingAccountSummaryResponse, IApiTransferHistoryRequest, IApiTransferHistoryResponse, IApiSubAccountSummaryRequest, IApiTransferRequest } from '@grvt/client';
6
6
  import { ITransferMetadata } from '../types/transfer';
7
7
  import { IDepositOptions, IApiDepositApprovalRequest, IDepositApprovalResponse } from '../types/deposit';
8
+ import { ISigningOptions } from '../types/signature';
8
9
  export declare class GrvtClient extends GrvtBaseClient {
9
10
  protected tdgClient: TDG;
10
11
  protected mdgClient: MDG;
@@ -26,19 +27,20 @@ export declare class GrvtClient extends GrvtBaseClient {
26
27
  /**
27
28
  * Withdraw funds from the account
28
29
  * @param request - Withdrawal request
30
+ * @param options - Signing options, if not provided, nonce will be generated randomly and expiration will be 24 hours from now
29
31
  * @returns Promise with withdrawal response
30
32
  */
31
- withdrawal(request: IApiWithdrawalRequest): Promise<{
33
+ withdraw(request: IApiWithdrawalRequest, options?: ISigningOptions): Promise<{
32
34
  acknowledgement: boolean;
33
35
  }>;
34
36
  /**
35
37
  * Transfer funds between accounts
36
38
  * @param request - Transfer request
39
+ * @param metadata - Transfer metadata
40
+ * @param options - Signing options, if not provided, nonce will be generated randomly and expiration will be 24 hours from now
37
41
  * @returns Promise with transfer response
38
42
  */
39
- transfer(request: IApiTransferRequest, metadata?: ITransferMetadata): Promise<{
40
- acknowledgement: boolean;
41
- }>;
43
+ transfer(request: IApiTransferRequest, metadata?: ITransferMetadata, options?: ISigningOptions): Promise<IApiTransferResponse>;
42
44
  /**
43
45
  * Get transfer history
44
46
  * @returns Promise with transfer history response
@@ -43,15 +43,16 @@ class GrvtClient extends GrvtBaseClient_1.GrvtBaseClient {
43
43
  /**
44
44
  * Withdraw funds from the account
45
45
  * @param request - Withdrawal request
46
+ * @param options - Signing options, if not provided, nonce will be generated randomly and expiration will be 24 hours from now
46
47
  * @returns Promise with withdrawal response
47
48
  */
48
- async withdrawal(request) {
49
+ async withdraw(request, options) {
49
50
  const config = await this.authenticatedEndpoint();
50
51
  if (!request.signature) {
51
52
  if (!this.wallet) {
52
53
  throw new Error('signing requires API secret');
53
54
  }
54
- const withdrawalSignature = await (0, withdraw_1.signWithdrawal)(request, this.wallet, this.config.env);
55
+ const withdrawalSignature = await (0, withdraw_1.signWithdrawal)(request, this.wallet, this.config.env, options);
55
56
  request.signature = withdrawalSignature;
56
57
  }
57
58
  return this.tdgClient.withdrawal(request, config);
@@ -59,9 +60,11 @@ class GrvtClient extends GrvtBaseClient_1.GrvtBaseClient {
59
60
  /**
60
61
  * Transfer funds between accounts
61
62
  * @param request - Transfer request
63
+ * @param metadata - Transfer metadata
64
+ * @param options - Signing options, if not provided, nonce will be generated randomly and expiration will be 24 hours from now
62
65
  * @returns Promise with transfer response
63
66
  */
64
- async transfer(request, metadata) {
67
+ async transfer(request, metadata, options) {
65
68
  // Make sure transfer metadata can only be set using the metadata parameter, not directly in the request
66
69
  if (request.transfer_metadata) {
67
70
  throw new Error('transfer_metadata must be set using the metadata parameter, not directly in the request');
@@ -73,7 +76,7 @@ class GrvtClient extends GrvtBaseClient_1.GrvtBaseClient {
73
76
  if (!this.wallet) {
74
77
  throw new Error('signing requires API secret');
75
78
  }
76
- const transferSignature = await (0, transfer_1.signTransfer)(request, this.wallet, this.config.env);
79
+ const transferSignature = await (0, transfer_1.signTransfer)(request, this.wallet, this.config.env, options);
77
80
  request.signature = transferSignature;
78
81
  }
79
82
  const config = await this.authenticatedEndpoint();
@@ -1 +1 @@
1
- {"version":3,"file":"GrvtClient.js","sourceRoot":"","sources":["../../src/client/GrvtClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GrvtClient.js","sourceRoot":"","sources":["../../src/client/GrvtClient.ts"],"names":[],"mappings":"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"}
package/index.d.ts CHANGED
@@ -5,8 +5,10 @@ export * from './config/config';
5
5
  export * from './signing/transfer';
6
6
  export * from './signing/utils';
7
7
  export * from './signing/withdraw';
8
+ export * from './signing/types';
8
9
  export * from './types/chain';
9
10
  export * from './types/deposit';
10
11
  export * from './types/transfer';
12
+ export * from './types/signature';
11
13
  import { GrvtClient } from './client/GrvtClient';
12
14
  export default GrvtClient;
package/index.js CHANGED
@@ -21,9 +21,11 @@ __exportStar(require("./config/config"), exports);
21
21
  __exportStar(require("./signing/transfer"), exports);
22
22
  __exportStar(require("./signing/utils"), exports);
23
23
  __exportStar(require("./signing/withdraw"), exports);
24
+ __exportStar(require("./signing/types"), exports);
24
25
  __exportStar(require("./types/chain"), exports);
25
26
  __exportStar(require("./types/deposit"), exports);
26
27
  __exportStar(require("./types/transfer"), exports);
28
+ __exportStar(require("./types/signature"), exports);
27
29
  // Re-export the main client class as default
28
30
  const GrvtClient_1 = require("./client/GrvtClient");
29
31
  exports.default = GrvtClient_1.GrvtClient;
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,sDAAoC;AACpC,wDAAsC;AACtC,kDAAgC;AAChC,qDAAmC;AACnC,kDAAgC;AAChC,qDAAmC;AACnC,gDAA8B;AAC9B,kDAAgC;AAChC,mDAAiC;AAEjC,6CAA6C;AAC7C,oDAAiD;AACjD,kBAAe,uBAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,sDAAoC;AACpC,wDAAsC;AACtC,kDAAgC;AAChC,qDAAmC;AACnC,kDAAgC;AAChC,qDAAmC;AACnC,kDAAgC;AAChC,gDAA8B;AAC9B,kDAAgC;AAChC,mDAAiC;AACjC,oDAAkC;AAElC,6CAA6C;AAC7C,oDAAiD;AACjD,kBAAe,uBAAU,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@grvt/sdk",
3
- "version": "0.0.1-beta.4",
3
+ "version": "0.0.1-beta.6",
4
4
  "description": "TypeScript SDK for GRVT",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -43,7 +43,7 @@
43
43
  "typescript": "^5.8.3"
44
44
  },
45
45
  "dependencies": {
46
- "@grvt/client": "^1.4.2",
46
+ "@grvt/client": "^1.4.3",
47
47
  "@metamask/eth-sig-util": "^8.2.0",
48
48
  "@types/ws": "^8.18.1",
49
49
  "ethers": "^6.13.5",
@@ -1,4 +1,5 @@
1
1
  import { EGrvtEnvironment } from '../config/config';
2
2
  import { Wallet } from 'ethers';
3
3
  import { IApiTransferRequest, ISignature } from '@grvt/client';
4
- export declare const signTransfer: (transfer: IApiTransferRequest, wallet: Wallet, env: EGrvtEnvironment, nonce?: number, expirationInHours?: number) => Promise<ISignature>;
4
+ import { ISigningOptions } from '../types/signature';
5
+ export declare const signTransfer: (transfer: IApiTransferRequest, wallet: Wallet, env: EGrvtEnvironment, options?: ISigningOptions) => Promise<ISignature>;
@@ -6,9 +6,9 @@ const utils_1 = require("./utils");
6
6
  const signer_1 = require("./signer");
7
7
  const types_1 = require("./types");
8
8
  const client_1 = require("@grvt/client");
9
- const signTransfer = async (transfer, wallet, env, nonce, expirationInHours) => {
10
- const signingNonce = nonce || (0, utils_1.GenerateNonce)();
11
- const signingExpiration = (0, utils_1.GenerateExpiration)(expirationInHours);
9
+ const signTransfer = async (transfer, wallet, env, options) => {
10
+ const nonce = options?.nonce || (0, utils_1.GenerateNonce)();
11
+ const expiration = options?.expiration || (0, utils_1.GenerateExpiration)();
12
12
  const domain = (0, domain_1.getEIP712DomainData)(env);
13
13
  const messageData = {
14
14
  fromAccount: transfer.from_account_id || '',
@@ -17,8 +17,8 @@ const signTransfer = async (transfer, wallet, env, nonce, expirationInHours) =>
17
17
  toSubAccount: transfer.to_sub_account_id || '',
18
18
  tokenCurrency: transfer.currency ? Object.keys(client_1.ECurrency).indexOf(transfer.currency) + 1 : 0,
19
19
  numTokens: transfer.num_tokens ? Math.floor(parseFloat(transfer.num_tokens) * 1e6) : 0,
20
- nonce: signingNonce,
21
- expiration: signingExpiration,
20
+ nonce: nonce,
21
+ expiration: expiration,
22
22
  };
23
23
  const signature = await signer_1.Signer.sign(wallet.privateKey, {
24
24
  ...types_1.Transfer,
@@ -31,8 +31,8 @@ const signTransfer = async (transfer, wallet, env, nonce, expirationInHours) =>
31
31
  s: s,
32
32
  v: v,
33
33
  signer: wallet.address,
34
- nonce: signingNonce,
35
- expiration: signingExpiration,
34
+ nonce: nonce,
35
+ expiration: expiration,
36
36
  };
37
37
  };
38
38
  exports.signTransfer = signTransfer;
@@ -1 +1 @@
1
- {"version":3,"file":"transfer.js","sourceRoot":"","sources":["../../src/signing/transfer.ts"],"names":[],"mappings":";;;AACA,qCAA+C;AAC/C,mCAA4D;AAC5D,qCAAkC;AAClC,mCAAmC;AAEnC,yCAA0E;AAEnE,MAAM,YAAY,GAAG,KAAK,EAC/B,QAA6B,EAC7B,MAAc,EACd,GAAqB,EACrB,KAAc,EACd,iBAA0B,EACL,EAAE;IACvB,MAAM,YAAY,GAAG,KAAK,IAAI,IAAA,qBAAa,GAAE,CAAC;IAC9C,MAAM,iBAAiB,GAAG,IAAA,0BAAkB,EAAC,iBAAiB,CAAC,CAAC;IAChE,MAAM,MAAM,GAAG,IAAA,4BAAmB,EAAC,GAAG,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG;QAClB,WAAW,EAAE,QAAQ,CAAC,eAAe,IAAI,EAAE;QAC3C,cAAc,EAAE,QAAQ,CAAC,mBAAmB,IAAI,EAAE;QAClD,SAAS,EAAE,QAAQ,CAAC,aAAa,IAAI,EAAE;QACvC,YAAY,EAAE,QAAQ,CAAC,iBAAiB,IAAI,EAAE;QAC9C,aAAa,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAS,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5F,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACtF,KAAK,EAAE,YAAY;QACnB,UAAU,EAAE,iBAAiB;KAC9B,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,eAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;QACrD,GAAG,gBAAQ;QACX,MAAM;QACN,OAAO,EAAE,WAAW;KACrB,CAAC,CAAC;IACH,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAE7C,OAAO;QACL,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;QACJ,MAAM,EAAE,MAAM,CAAC,OAAO;QACtB,KAAK,EAAE,YAAY;QACnB,UAAU,EAAE,iBAAiB;KAC9B,CAAC;AACJ,CAAC,CAAC;AAnCW,QAAA,YAAY,gBAmCvB"}
1
+ {"version":3,"file":"transfer.js","sourceRoot":"","sources":["../../src/signing/transfer.ts"],"names":[],"mappings":";;;AACA,qCAA+C;AAC/C,mCAA4D;AAC5D,qCAAkC;AAClC,mCAAmC;AAEnC,yCAA0E;AAGnE,MAAM,YAAY,GAAG,KAAK,EAC/B,QAA6B,EAC7B,MAAc,EACd,GAAqB,EACrB,OAAyB,EACJ,EAAE;IACvB,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,IAAA,qBAAa,GAAE,CAAC;IAChD,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,IAAI,IAAA,0BAAkB,GAAE,CAAC;IAC/D,MAAM,MAAM,GAAG,IAAA,4BAAmB,EAAC,GAAG,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG;QAClB,WAAW,EAAE,QAAQ,CAAC,eAAe,IAAI,EAAE;QAC3C,cAAc,EAAE,QAAQ,CAAC,mBAAmB,IAAI,EAAE;QAClD,SAAS,EAAE,QAAQ,CAAC,aAAa,IAAI,EAAE;QACvC,YAAY,EAAE,QAAQ,CAAC,iBAAiB,IAAI,EAAE;QAC9C,aAAa,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAS,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5F,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACtF,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE,UAAU;KACvB,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,eAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;QACrD,GAAG,gBAAQ;QACX,MAAM;QACN,OAAO,EAAE,WAAW;KACrB,CAAC,CAAC;IACH,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAE7C,OAAO;QACL,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;QACJ,MAAM,EAAE,MAAM,CAAC,OAAO;QACtB,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE,UAAU;KACvB,CAAC;AACJ,CAAC,CAAC;AAlCW,QAAA,YAAY,gBAkCvB"}
@@ -1,4 +1,5 @@
1
1
  import { EGrvtEnvironment } from '../config/config';
2
2
  import { Wallet } from 'ethers';
3
3
  import { IApiWithdrawalRequest, ISignature } from '@grvt/client';
4
- export declare const signWithdrawal: (withdrawal: IApiWithdrawalRequest, wallet: Wallet, env: EGrvtEnvironment, nonce?: number, expirationInHours?: number) => Promise<ISignature>;
4
+ import { ISigningOptions } from '../types/signature';
5
+ export declare const signWithdrawal: (withdrawal: IApiWithdrawalRequest, wallet: Wallet, env: EGrvtEnvironment, options?: ISigningOptions) => Promise<ISignature>;
@@ -6,9 +6,9 @@ const utils_1 = require("./utils");
6
6
  const signer_1 = require("./signer");
7
7
  const types_1 = require("./types");
8
8
  const client_1 = require("@grvt/client");
9
- const signWithdrawal = async (withdrawal, wallet, env, nonce, expirationInHours) => {
10
- const signingNonce = nonce || (0, utils_1.GenerateNonce)();
11
- const signingExpiration = (0, utils_1.GenerateExpiration)(expirationInHours);
9
+ const signWithdrawal = async (withdrawal, wallet, env, options) => {
10
+ const nonce = options?.nonce || (0, utils_1.GenerateNonce)();
11
+ const expiration = options?.expiration || (0, utils_1.GenerateExpiration)();
12
12
  const domain = (0, domain_1.getEIP712DomainData)(env);
13
13
  const messageData = {
14
14
  fromAccount: withdrawal.from_account_id || '',
@@ -17,8 +17,8 @@ const signWithdrawal = async (withdrawal, wallet, env, nonce, expirationInHours)
17
17
  ? Object.keys(client_1.ECurrency).indexOf(withdrawal.currency) + 1
18
18
  : 0,
19
19
  numTokens: withdrawal.num_tokens ? Math.floor(parseFloat(withdrawal.num_tokens) * 1e6) : 0,
20
- nonce: signingNonce,
21
- expiration: signingExpiration,
20
+ nonce: nonce,
21
+ expiration: expiration,
22
22
  };
23
23
  const signature = await signer_1.Signer.sign(wallet.privateKey, {
24
24
  ...types_1.Withdrawal,
@@ -31,8 +31,8 @@ const signWithdrawal = async (withdrawal, wallet, env, nonce, expirationInHours)
31
31
  s: s,
32
32
  v: v,
33
33
  signer: wallet.address,
34
- nonce: signingNonce,
35
- expiration: signingExpiration,
34
+ nonce: nonce,
35
+ expiration: expiration,
36
36
  };
37
37
  };
38
38
  exports.signWithdrawal = signWithdrawal;
@@ -1 +1 @@
1
- {"version":3,"file":"withdraw.js","sourceRoot":"","sources":["../../src/signing/withdraw.ts"],"names":[],"mappings":";;;AACA,qCAA+C;AAC/C,mCAA4D;AAC5D,qCAAkC;AAClC,mCAAqC;AAErC,yCAA4E;AAErE,MAAM,cAAc,GAAG,KAAK,EACjC,UAAiC,EACjC,MAAc,EACd,GAAqB,EACrB,KAAc,EACd,iBAA0B,EACL,EAAE;IACvB,MAAM,YAAY,GAAG,KAAK,IAAI,IAAA,qBAAa,GAAE,CAAC;IAC9C,MAAM,iBAAiB,GAAG,IAAA,0BAAkB,EAAC,iBAAiB,CAAC,CAAC;IAChE,MAAM,MAAM,GAAG,IAAA,4BAAmB,EAAC,GAAG,CAAC,CAAC;IAExC,MAAM,WAAW,GAAG;QAClB,WAAW,EAAE,UAAU,CAAC,eAAe,IAAI,EAAE;QAC7C,YAAY,EAAE,UAAU,CAAC,cAAc,IAAI,EAAE;QAC7C,aAAa,EAAE,UAAU,CAAC,QAAQ;YAChC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAS,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;YACzD,CAAC,CAAC,CAAC;QACL,SAAS,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1F,KAAK,EAAE,YAAY;QACnB,UAAU,EAAE,iBAAiB;KAC9B,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,eAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;QACrD,GAAG,kBAAU;QACb,MAAM;QACN,OAAO,EAAE,WAAW;KACrB,CAAC,CAAC;IACH,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAE7C,OAAO;QACL,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;QACJ,MAAM,EAAE,MAAM,CAAC,OAAO;QACtB,KAAK,EAAE,YAAY;QACnB,UAAU,EAAE,iBAAiB;KAC9B,CAAC;AACJ,CAAC,CAAC;AApCW,QAAA,cAAc,kBAoCzB"}
1
+ {"version":3,"file":"withdraw.js","sourceRoot":"","sources":["../../src/signing/withdraw.ts"],"names":[],"mappings":";;;AACA,qCAA+C;AAC/C,mCAA4D;AAC5D,qCAAkC;AAClC,mCAAqC;AAErC,yCAA4E;AAGrE,MAAM,cAAc,GAAG,KAAK,EACjC,UAAiC,EACjC,MAAc,EACd,GAAqB,EACrB,OAAyB,EACJ,EAAE;IACvB,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,IAAA,qBAAa,GAAE,CAAC;IAChD,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,IAAI,IAAA,0BAAkB,GAAE,CAAC;IAC/D,MAAM,MAAM,GAAG,IAAA,4BAAmB,EAAC,GAAG,CAAC,CAAC;IAExC,MAAM,WAAW,GAAG;QAClB,WAAW,EAAE,UAAU,CAAC,eAAe,IAAI,EAAE;QAC7C,YAAY,EAAE,UAAU,CAAC,cAAc,IAAI,EAAE;QAC7C,aAAa,EAAE,UAAU,CAAC,QAAQ;YAChC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAS,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;YACzD,CAAC,CAAC,CAAC;QACL,SAAS,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1F,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE,UAAU;KACvB,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,eAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;QACrD,GAAG,kBAAU;QACb,MAAM;QACN,OAAO,EAAE,WAAW;KACrB,CAAC,CAAC;IACH,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAE7C,OAAO;QACL,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;QACJ,MAAM,EAAE,MAAM,CAAC,OAAO;QACtB,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE,UAAU;KACvB,CAAC;AACJ,CAAC,CAAC;AAnCW,QAAA,cAAc,kBAmCzB"}
@@ -0,0 +1,4 @@
1
+ export interface ISigningOptions {
2
+ nonce?: number;
3
+ expiration?: string;
4
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=signature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signature.js","sourceRoot":"","sources":["../../src/types/signature.ts"],"names":[],"mappings":""}