@interest-protocol/xcore-sdk 1.0.0

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,100 @@
1
+ import type { SuiClient } from '@mysten/sui/client';
2
+ import { Transaction, type TransactionObjectArgument } from '@mysten/sui/transactions';
3
+ import type {
4
+ AddAllowedChainArgs,
5
+ AddIkaBalanceArgs,
6
+ AddPresignArgs,
7
+ AddSuiBalanceArgs,
8
+ AddWalletArgs,
9
+ DecrementBalanceArgs,
10
+ IncrementBalanceArgs,
11
+ InitAppArgs,
12
+ InitializeArgs,
13
+ LedgerConstructorArgs,
14
+ PauseAppArgs,
15
+ RemoveAllowedChainArgs,
16
+ UnpauseAppArgs,
17
+ UserBalanceArgs,
18
+ } from './ledger.types';
19
+ export declare class Ledger {
20
+ #private;
21
+ static readonly IKA_COIN_TYPE =
22
+ '0x7262fb2f7a3a14c888c438a3cd9b912469a58cf60f367352c46584262e8299aa::ika::IKA';
23
+ constructor({ suiClient, packageId, ledgerSharedObjectData }: LedgerConstructorArgs);
24
+ initialize({ tx, initCapId, upgradeCapId }: InitializeArgs): Transaction;
25
+ initApp({ tx, witnessType }: InitAppArgs): Transaction;
26
+ addWallet({
27
+ tx,
28
+ dwalletCoordinatorId,
29
+ dwalletNetworkEncryptionKeyId,
30
+ centralizedPublicKeyShareAndProof,
31
+ userPublicOutput,
32
+ publicUserSecretKeyShare,
33
+ sessionIdentifier,
34
+ curve,
35
+ hashScheme,
36
+ signatureAlgorithm,
37
+ witnessType,
38
+ }: AddWalletArgs): {
39
+ tx: Transaction;
40
+ result: TransactionObjectArgument;
41
+ };
42
+ incrementBalance({
43
+ tx,
44
+ digestBytes,
45
+ walletKey,
46
+ user,
47
+ chainId,
48
+ token,
49
+ amount,
50
+ witnessType,
51
+ }: IncrementBalanceArgs): {
52
+ tx: Transaction;
53
+ result: TransactionObjectArgument;
54
+ };
55
+ decrementBalance({
56
+ tx,
57
+ dwalletCoordinatorId,
58
+ walletKey,
59
+ messageCentralizedSignature,
60
+ message,
61
+ user,
62
+ chainId,
63
+ token,
64
+ amount,
65
+ witnessType,
66
+ }: DecrementBalanceArgs): {
67
+ tx: Transaction;
68
+ result: TransactionObjectArgument;
69
+ };
70
+ addPresign({ tx, dwalletCoordinatorId, walletKey, witnessType }: AddPresignArgs): {
71
+ tx: Transaction;
72
+ result: TransactionObjectArgument;
73
+ };
74
+ addIkaBalance({ tx, ikaCoin, witnessType }: AddIkaBalanceArgs): Transaction;
75
+ addSuiBalance({ tx, suiCoin, witnessType }: AddSuiBalanceArgs): Transaction;
76
+ userBalance({ user, chainId, token, witnessType }: UserBalanceArgs): Promise<bigint | null>;
77
+ addAllowedChain({ tx, adminCapId, chainId, tokenLength }: AddAllowedChainArgs): Transaction;
78
+ removeAllowedChain({ tx, adminCapId, chainId }: RemoveAllowedChainArgs): Transaction;
79
+ pauseApp({ tx, adminCapId, witnessType }: PauseAppArgs): Transaction;
80
+ unpauseApp({ tx, adminCapId, witnessType }: UnpauseAppArgs): Transaction;
81
+ getEventTypes(): {
82
+ walletAdded: string;
83
+ presignAdded: string;
84
+ balanceIncremented: string;
85
+ balanceDecremented: string;
86
+ appInitialized: string;
87
+ };
88
+ immutableLedgerRef(tx: Transaction): {
89
+ $kind: 'Input';
90
+ Input: number;
91
+ type?: 'object';
92
+ };
93
+ mutableLedgerRef(tx: Transaction): {
94
+ $kind: 'Input';
95
+ Input: number;
96
+ type?: 'object';
97
+ };
98
+ get suiClient(): SuiClient;
99
+ }
100
+ //# sourceMappingURL=ledger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ledger.d.ts","sourceRoot":"","sources":["../src/ledger.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,KAAK,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAKvF,OAAO,KAAK,EACR,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,WAAW,EACX,cAAc,EACd,qBAAqB,EACrB,YAAY,EACZ,sBAAsB,EAEtB,cAAc,EACd,eAAe,EAClB,MAAM,gBAAgB,CAAC;AAIxB,qBAAa,MAAM;;IACf,MAAM,CAAC,QAAQ,CAAC,aAAa,kFAAiB;gBAMlC,EAAE,SAAS,EAAE,SAAS,EAAE,sBAAsB,EAAE,EAAE,qBAAqB;IAMnF,UAAU,CAAC,EAAE,EAAsB,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,cAAc,GAAG,WAAW;IAS5F,OAAO,CAAC,EAAE,EAAsB,EAAE,WAAW,EAAE,EAAE,WAAW,GAAG,WAAW;IAU1E,SAAS,CAAC,EACN,EAAsB,EACtB,oBAAoB,EACpB,6BAA6B,EAC7B,iCAAiC,EACjC,gBAAgB,EAChB,wBAAwB,EACxB,iBAAiB,EACjB,KAAK,EACL,UAAU,EACV,kBAAkB,EAClB,WAAW,GACd,EAAE,aAAa,GAAG;QAAE,EAAE,EAAE,WAAW,CAAC;QAAC,MAAM,EAAE,yBAAyB,CAAA;KAAE;IAqBzE,gBAAgB,CAAC,EACb,EAAsB,EACtB,WAAW,EACX,SAAS,EACT,IAAI,EACJ,OAAO,EACP,KAAK,EACL,MAAM,EACN,WAAW,GACd,EAAE,oBAAoB,GAAG;QAAE,EAAE,EAAE,WAAW,CAAC;QAAC,MAAM,EAAE,yBAAyB,CAAA;KAAE;IAkBhF,gBAAgB,CAAC,EACb,EAAsB,EACtB,oBAAoB,EACpB,SAAS,EACT,2BAA2B,EAC3B,OAAO,EACP,IAAI,EACJ,OAAO,EACP,KAAK,EACL,MAAM,EACN,WAAW,GACd,EAAE,oBAAoB,GAAG;QAAE,EAAE,EAAE,WAAW,CAAC;QAAC,MAAM,EAAE,yBAAyB,CAAA;KAAE;IAoBhF,UAAU,CAAC,EACP,EAAsB,EACtB,oBAAoB,EACpB,SAAS,EACT,WAAW,GACd,EAAE,cAAc,GAAG;QAAE,EAAE,EAAE,WAAW,CAAC;QAAC,MAAM,EAAE,yBAAyB,CAAA;KAAE;IAc1E,aAAa,CAAC,EACV,EAAsB,EACtB,OAAO,EACP,WAAW,GACd,EAAE,iBAAiB,GAAG,WAAW;IAUlC,aAAa,CAAC,EACV,EAAsB,EACtB,OAAO,EACP,WAAW,GACd,EAAE,iBAAiB,GAAG,WAAW;IAU5B,WAAW,CAAC,EACd,IAAI,EACJ,OAAO,EACP,KAAK,EACL,WAAW,GACd,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA2B3C,eAAe,CAAC,EACZ,EAAsB,EACtB,UAAU,EACV,OAAO,EACP,WAAW,GACd,EAAE,mBAAmB,GAAG,WAAW;IAcpC,kBAAkB,CAAC,EACf,EAAsB,EACtB,UAAU,EACV,OAAO,GACV,EAAE,sBAAsB,GAAG,WAAW;IASvC,QAAQ,CAAC,EAAE,EAAsB,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,YAAY,GAAG,WAAW;IAUxF,UAAU,CAAC,EAAE,EAAsB,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,cAAc,GAAG,WAAW;IAU5F,aAAa;;;;;;;IAUb,kBAAkB,CAAC,EAAE,EAAE,WAAW;;;;;IAQlC,gBAAgB,CAAC,EAAE,EAAE,WAAW;;;;;IAQhC,IAAI,SAAS,IAAI,SAAS,CAEzB;CACJ"}
@@ -0,0 +1,144 @@
1
+ import type { SuiClient } from '@mysten/sui/client';
2
+ import type { Transaction, TransactionObjectArgument } from '@mysten/sui/transactions';
3
+ export interface SharedObjectData {
4
+ objectId: string;
5
+ initialSharedVersion: string;
6
+ }
7
+ export interface LedgerConstructorArgs {
8
+ suiClient: SuiClient;
9
+ packageId?: string;
10
+ ledgerSharedObjectData: SharedObjectData;
11
+ }
12
+ export interface InitAppArgs {
13
+ tx?: Transaction;
14
+ witnessType: string;
15
+ }
16
+ export interface AddWalletArgs {
17
+ tx?: Transaction;
18
+ dwalletCoordinatorId: string;
19
+ dwalletNetworkEncryptionKeyId: string;
20
+ centralizedPublicKeyShareAndProof: Uint8Array;
21
+ userPublicOutput: Uint8Array;
22
+ publicUserSecretKeyShare: Uint8Array;
23
+ sessionIdentifier: Uint8Array;
24
+ curve: number;
25
+ hashScheme: number;
26
+ signatureAlgorithm: number;
27
+ witnessType: string;
28
+ }
29
+ export interface IncrementBalanceArgs {
30
+ tx?: Transaction;
31
+ digestBytes: Uint8Array;
32
+ walletKey: bigint;
33
+ user: string;
34
+ chainId: number;
35
+ token: Uint8Array;
36
+ amount: bigint;
37
+ witnessType: string;
38
+ }
39
+ export interface DecrementBalanceArgs {
40
+ tx?: Transaction;
41
+ dwalletCoordinatorId: string;
42
+ walletKey: bigint;
43
+ messageCentralizedSignature: Uint8Array;
44
+ message: Uint8Array;
45
+ user: string;
46
+ chainId: number;
47
+ token: Uint8Array;
48
+ amount: bigint;
49
+ witnessType: string;
50
+ }
51
+ export interface AddPresignArgs {
52
+ tx?: Transaction;
53
+ dwalletCoordinatorId: string;
54
+ walletKey: bigint;
55
+ witnessType: string;
56
+ }
57
+ export interface AddIkaBalanceArgs {
58
+ tx?: Transaction;
59
+ ikaCoin: TransactionObjectArgument;
60
+ witnessType: string;
61
+ }
62
+ export interface AddSuiBalanceArgs {
63
+ tx?: Transaction;
64
+ suiCoin: TransactionObjectArgument;
65
+ witnessType: string;
66
+ }
67
+ export interface UserBalanceArgs {
68
+ user: string;
69
+ chainId: number;
70
+ token: Uint8Array;
71
+ witnessType: string;
72
+ }
73
+ export interface AddAllowedChainArgs {
74
+ tx?: Transaction;
75
+ adminCapId: string;
76
+ chainId: number;
77
+ tokenLength: bigint;
78
+ }
79
+ export interface RemoveAllowedChainArgs {
80
+ tx?: Transaction;
81
+ adminCapId: string;
82
+ chainId: number;
83
+ }
84
+ export interface PauseAppArgs {
85
+ tx?: Transaction;
86
+ adminCapId: string;
87
+ witnessType: string;
88
+ }
89
+ export interface UnpauseAppArgs {
90
+ tx?: Transaction;
91
+ adminCapId: string;
92
+ witnessType: string;
93
+ }
94
+ export interface InitializeArgs {
95
+ tx?: Transaction;
96
+ initCapId: string;
97
+ upgradeCapId: string;
98
+ }
99
+ export interface WalletAddedEvent {
100
+ app: string;
101
+ dwallet: string;
102
+ dwalletCap: string;
103
+ dwalletNetworkEncryptionKeyId: string;
104
+ walletKey: bigint;
105
+ curve: number;
106
+ hashScheme: number;
107
+ signatureAlgorithm: number;
108
+ }
109
+ export interface PresignAddedEvent {
110
+ app: string;
111
+ dwallet: string;
112
+ dwalletCap: string;
113
+ currentPresignLength: bigint;
114
+ }
115
+ export interface BalanceIncrementedEvent {
116
+ app: string;
117
+ digest: Uint8Array;
118
+ walletKey: bigint;
119
+ user: string;
120
+ chainId: number;
121
+ token: Uint8Array;
122
+ amount: bigint;
123
+ newBalance: bigint;
124
+ dwallet: string;
125
+ dwalletCap: string;
126
+ }
127
+ export interface BalanceDecrementedEvent {
128
+ app: string;
129
+ walletKey: bigint;
130
+ user: string;
131
+ chainId: number;
132
+ token: Uint8Array;
133
+ amount: bigint;
134
+ newBalance: bigint;
135
+ messageCentralizedSignature: Uint8Array;
136
+ message: Uint8Array;
137
+ signId: string;
138
+ dwallet: string;
139
+ dwalletCap: string;
140
+ }
141
+ export interface AppInitializedEvent {
142
+ app: string;
143
+ }
144
+ //# sourceMappingURL=ledger.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ledger.types.d.ts","sourceRoot":"","sources":["../src/ledger.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ import type { SuiClient } from '@mysten/sui/client';
2
+ import { Transaction, type TransactionObjectArgument } from '@mysten/sui/transactions';
3
+ import type { AddAllowedChainArgs, AddIkaBalanceArgs, AddSuiBalanceArgs, AddWalletArgs, DecrementBalanceArgs, IncrementBalanceArgs, InitAppArgs, MintPresignArgs, PauseAppArgs, RemoveAllowedChainArgs, SignArgs, UnpauseAppArgs, UserBalanceArgs, XCoreConstructorArgs } from './xcore.types';
4
+ export declare class XCore {
5
+ #private;
6
+ static readonly IKA_COIN_TYPE = "0x7262fb2f7a3a14c888c438a3cd9b912469a58cf60f367352c46584262e8299aa::ika::IKA";
7
+ constructor({ suiClient, packageId, xcoreSharedObjectData }: XCoreConstructorArgs);
8
+ initialize({ tx }?: {
9
+ tx?: Transaction;
10
+ }): Transaction;
11
+ initApp({ tx, witnessType }: InitAppArgs): Transaction;
12
+ addWallet({ tx, dwalletCoordinatorId, dwalletNetworkEncryptionKeyId, centralizedPublicKeyShareAndProof, userPublicOutput, publicUserSecretKeyShare, sessionIdentifier, curve, hashScheme, signatureAlgorithm, witnessType, }: AddWalletArgs): {
13
+ tx: Transaction;
14
+ result: TransactionObjectArgument;
15
+ };
16
+ incrementBalance({ tx, digestBytes, walletKey, user, chainId, token, amount, witnessType, }: IncrementBalanceArgs): {
17
+ tx: Transaction;
18
+ result: TransactionObjectArgument;
19
+ };
20
+ decrementBalance({ tx, dwalletCoordinatorId, presignCapId, messageCentralizedSignature, message, user, chainId, token, amount, witnessType, }: DecrementBalanceArgs): {
21
+ tx: Transaction;
22
+ result: TransactionObjectArgument;
23
+ };
24
+ sign({ tx, dwalletCoordinatorId, presignCapId, messageCentralizedSignature, message, witnessType, }: SignArgs): {
25
+ tx: Transaction;
26
+ result: TransactionObjectArgument;
27
+ };
28
+ mintPresign({ tx, dwalletCoordinatorId, walletKey, witnessType, }: MintPresignArgs): {
29
+ tx: Transaction;
30
+ result: TransactionObjectArgument;
31
+ };
32
+ addIkaBalance({ tx, ikaCoin, witnessType, }: AddIkaBalanceArgs): Transaction;
33
+ addSuiBalance({ tx, suiCoin, witnessType, }: AddSuiBalanceArgs): Transaction;
34
+ userBalance({ user, chainId, token, witnessType, }: UserBalanceArgs): Promise<bigint | null>;
35
+ addAllowedChain({ tx, adminCapId, chainId, tokenLength, }: AddAllowedChainArgs): Transaction;
36
+ removeAllowedChain({ tx, adminCapId, chainId, }: RemoveAllowedChainArgs): Transaction;
37
+ pauseApp({ tx, adminCapId, witnessType }: PauseAppArgs): Transaction;
38
+ unpauseApp({ tx, adminCapId, witnessType }: UnpauseAppArgs): Transaction;
39
+ getEventTypes(): {
40
+ walletAdded: string;
41
+ presignAdded: string;
42
+ balanceIncremented: string;
43
+ balanceDecremented: string;
44
+ signRequested: string;
45
+ appInitialized: string;
46
+ };
47
+ immutableXCoreRef(tx: Transaction): {
48
+ $kind: "Input";
49
+ Input: number;
50
+ type?: "object";
51
+ };
52
+ mutableXCoreRef(tx: Transaction): {
53
+ $kind: "Input";
54
+ Input: number;
55
+ type?: "object";
56
+ };
57
+ get suiClient(): SuiClient;
58
+ }
59
+ //# sourceMappingURL=xcore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xcore.d.ts","sourceRoot":"","sources":["../src/xcore.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,147 @@
1
+ import type { SuiClient } from '@mysten/sui/client';
2
+ import type { Transaction, TransactionObjectArgument } from '@mysten/sui/transactions';
3
+ export interface SharedObjectData {
4
+ objectId: string;
5
+ initialSharedVersion: string;
6
+ }
7
+ export interface XCoreConstructorArgs {
8
+ suiClient: SuiClient;
9
+ packageId?: string;
10
+ xcoreSharedObjectData: SharedObjectData;
11
+ }
12
+ export interface InitAppArgs {
13
+ tx?: Transaction;
14
+ witnessType: string;
15
+ }
16
+ export interface AddWalletArgs {
17
+ tx?: Transaction;
18
+ dwalletCoordinatorId: string;
19
+ dwalletNetworkEncryptionKeyId: string;
20
+ centralizedPublicKeyShareAndProof: Uint8Array;
21
+ userPublicOutput: Uint8Array;
22
+ publicUserSecretKeyShare: Uint8Array;
23
+ sessionIdentifier: Uint8Array;
24
+ curve: number;
25
+ hashScheme: number;
26
+ signatureAlgorithm: number;
27
+ witnessType: string;
28
+ }
29
+ export interface IncrementBalanceArgs {
30
+ tx?: Transaction;
31
+ digestBytes: Uint8Array;
32
+ walletKey: bigint;
33
+ user: string;
34
+ chainId: number;
35
+ token: Uint8Array;
36
+ amount: bigint;
37
+ witnessType: string;
38
+ }
39
+ export interface DecrementBalanceArgs {
40
+ tx?: Transaction;
41
+ dwalletCoordinatorId: string;
42
+ presignCapId: string;
43
+ messageCentralizedSignature: Uint8Array;
44
+ message: Uint8Array;
45
+ user: string;
46
+ chainId: number;
47
+ token: Uint8Array;
48
+ amount: bigint;
49
+ witnessType: string;
50
+ }
51
+ export interface SignArgs {
52
+ tx?: Transaction;
53
+ dwalletCoordinatorId: string;
54
+ presignCapId: string;
55
+ messageCentralizedSignature: Uint8Array;
56
+ message: Uint8Array;
57
+ witnessType: string;
58
+ }
59
+ export interface MintPresignArgs {
60
+ tx?: Transaction;
61
+ dwalletCoordinatorId: string;
62
+ walletKey: bigint;
63
+ witnessType: string;
64
+ }
65
+ export interface AddIkaBalanceArgs {
66
+ tx?: Transaction;
67
+ ikaCoin: TransactionObjectArgument;
68
+ witnessType: string;
69
+ }
70
+ export interface AddSuiBalanceArgs {
71
+ tx?: Transaction;
72
+ suiCoin: TransactionObjectArgument;
73
+ witnessType: string;
74
+ }
75
+ export interface UserBalanceArgs {
76
+ user: string;
77
+ chainId: number;
78
+ token: Uint8Array;
79
+ witnessType: string;
80
+ }
81
+ export interface AddAllowedChainArgs {
82
+ tx?: Transaction;
83
+ adminCapId: string;
84
+ chainId: number;
85
+ tokenLength: bigint;
86
+ }
87
+ export interface RemoveAllowedChainArgs {
88
+ tx?: Transaction;
89
+ adminCapId: string;
90
+ chainId: number;
91
+ }
92
+ export interface PauseAppArgs {
93
+ tx?: Transaction;
94
+ adminCapId: string;
95
+ witnessType: string;
96
+ }
97
+ export interface UnpauseAppArgs {
98
+ tx?: Transaction;
99
+ adminCapId: string;
100
+ witnessType: string;
101
+ }
102
+ export interface WalletAddedEvent {
103
+ app: string;
104
+ dwallet: string;
105
+ dwalletCap: string;
106
+ dwalletNetworkEncryptionKeyId: string;
107
+ walletKey: bigint;
108
+ curve: number;
109
+ hashScheme: number;
110
+ signatureAlgorithm: number;
111
+ }
112
+ export interface PresignAddedEvent {
113
+ app: string;
114
+ dwallet: string;
115
+ dwalletCap: string;
116
+ currentPresignLength: bigint;
117
+ }
118
+ export interface BalanceIncrementedEvent {
119
+ app: string;
120
+ digest: Uint8Array;
121
+ walletKey: bigint;
122
+ user: string;
123
+ chainId: number;
124
+ token: Uint8Array;
125
+ amount: bigint;
126
+ newBalance: bigint;
127
+ dwallet: string;
128
+ dwalletCap: string;
129
+ }
130
+ export interface BalanceDecrementedEvent {
131
+ app: string;
132
+ walletKey: bigint;
133
+ user: string;
134
+ chainId: number;
135
+ token: Uint8Array;
136
+ amount: bigint;
137
+ newBalance: bigint;
138
+ messageCentralizedSignature: Uint8Array;
139
+ message: Uint8Array;
140
+ signId: string;
141
+ dwallet: string;
142
+ dwalletCap: string;
143
+ }
144
+ export interface AppInitializedEvent {
145
+ app: string;
146
+ }
147
+ //# sourceMappingURL=xcore.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xcore.types.d.ts","sourceRoot":"","sources":["../src/xcore.types.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,56 @@
1
+ {
2
+ "name": "@interest-protocol/xcore-sdk",
3
+ "version": "1.0.0",
4
+ "description": "SDK for Lattice XCore on Sui",
5
+ "main": "dist/index.js",
6
+ "module": "dist/index.mjs",
7
+ "types": "dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.mjs",
12
+ "require": "./dist/index.js"
13
+ }
14
+ },
15
+ "files": [
16
+ "dist"
17
+ ],
18
+ "type": "module",
19
+ "scripts": {
20
+ "build": "rollup -c rollup.config.js && tsc --emitDeclarationOnly",
21
+ "test": "jest",
22
+ "lint": "biome check src",
23
+ "lint:fix": "biome check --write src",
24
+ "format": "biome format --write src"
25
+ },
26
+ "keywords": [
27
+ "sui",
28
+ "lattice",
29
+ "xcore",
30
+ "dwallet",
31
+ "cross-chain"
32
+ ],
33
+ "author": "Interest Protocol",
34
+ "license": "ISC",
35
+ "dependencies": {
36
+ "@mysten/sui": "^1.45.2",
37
+ "@polymedia/suitcase-core": "^0.0.67",
38
+ "tiny-invariant": "^1.3.3"
39
+ },
40
+ "devDependencies": {
41
+ "@biomejs/biome": "^2.3.11",
42
+ "@rollup/plugin-commonjs": "^28.0.3",
43
+ "@rollup/plugin-node-resolve": "^16.0.1",
44
+ "@rollup/plugin-typescript": "^12.1.2",
45
+ "@types/jest": "^29.5.14",
46
+ "@types/node": "^22.15.3",
47
+ "jest": "^29.7.0",
48
+ "rollup": "^4.40.2",
49
+ "ts-jest": "^29.3.2",
50
+ "tslib": "^2.8.1",
51
+ "typescript": "^5.8.3"
52
+ },
53
+ "publishConfig": {
54
+ "access": "public"
55
+ }
56
+ }