@startbahn/startrail-sdk-js 1.24.0-beta.3 → 1.25.0-beta.2

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
@@ -92,6 +92,7 @@ sdk = new Startrail({
92
92
  words: {
93
93
  en: {
94
94
  modal: {
95
+ continueLogin: 'Login with previous {verifier} account', // {verifier} is optional but to be replaced programmatically with the login provider name if it exists in the sentence
95
96
  termsConditions: 'your termsConditions',
96
97
  termsConditionsLinkUrl: 'your termsConditionsLinkUrl'
97
98
  },
@@ -109,6 +110,7 @@ sdk = new Startrail({
109
110
  },
110
111
  ja: {
111
112
  modal: {
113
+ continueLogin: '前回の{verifier}アカウントを使う', // {verifier}は任意ですが、文言の中に存在していれば選択したログイン方法の名前へと自動的に置き換わります。
112
114
  termsConditions: 'あなたの termsConditions',
113
115
  termsConditionsLinkUrl: 'あなたの termsConditionsLinkUrl'
114
116
  },
@@ -164726,7 +164726,7 @@ const torusConfig = (config) => {
164726
164726
  showOnModal: false
164727
164727
  },
164728
164728
  [config.auth0TorusConfigKey]: {
164729
- name: ' ',
164729
+ name: 'email',
164730
164730
  typeOfLogin: 'email_password',
164731
164731
  description: 'login.buttonText',
164732
164732
  clientId: config.auth0ClientId,
@@ -164769,7 +164769,7 @@ const isSignup = (config) => {
164769
164769
  * Format data passed from end-users for torus-embed configuration
164770
164770
  */
164771
164771
  const formatConfigForTorusUI = (config) => {
164772
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z;
164772
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3;
164773
164773
  let customUi = {};
164774
164774
  let lang;
164775
164775
  const tkeyDesc = {
@@ -164784,19 +164784,20 @@ const formatConfigForTorusUI = (config) => {
164784
164784
  yourDigital: config.conditionalWords.subtitle[lang],
164785
164785
  signIn: config.conditionalWords.authLabel[lang],
164786
164786
  termsConditions: ((_d = (_c = (_b = (_a = config === null || config === void 0 ? void 0 : config.customUi) === null || _a === void 0 ? void 0 : _a.words) === null || _b === void 0 ? void 0 : _b[lang]) === null || _c === void 0 ? void 0 : _c.modal) === null || _d === void 0 ? void 0 : _d.termsConditions) || constant_1.DEFAULT_WORD.dappLogin.termsConditions[lang],
164787
- termsLearnMore: '' // Remove additional link from modal
164787
+ termsLearnMore: '',
164788
+ continueWith: ((_h = (_g = (_f = (_e = config === null || config === void 0 ? void 0 : config.customUi) === null || _e === void 0 ? void 0 : _e.words) === null || _f === void 0 ? void 0 : _f[lang]) === null || _g === void 0 ? void 0 : _g.modal) === null || _h === void 0 ? void 0 : _h.continueLogin) || constant_1.DEFAULT_WORD.dappLogin.continueWith[lang]
164788
164789
  },
164789
164790
  login: {
164790
164791
  buttonText: config.conditionalWords.emailButton[lang]
164791
164792
  },
164792
164793
  dappTransfer: {
164793
- permission: ((_h = (_g = (_f = (_e = config === null || config === void 0 ? void 0 : config.customUi) === null || _e === void 0 ? void 0 : _e.words) === null || _f === void 0 ? void 0 : _f[lang]) === null || _g === void 0 ? void 0 : _g.signPopup) === null || _h === void 0 ? void 0 : _h.title) || constant_1.DEFAULT_WORD.dappTransfer.permission[lang],
164794
- data: ((_m = (_l = (_k = (_j = config === null || config === void 0 ? void 0 : config.customUi) === null || _j === void 0 ? void 0 : _j.words) === null || _k === void 0 ? void 0 : _k[lang]) === null || _l === void 0 ? void 0 : _l.signPopup) === null || _m === void 0 ? void 0 : _m.dataToSign) || constant_1.DEFAULT_WORD.dappTransfer.data[lang]
164794
+ permission: ((_m = (_l = (_k = (_j = config === null || config === void 0 ? void 0 : config.customUi) === null || _j === void 0 ? void 0 : _j.words) === null || _k === void 0 ? void 0 : _k[lang]) === null || _l === void 0 ? void 0 : _l.signPopup) === null || _m === void 0 ? void 0 : _m.title) || constant_1.DEFAULT_WORD.dappTransfer.permission[lang],
164795
+ data: ((_r = (_q = (_p = (_o = config === null || config === void 0 ? void 0 : config.customUi) === null || _o === void 0 ? void 0 : _o.words) === null || _p === void 0 ? void 0 : _p[lang]) === null || _q === void 0 ? void 0 : _q.signPopup) === null || _r === void 0 ? void 0 : _r.dataToSign) || constant_1.DEFAULT_WORD.dappTransfer.data[lang]
164795
164796
  },
164796
164797
  dappProvider: {
164797
- requestFrom: ((_r = (_q = (_p = (_o = config === null || config === void 0 ? void 0 : config.customUi) === null || _o === void 0 ? void 0 : _o.words) === null || _p === void 0 ? void 0 : _p[lang]) === null || _q === void 0 ? void 0 : _q.signPopup) === null || _r === void 0 ? void 0 : _r.requestFrom) || constant_1.DEFAULT_WORD.dappProvider.requestFrom[lang],
164798
- confirm: ((_v = (_u = (_t = (_s = config === null || config === void 0 ? void 0 : config.customUi) === null || _s === void 0 ? void 0 : _s.words) === null || _t === void 0 ? void 0 : _t[lang]) === null || _u === void 0 ? void 0 : _u.signPopup) === null || _v === void 0 ? void 0 : _v.confirm) || constant_1.DEFAULT_WORD.dappProvider.confirm[lang],
164799
- cancel: ((_z = (_y = (_x = (_w = config === null || config === void 0 ? void 0 : config.customUi) === null || _w === void 0 ? void 0 : _w.words) === null || _x === void 0 ? void 0 : _x[lang]) === null || _y === void 0 ? void 0 : _y.signPopup) === null || _z === void 0 ? void 0 : _z.cancel) || constant_1.DEFAULT_WORD.dappProvider.cancel[lang]
164798
+ requestFrom: ((_v = (_u = (_t = (_s = config === null || config === void 0 ? void 0 : config.customUi) === null || _s === void 0 ? void 0 : _s.words) === null || _t === void 0 ? void 0 : _t[lang]) === null || _u === void 0 ? void 0 : _u.signPopup) === null || _v === void 0 ? void 0 : _v.requestFrom) || constant_1.DEFAULT_WORD.dappProvider.requestFrom[lang],
164799
+ confirm: ((_z = (_y = (_x = (_w = config === null || config === void 0 ? void 0 : config.customUi) === null || _w === void 0 ? void 0 : _w.words) === null || _x === void 0 ? void 0 : _x[lang]) === null || _y === void 0 ? void 0 : _y.signPopup) === null || _z === void 0 ? void 0 : _z.confirm) || constant_1.DEFAULT_WORD.dappProvider.confirm[lang],
164800
+ cancel: ((_3 = (_2 = (_1 = (_0 = config === null || config === void 0 ? void 0 : config.customUi) === null || _0 === void 0 ? void 0 : _0.words) === null || _1 === void 0 ? void 0 : _1[lang]) === null || _2 === void 0 ? void 0 : _2.signPopup) === null || _3 === void 0 ? void 0 : _3.cancel) || constant_1.DEFAULT_WORD.dappProvider.cancel[lang]
164800
164801
  },
164801
164802
  dappCreateTkey: {
164802
164803
  linkDesc1: tkeyDesc[lang],
@@ -164998,6 +164999,10 @@ exports.AUTH0_TORUS_CONFIG_KEY = 'startrail-auth0-email-password';
164998
164999
  exports.COMPRESSION_ALGORITHM = 'gzip';
164999
165000
  exports.DEFAULT_WORD = {
165000
165001
  dappLogin: {
165002
+ continueWith: {
165003
+ ja: '前回の{verifier}アカウントを使う',
165004
+ en: 'Continue with existing {verifier}'
165005
+ },
165001
165006
  subtitle: {
165002
165007
  ja: 'でデジタルウォレット',
165003
165008
  en: 'Your digital wallet with'
@@ -165513,10 +165518,10 @@ class Service {
165513
165518
  };
165514
165519
  switch (config === null || config === void 0 ? void 0 : config.wallet) {
165515
165520
  case 'metamask':
165516
- this.wallet.start(new metamask_1.default(patchDeprecateParams(config)));
165521
+ this.wallet.start(new metamask_1.default(Object.assign(Object.assign({}, patchDeprecateParams(config)), { wallet: 'metamask' })));
165517
165522
  break;
165518
165523
  default:
165519
- this.wallet.start(new torus_1.default(patchDeprecateParams(config)));
165524
+ this.wallet.start(new torus_1.default(Object.assign(Object.assign({}, patchDeprecateParams(config)), { wallet: 'startrail' })));
165520
165525
  }
165521
165526
  this.tx = new transaction_1.default((config === null || config === void 0 ? void 0 : config.apiPath) || constant_1.STARTRAIL_API);
165522
165527
  }
@@ -165760,6 +165765,35 @@ class Service {
165760
165765
  return res.data;
165761
165766
  });
165762
165767
  }
165768
+ transferFromWithProvenance(args) {
165769
+ return __awaiter(this, void 0, void 0, function* () {
165770
+ this._validateEoaMatchFromInitialLogin();
165771
+ const req = util_1.buildRequestObject(args);
165772
+ const path = `/srr/${req.tokenId}/transferFromWithProvenance`;
165773
+ const typedData = yield this.getMetaTxTypedData({ method: 'put', path: `${path}/typedData`, body: typedDataProps(req) });
165774
+ const signature = yield this.signTypedDataMessage(typedData);
165775
+ const res = yield this.tx.postTx(path, {
165776
+ header: this._generateLuwHeader(req.header, signature, util_1.convertToUnpackNonce(typedData.message.nonce)),
165777
+ body: req.body
165778
+ });
165779
+ return res.data;
165780
+ });
165781
+ }
165782
+ bulk(args) {
165783
+ return __awaiter(this, void 0, void 0, function* () {
165784
+ this._validateEoaMatchFromInitialLogin();
165785
+ // Todo: Add validation for each functionType ?
165786
+ const path = '/srr/bulk';
165787
+ const req = util_1.buildRequestObject(args);
165788
+ const typedData = yield this.getMetaTxTypedData({ method: 'post', path: `${path}/typedData`, body: typedDataProps(req) });
165789
+ const signature = yield this.signTypedDataMessage(typedData);
165790
+ const res = yield this.tx.postTx(path, {
165791
+ header: this._generateLuwHeader(req.header, signature, util_1.convertToUnpackNonce(typedData.message.nonce)),
165792
+ body: req.body
165793
+ });
165794
+ return res.data;
165795
+ });
165796
+ }
165763
165797
  /**
165764
165798
  * Change language on your browser wallet
165765
165799
  * @throws Will throw an error
@@ -166045,6 +166079,43 @@ class Startrail {
166045
166079
  }
166046
166080
  });
166047
166081
  }
166082
+ /**
166083
+ * Transfer straight to EOA
166084
+ * @throws Will throw an error
166085
+ */
166086
+ transferFromWithProvenance(args) {
166087
+ return __awaiter(this, void 0, void 0, function* () {
166088
+ if (this.store.torusStatus.popupInprogress)
166089
+ return false;
166090
+ this.store.switchPopupState();
166091
+ try {
166092
+ yield this.service.initAndLogin();
166093
+ return yield this.service.transferFromWithProvenance(args);
166094
+ }
166095
+ finally {
166096
+ this.store.switchPopupState();
166097
+ }
166098
+ });
166099
+ }
166100
+ /**
166101
+ * Generic Bulk interface
166102
+ * @todo Consolidate other bulk functions
166103
+ * @throws Will throw an error
166104
+ */
166105
+ bulk(args) {
166106
+ return __awaiter(this, void 0, void 0, function* () {
166107
+ if (this.store.torusStatus.popupInprogress)
166108
+ return false;
166109
+ this.store.switchPopupState();
166110
+ try {
166111
+ yield this.service.initAndLogin();
166112
+ return yield this.service.bulk(args);
166113
+ }
166114
+ finally {
166115
+ this.store.switchPopupState();
166116
+ }
166117
+ });
166118
+ }
166048
166119
  /**
166049
166120
  * Change language on your browser wallet
166050
166121
  * @throws Will throw an error
@@ -166305,6 +166376,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
166305
166376
  };
166306
166377
  const error_1 = __webpack_require__(/*! ./error */ "./src/error.ts");
166307
166378
  const constant_1 = __webpack_require__(/*! ./constant */ "./src/constant.ts");
166379
+ const ethers_1 = __webpack_require__(/*! ethers */ "./node_modules/ethers/lib.esm/index.js");
166308
166380
  class WalletBuilder {
166309
166381
  /**
166310
166382
  * To prevent creating duplicate wallets
@@ -166344,11 +166416,12 @@ class WalletBuilder {
166344
166416
  return __awaiter(this, void 0, void 0, function* () {
166345
166417
  if (this.wallet === undefined)
166346
166418
  throw new error_1.CustomError(Error(constant_1.StartrailSdkErrorCodeEnum.WALLET_NOT_INITIALIZED)).sdk();
166347
- const EOAs = yield this.wallet.login();
166348
- this.wallet.EOA = EOAs[0];
166419
+ const rawEOAs = yield this.wallet.login();
166420
+ const normalizedEOAs = rawEOAs.map((e) => ethers_1.utils.getAddress(e));
166421
+ this.wallet.EOA = normalizedEOAs[0];
166349
166422
  if (!this.wallet.initialEOA)
166350
- this.wallet.initialEOA = EOAs[0];
166351
- return EOAs;
166423
+ this.wallet.initialEOA = normalizedEOAs[0];
166424
+ return normalizedEOAs;
166352
166425
  });
166353
166426
  }
166354
166427
  /**
@@ -166499,11 +166572,6 @@ class Wallet {
166499
166572
  overwriteConfig(partialConfig) {
166500
166573
  throw new error_1.CustomError(Error(constant_1.StartrailSdkErrorCodeEnum.WALLET_NOT_SUPPORT_FUNCTION)).sdk();
166501
166574
  }
166502
- getUserInfo() {
166503
- return __awaiter(this, void 0, void 0, function* () {
166504
- throw new error_1.CustomError(Error(constant_1.StartrailSdkErrorCodeEnum.WALLET_NOT_SUPPORT_FUNCTION)).sdk();
166505
- });
166506
- }
166507
166575
  switchLanguage() {
166508
166576
  return __awaiter(this, void 0, void 0, function* () {
166509
166577
  throw new error_1.CustomError(Error(constant_1.StartrailSdkErrorCodeEnum.WALLET_NOT_SUPPORT_FUNCTION)).sdk();
@@ -166581,6 +166649,19 @@ class Metamask extends base_1.default {
166581
166649
  }
166582
166650
  });
166583
166651
  }
166652
+ getUserInfo() {
166653
+ return __awaiter(this, void 0, void 0, function* () {
166654
+ return {
166655
+ email: '',
166656
+ name: '',
166657
+ profileImage: '',
166658
+ verifier: '',
166659
+ verifierId: '',
166660
+ typeOfLogin: '',
166661
+ wallet: 'metamask'
166662
+ };
166663
+ });
166664
+ }
166584
166665
  signMessage(eoa, params) {
166585
166666
  const _super = Object.create(null, {
166586
166667
  signMessage: { get: () => super.signMessage }
@@ -166755,7 +166836,8 @@ class Torus extends base_1.default {
166755
166836
  getUserInfo() {
166756
166837
  return __awaiter(this, void 0, void 0, function* () {
166757
166838
  try {
166758
- return yield this.torusSDK.getUserInfo('');
166839
+ const res = yield this.torusSDK.getUserInfo('');
166840
+ return Object.assign(Object.assign({}, res), { wallet: 'startrail' });
166759
166841
  }
166760
166842
  catch (e) {
166761
166843
  throw new error_1.CustomError(e).torus();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@startbahn/startrail-sdk-js",
3
- "version": "1.24.0-beta.3",
3
+ "version": "1.25.0-beta.2",
4
4
  "description": "Startrail Api for JS SDK",
5
5
  "main": "dist/startrail-sdk.js",
6
6
  "unpkg": "dist/startrail-sdk.js",
@@ -78,6 +78,17 @@ declare module '@startbahn/startrail-sdk-js' {
78
78
  * @throws Will throw an error
79
79
  */
80
80
  addCustomHistoriesToSRRs(args: Type.AddCustomHistoriesToSRRs): Promise<Type.ResponseOfEthStateChange | false>;
81
+ /**
82
+ * Transfer straight to EOA
83
+ * @throws Will throw an error
84
+ */
85
+ transferFromWithProvenance(args: Type.TransferFromWithProvenance): Promise<Type.ResponseOfEthStateChange | false>;
86
+ /**
87
+ * Generic Bulk interface
88
+ * @todo Consolidate other bulk functions
89
+ * @throws Will throw an error
90
+ */
91
+ bulk(args: Type.Bulk): Promise<Type.ResponseOfEthStateChange | false>;
81
92
  /**
82
93
  * Change language on your browser wallet
83
94
  * @throws Will throw an error
@@ -119,6 +130,24 @@ declare module '@startbahn/startrail-sdk-js/types' {
119
130
  metadata: HistoryMetadata;
120
131
  hashFlag: boolean;
121
132
  }
133
+ export interface BulkCommon extends Pick<HTTPHeadersForStartrailLUW, 'startrailLUWContractAddress'> {
134
+ txs: {
135
+ functionType: BulkFunctionType.transferFromWithProvenance;
136
+ data: TransferFromWithProvenanceShared[];
137
+ };
138
+ }
139
+ export interface BulkTransferFromWithProvenance extends Pick<HTTPHeadersForStartrailLUW, 'startrailLUWContractAddress'> {
140
+ txs: TransferFromWithProvenanceShared[];
141
+ }
142
+ export enum BulkFunctionType {
143
+ createSRR = "createSRR",
144
+ approveSRRByCommitment = "approveSRRByCommitment",
145
+ transferFromWithProvenance = "transferFromWithProvenance"
146
+ }
147
+ interface CommonInit {
148
+ apiPath?: string;
149
+ env?: StartrailEnv;
150
+ }
122
151
  export interface ConvertMetadata {
123
152
  metadataBatch: {
124
153
  metadata: object;
@@ -143,6 +172,7 @@ declare module '@startbahn/startrail-sdk-js/types' {
143
172
  titleSignup: string;
144
173
  };
145
174
  modal?: {
175
+ continueLogin: string;
146
176
  termsConditions?: string;
147
177
  termsConditionsLinkUrl?: string;
148
178
  };
@@ -210,10 +240,8 @@ declare module '@startbahn/startrail-sdk-js/types' {
210
240
  }
211
241
  export type Language = 'ja' | 'en';
212
242
  export type LoginProvider = 'google' | 'email_password';
213
- export interface MetamaskInit {
214
- apiPath?: string;
215
- wallet?: 'startrail' | 'metamask';
216
- env?: StartrailEnv;
243
+ export interface MetamaskInit extends CommonInit {
244
+ wallet: 'metamask';
217
245
  }
218
246
  export enum MetaTxRequestType {
219
247
  WalletAddOwner = "WalletAddOwner",
@@ -285,11 +313,11 @@ declare module '@startbahn/startrail-sdk-js/types' {
285
313
  export interface DeprecateSDKInit {
286
314
  torusBuildEnv?: StartrailEnv;
287
315
  }
288
- export type StartrailSDKInitConfig = StartrailInit & MetamaskInit & DeprecateSDKInit;
289
- export interface StartrailInit {
290
- apiPath?: string;
291
- wallet?: 'startrail' | 'metamask';
292
- env?: StartrailEnv;
316
+ export interface StartrailSDKInitConfig extends StartrailInit, DeprecateSDKInit {
317
+ wallet?: WalletType;
318
+ }
319
+ export interface StartrailInit extends CommonInit {
320
+ wallet?: WalletType;
293
321
  authAction?: AuthAction;
294
322
  auth0ClientId?: string;
295
323
  auth0Domain?: string;
@@ -308,6 +336,20 @@ declare module '@startbahn/startrail-sdk-js/types' {
308
336
  export interface TransferSRRBatch extends Pick<HTTPHeadersForStartrailLUW, 'startrailLUWContractAddress'> {
309
337
  txs: ApproveSRRByCommitmentShared[];
310
338
  }
339
+ export interface TransferFromWithProvenance extends TransferFromWithProvenanceShared, Pick<HTTPHeadersForStartrailLUW, 'startrailLUWContractAddress'> {
340
+ }
341
+ export interface Bulk extends Pick<HTTPHeadersForStartrailLUW, 'startrailLUWContractAddress'> {
342
+ txs: {
343
+ functionType: BulkFunctionType.transferFromWithProvenance;
344
+ data: TransferFromWithProvenanceShared;
345
+ }[];
346
+ }
347
+ export interface TransferFromWithProvenanceShared {
348
+ to: string;
349
+ tokenId: string;
350
+ metadata: HistoryMetadata;
351
+ isIntermediary?: boolean;
352
+ }
311
353
  export interface typedDataProps {
312
354
  fromAddress?: string;
313
355
  channelId?: string;
@@ -344,6 +386,7 @@ declare module '@startbahn/startrail-sdk-js/types' {
344
386
  export interface TorusStatus {
345
387
  popupInprogress: boolean;
346
388
  }
389
+ export type WalletType = 'startrail' | 'metamask';
347
390
  export type WalletLoginProvider = {
348
391
  google: boolean;
349
392
  emailPassword: boolean;
@@ -542,23 +585,23 @@ declare module '@startbahn/startrail-sdk-js/types' {
542
585
  }
543
586
  export interface UserInfo {
544
587
  /**
545
- * Email of the logged in user
588
+ * Email of the logged in user if your selected wallets knows it
546
589
  */
547
590
  email: string;
548
591
  /**
549
- * Full name of the logged in user
592
+ * Full name of the logged in user if your selected wallets knows it
550
593
  */
551
594
  name: string;
552
595
  /**
553
- * Profile image of the logged in user
596
+ * Profile image of the logged in user if your selected wallets knows it
554
597
  */
555
598
  profileImage: string;
556
599
  /**
557
- * verifier of the logged in user (google, facebook etc)
600
+ * verifier of the logged in user (google, facebook etc) if your selected wallets knows it
558
601
  */
559
602
  verifier: string;
560
603
  /**
561
- * Verifier Id of the logged in user
604
+ * Verifier Id of the logged in user if your selected wallets knows it
562
605
  *
563
606
  * email for google,
564
607
  * id for facebook,
@@ -567,6 +610,8 @@ declare module '@startbahn/startrail-sdk-js/types' {
567
610
  * id for discord
568
611
  */
569
612
  verifierId: string;
613
+ typeOfLogin?: LoginProvider | '';
614
+ wallet?: WalletType;
570
615
  }
571
616
  interface VerifierStatus {
572
617
  google?: boolean;
@@ -660,6 +705,8 @@ declare module '@startbahn/startrail-sdk-js/service' {
660
705
  * @throws Will throw an error
661
706
  */
662
707
  addCustomHistoriesToSRRs(args: Type.AddCustomHistoriesToSRRs): Promise<Type.ResponseFromBatch>;
708
+ transferFromWithProvenance(args: Type.TransferFromWithProvenance): Promise<Type.ResponseOfEthStateChange | false>;
709
+ bulk(args: Type.Bulk): Promise<Type.ResponseOfEthStateChange | false>;
663
710
  /**
664
711
  * Change language on your browser wallet
665
712
  * @throws Will throw an error
@@ -850,6 +897,10 @@ declare module '@startbahn/startrail-sdk-js/constant' {
850
897
  export const COMPRESSION_ALGORITHM = "gzip";
851
898
  export const DEFAULT_WORD: {
852
899
  dappLogin: {
900
+ continueWith: {
901
+ ja: string;
902
+ en: string;
903
+ };
853
904
  subtitle: {
854
905
  ja: string;
855
906
  en: string;
@@ -983,11 +1034,11 @@ declare module '@startbahn/startrail-sdk-js/wallets/base' {
983
1034
  constructor();
984
1035
  abstract init(): Promise<void>;
985
1036
  abstract login(): Promise<string[]>;
1037
+ abstract getUserInfo(): Promise<UserInfo>;
986
1038
  signMessage(eoa: string, params: object): Promise<string>;
987
1039
  signTypedDataMessage(eoa: string, typedData: EIP712TypedData): Promise<string>;
988
1040
  logout(): Promise<void>;
989
1041
  overwriteConfig(partialConfig: OverwriteStartrailSDKConfig): void;
990
- getUserInfo(): Promise<UserInfo>;
991
1042
  switchLanguage(): Promise<void | boolean>;
992
1043
  }
993
1044
  export = Wallet;