@zebec-network/solana-payroll-sdk 2.3.1 → 2.4.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.
- package/dist/instructions.d.ts +6 -7
- package/dist/instructions.js +6 -10
- package/dist/pda.d.ts +1 -0
- package/dist/pda.js +3 -0
- package/dist/services.d.ts +1 -2
- package/dist/services.js +27 -20
- package/dist/types.d.ts +3 -6
- package/package.json +46 -46
package/dist/instructions.d.ts
CHANGED
|
@@ -120,13 +120,6 @@ export declare function createRequestUnlockInstruction(program: Program<ZebecPay
|
|
|
120
120
|
companyId: number[];
|
|
121
121
|
nonce: BN;
|
|
122
122
|
}): Promise<TransactionInstruction>;
|
|
123
|
-
export declare function createCancelUnlockInstruction(program: Program<ZebecPayrollIdl>, accounts: {
|
|
124
|
-
company: PublicKey;
|
|
125
|
-
companyDeposit: PublicKey;
|
|
126
|
-
}, data: {
|
|
127
|
-
companyId: number[];
|
|
128
|
-
nonce: BN;
|
|
129
|
-
}): Promise<TransactionInstruction>;
|
|
130
123
|
export declare function createCompleteUnlockInstruction(program: Program<ZebecPayrollIdl>, accounts: {
|
|
131
124
|
admin: PublicKey;
|
|
132
125
|
feePayer: PublicKey;
|
|
@@ -136,6 +129,10 @@ export declare function createCompleteUnlockInstruction(program: Program<ZebecPa
|
|
|
136
129
|
centralVaultTokenAta: PublicKey;
|
|
137
130
|
companyTokenAta: PublicKey;
|
|
138
131
|
depositMint: PublicKey;
|
|
132
|
+
centralVault: PublicKey;
|
|
133
|
+
centralVaultUsxAta: PublicKey;
|
|
134
|
+
usxMint: PublicKey;
|
|
135
|
+
companyUsxAta: PublicKey;
|
|
139
136
|
}, data: {
|
|
140
137
|
companyId: number[];
|
|
141
138
|
nonce: BN;
|
|
@@ -143,10 +140,12 @@ export declare function createCompleteUnlockInstruction(program: Program<ZebecPa
|
|
|
143
140
|
export declare function createDistributeRewardsInstruction(program: Program<ZebecPayrollIdl>, accounts: {
|
|
144
141
|
admin: PublicKey;
|
|
145
142
|
yieldConfig: PublicKey;
|
|
143
|
+
checkAccount: PublicKey;
|
|
146
144
|
}, data: {
|
|
147
145
|
distributions: {
|
|
148
146
|
companyId: number[];
|
|
149
147
|
nonce: BN;
|
|
150
148
|
amount: BN;
|
|
151
149
|
}[];
|
|
150
|
+
checkId: number[];
|
|
152
151
|
}, remainingAccounts: AccountMeta[]): Promise<TransactionInstruction>;
|
package/dist/instructions.js
CHANGED
|
@@ -156,15 +156,6 @@ export async function createRequestUnlockInstruction(program, accounts, data) {
|
|
|
156
156
|
})
|
|
157
157
|
.instruction();
|
|
158
158
|
}
|
|
159
|
-
export async function createCancelUnlockInstruction(program, accounts, data) {
|
|
160
|
-
return program.methods
|
|
161
|
-
.cancelUnlock(data.companyId, data.nonce)
|
|
162
|
-
.accountsPartial({
|
|
163
|
-
company: accounts.company,
|
|
164
|
-
companyDeposit: accounts.companyDeposit,
|
|
165
|
-
})
|
|
166
|
-
.instruction();
|
|
167
|
-
}
|
|
168
159
|
export async function createCompleteUnlockInstruction(program, accounts, data) {
|
|
169
160
|
return program.methods
|
|
170
161
|
.completeUnlock(data.companyId, data.nonce)
|
|
@@ -177,15 +168,20 @@ export async function createCompleteUnlockInstruction(program, accounts, data) {
|
|
|
177
168
|
centralVaultTokenAta: accounts.centralVaultTokenAta,
|
|
178
169
|
companyTokenAta: accounts.companyTokenAta,
|
|
179
170
|
depositMint: accounts.depositMint,
|
|
171
|
+
centralVault: accounts.centralVault,
|
|
172
|
+
centralVaultUsxAta: accounts.centralVaultUsxAta,
|
|
173
|
+
usxMint: accounts.usxMint,
|
|
174
|
+
companyUsxAta: accounts.companyUsxAta,
|
|
180
175
|
})
|
|
181
176
|
.instruction();
|
|
182
177
|
}
|
|
183
178
|
export async function createDistributeRewardsInstruction(program, accounts, data, remainingAccounts) {
|
|
184
179
|
return program.methods
|
|
185
|
-
.distributeRewards(data.distributions)
|
|
180
|
+
.distributeRewards(data.checkId, data.distributions)
|
|
186
181
|
.accountsPartial({
|
|
187
182
|
admin: accounts.admin,
|
|
188
183
|
yieldConfig: accounts.yieldConfig,
|
|
184
|
+
checkAccount: accounts.checkAccount,
|
|
189
185
|
})
|
|
190
186
|
.remainingAccounts(remainingAccounts)
|
|
191
187
|
.instruction();
|
package/dist/pda.d.ts
CHANGED
|
@@ -5,3 +5,4 @@ export declare function derivePayrollVaultPda(metatadata: Address, payrollProgra
|
|
|
5
5
|
export declare function deriveYieldConfigPda(configProgramId: Address): [PublicKey, number];
|
|
6
6
|
export declare function deriveCompanyDepositPda(companyId: Buffer, nonce: bigint, payrollProgramId: Address): [PublicKey, number];
|
|
7
7
|
export declare function deriveCompanyNoncePda(companyId: Buffer, payrollProgramId: Address): [PublicKey, number];
|
|
8
|
+
export declare function deriveCheckAccountPda(checkId: Buffer | Uint8Array, payrollProgramId: Address): [PublicKey, number];
|
package/dist/pda.js
CHANGED
|
@@ -30,3 +30,6 @@ export function deriveCompanyDepositPda(companyId, nonce, payrollProgramId) {
|
|
|
30
30
|
export function deriveCompanyNoncePda(companyId, payrollProgramId) {
|
|
31
31
|
return PublicKey.findProgramAddressSync([companyId], translateAddress(payrollProgramId));
|
|
32
32
|
}
|
|
33
|
+
export function deriveCheckAccountPda(checkId, payrollProgramId) {
|
|
34
|
+
return PublicKey.findProgramAddressSync([checkId], translateAddress(payrollProgramId));
|
|
35
|
+
}
|
package/dist/services.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { type Commitment } from "@solana/web3.js";
|
|
|
3
3
|
import { MultiTransactionPayload, TransactionPayload } from "@zebec-network/solana-common";
|
|
4
4
|
import type { ZebecConfigs as ZebecConfigsIdl } from "@zebec-network/zebec_configs";
|
|
5
5
|
import type { ZebecPayroll as ZebecPayrollIdl } from "@zebec-network/zebec_payroll";
|
|
6
|
-
import type { CancelMultiplePayrollParams, CancelPayrollParams,
|
|
6
|
+
import type { CancelMultiplePayrollParams, CancelPayrollParams, ChangePayrollReceiverParams, CompanyDepositInfo, CompanyNonceInfo, CompleteUnlockParams, CreateMultiplePayrollParams, CreatePayrollParams, DistributeRewardsParams, PauseResumeMultiplePayrollParams, PauseResumePayrollParams, PayrollConfigInfo, PayrollMetadataInfo, RequestUnlockParams, SetMultipleTopupDelegateParams, SetTopupDelegateParams, TokenMetadata, TopupMultiplePayrollParams, TopupPayrollParams, WithdrawMultiplePayrollParams, WithdrawPayrollParams, YieldDepositParams } from "./types.js";
|
|
7
7
|
export declare function getPayrollConfig(configProgram: Program<ZebecConfigsIdl>, configName: string): Promise<PayrollConfigInfo>;
|
|
8
8
|
export declare function getWhitelistedTokens(configProgram: Program<ZebecConfigsIdl>, configName: string, commitment?: "processed" | "confirmed" | "finalized"): Promise<TokenMetadata[]>;
|
|
9
9
|
export declare function getPayrollMetadataInfo(program: Program<ZebecPayrollIdl>, payrollMetadata: Address, commitment?: Commitment): Promise<PayrollMetadataInfo>;
|
|
@@ -23,7 +23,6 @@ export declare function topupMultiplePayroll(payrollProgram: Program<ZebecPayrol
|
|
|
23
23
|
export declare function getCompanyNonceInfo(payrollProgram: Program<ZebecPayrollIdl>, companyIdBuffer: Buffer, commitment?: Commitment): Promise<CompanyNonceInfo | null>;
|
|
24
24
|
export declare function yieldDeposit(payrollProgram: Program<ZebecPayrollIdl>, configsProgram: Program<ZebecConfigsIdl>, params: YieldDepositParams, commitment?: Commitment): Promise<TransactionPayload>;
|
|
25
25
|
export declare function requestUnlock(payrollProgram: Program<ZebecPayrollIdl>, configsProgram: Program<ZebecConfigsIdl>, params: RequestUnlockParams): Promise<TransactionPayload>;
|
|
26
|
-
export declare function cancelUnlock(payrollProgram: Program<ZebecPayrollIdl>, params: CancelUnlockParams): Promise<TransactionPayload>;
|
|
27
26
|
export declare function completeUnlock(payrollProgram: Program<ZebecPayrollIdl>, configsProgram: Program<ZebecConfigsIdl>, params: CompleteUnlockParams, commitment?: Commitment): Promise<TransactionPayload>;
|
|
28
27
|
export declare function distributeRewards(payrollProgram: Program<ZebecPayrollIdl>, configsProgram: Program<ZebecConfigsIdl>, params: DistributeRewardsParams): Promise<TransactionPayload>;
|
|
29
28
|
export declare function getCompanyDeposit(payrollProgram: Program<ZebecPayrollIdl>, company: Address): Promise<CompanyDepositInfo | null>;
|
package/dist/services.js
CHANGED
|
@@ -8,8 +8,8 @@ import { createAssociatedTokenAccountInstruction, getAssociatedTokenAddressSync,
|
|
|
8
8
|
import { BigNumber } from "bignumber.js";
|
|
9
9
|
import { BN } from "bn.js";
|
|
10
10
|
import { PAYROLL_NAME_BUFFER_SIZE, USX_DECIMALS } from "./constants.js";
|
|
11
|
-
import { createCancelPayrollInstruction,
|
|
12
|
-
import { deriveCompanyDepositPda, deriveCompanyNoncePda, derivePayrollConfigPda, derivePayrollVaultPda, deriveYieldConfigPda, } from "./pda.js";
|
|
11
|
+
import { createCancelPayrollInstruction, createChangeRecipientInstruction, createCompleteUnlockInstruction, createCreatePayrollInstruction, createDistributeRewardsInstruction, createPauseResumePayrollInstruction, createRequestUnlockInstruction, createSetTopupDelegateInstruction, createTopupPayrollInstruction, createTransferFeesInstruction, createWithdrawPayrollInstruction, createYieldDepositInstruction, } from "./instructions.js";
|
|
12
|
+
import { deriveCheckAccountPda, deriveCompanyDepositPda, deriveCompanyNoncePda, derivePayrollConfigPda, derivePayrollVaultPda, deriveYieldConfigPda, } from "./pda.js";
|
|
13
13
|
import { getFeeInfoForPayroll } from "./utils.js";
|
|
14
14
|
export async function getPayrollConfig(configProgram, configName) {
|
|
15
15
|
const [payrollConfigPda] = derivePayrollConfigPda(configName, configProgram.programId);
|
|
@@ -749,19 +749,6 @@ export async function requestUnlock(payrollProgram, configsProgram, params) {
|
|
|
749
749
|
});
|
|
750
750
|
return createTransactionPayload(payrollProgram, feePayer, [ix]);
|
|
751
751
|
}
|
|
752
|
-
export async function cancelUnlock(payrollProgram, params) {
|
|
753
|
-
const company = translateAddress(params.company);
|
|
754
|
-
const feePayer = translateAddress(params.feePayer);
|
|
755
|
-
const [companyDeposit] = deriveCompanyDepositPda(Buffer.from(params.companyId), params.nonce, payrollProgram.programId);
|
|
756
|
-
const ix = await createCancelUnlockInstruction(payrollProgram, {
|
|
757
|
-
company,
|
|
758
|
-
companyDeposit,
|
|
759
|
-
}, {
|
|
760
|
-
companyId: Array.from(params.companyId),
|
|
761
|
-
nonce: new BN(params.nonce.toString()),
|
|
762
|
-
});
|
|
763
|
-
return createTransactionPayload(payrollProgram, feePayer, [ix]);
|
|
764
|
-
}
|
|
765
752
|
export async function completeUnlock(payrollProgram, configsProgram, params, commitment) {
|
|
766
753
|
commitment = commitment ?? payrollProgram.provider.connection.commitment;
|
|
767
754
|
const company = translateAddress(params.company);
|
|
@@ -771,35 +758,51 @@ export async function completeUnlock(payrollProgram, configsProgram, params, com
|
|
|
771
758
|
if (!configData) {
|
|
772
759
|
throw new Error("YieldConfigNotFound: Yield config is not initialized in Zebec Configs Program");
|
|
773
760
|
}
|
|
774
|
-
|
|
775
|
-
const
|
|
761
|
+
const admin = configData.admin;
|
|
762
|
+
const centralVault = configData.centralVault;
|
|
763
|
+
const usxMint = configData.usxMint;
|
|
764
|
+
if (params.companyVaultKeypair &&
|
|
765
|
+
!centralVault.equals(params.companyVaultKeypair.publicKey)) {
|
|
766
|
+
throw new Error("Given keypair is not of companyVault");
|
|
767
|
+
}
|
|
776
768
|
const [companyDeposit] = deriveCompanyDepositPda(Buffer.from(params.companyId), params.nonce, payrollProgram.programId);
|
|
777
769
|
const companyDepositData = await payrollProgram.account.companyDeposit.fetchNullable(companyDeposit, commitment);
|
|
778
770
|
if (!companyDepositData) {
|
|
779
771
|
throw new Error(`CompanyDepositNotFound: Company Deposit does not exists for nonce: ${params.nonce.toString()}n and companyId: [${Array.from(params.companyId).toString()}]`);
|
|
780
772
|
}
|
|
781
773
|
const depositMint = companyDepositData.depositMint;
|
|
782
|
-
const centralVaultTokenAta = getAssociatedTokenAddressSync(depositMint,
|
|
774
|
+
const centralVaultTokenAta = getAssociatedTokenAddressSync(depositMint, centralVault, true);
|
|
775
|
+
const centralVaultUsxAta = getAssociatedTokenAddressSync(usxMint, centralVault, true);
|
|
783
776
|
const companyTokenAta = getAssociatedTokenAddressSync(depositMint, company, true);
|
|
777
|
+
const companyUsxAta = getAssociatedTokenAddressSync(usxMint, company, true);
|
|
784
778
|
const ix = await createCompleteUnlockInstruction(payrollProgram, {
|
|
785
779
|
admin,
|
|
786
780
|
feePayer,
|
|
787
781
|
company,
|
|
788
782
|
companyDeposit,
|
|
789
783
|
yieldConfig,
|
|
784
|
+
centralVault,
|
|
790
785
|
centralVaultTokenAta,
|
|
786
|
+
centralVaultUsxAta,
|
|
791
787
|
companyTokenAta,
|
|
788
|
+
companyUsxAta,
|
|
792
789
|
depositMint,
|
|
790
|
+
usxMint,
|
|
793
791
|
}, {
|
|
794
792
|
companyId: Array.from(params.companyId),
|
|
795
793
|
nonce: new BN(params.nonce.toString()),
|
|
796
794
|
});
|
|
797
|
-
|
|
795
|
+
const partialSigners = [];
|
|
796
|
+
if (params.companyVaultKeypair) {
|
|
797
|
+
partialSigners.push(params.companyVaultKeypair);
|
|
798
|
+
}
|
|
799
|
+
return createTransactionPayload(payrollProgram, feePayer, [ix], partialSigners);
|
|
798
800
|
}
|
|
799
801
|
export async function distributeRewards(payrollProgram, configsProgram, params) {
|
|
800
802
|
const admin = translateAddress(params.admin);
|
|
801
803
|
const feePayer = translateAddress(params.feePayer);
|
|
802
804
|
const [yieldConfig] = deriveYieldConfigPda(configsProgram.programId);
|
|
805
|
+
const [checkAccount] = deriveCheckAccountPda(params.checkId, payrollProgram.programId);
|
|
803
806
|
const distributions = params.distributions.map((d) => ({
|
|
804
807
|
companyId: Array.from(d.companyId),
|
|
805
808
|
nonce: new BN(d.nonce.toString()),
|
|
@@ -815,7 +818,11 @@ export async function distributeRewards(payrollProgram, configsProgram, params)
|
|
|
815
818
|
const ix = await createDistributeRewardsInstruction(payrollProgram, {
|
|
816
819
|
admin,
|
|
817
820
|
yieldConfig,
|
|
818
|
-
|
|
821
|
+
checkAccount,
|
|
822
|
+
}, {
|
|
823
|
+
distributions,
|
|
824
|
+
checkId: Array.from(params.checkId),
|
|
825
|
+
}, remainingAccounts);
|
|
819
826
|
return createTransactionPayload(payrollProgram, feePayer, [ix]);
|
|
820
827
|
}
|
|
821
828
|
export async function getCompanyDeposit(payrollProgram, company) {
|
package/dist/types.d.ts
CHANGED
|
@@ -211,21 +211,18 @@ export type RequestUnlockParams = {
|
|
|
211
211
|
companyId: Buffer | Uint8Array;
|
|
212
212
|
nonce: bigint;
|
|
213
213
|
};
|
|
214
|
-
export type CancelUnlockParams = {
|
|
215
|
-
feePayer: Address;
|
|
216
|
-
company: Address;
|
|
217
|
-
companyId: Buffer | Uint8Array;
|
|
218
|
-
nonce: bigint;
|
|
219
|
-
};
|
|
220
214
|
export type CompleteUnlockParams = {
|
|
221
215
|
feePayer: Address;
|
|
222
216
|
company: Address;
|
|
223
217
|
companyId: Buffer | Uint8Array;
|
|
224
218
|
nonce: bigint;
|
|
219
|
+
companyVaultKeypair?: Keypair;
|
|
225
220
|
};
|
|
226
221
|
export type DistributeRewardsParams = {
|
|
227
222
|
admin: Address;
|
|
228
223
|
feePayer: Address;
|
|
224
|
+
/** Check id used to derive the check account that prevents duplicate distributions. */
|
|
225
|
+
checkId: Buffer | Uint8Array;
|
|
229
226
|
distributions: {
|
|
230
227
|
companyId: Buffer | Uint8Array;
|
|
231
228
|
nonce: bigint;
|
package/package.json
CHANGED
|
@@ -1,47 +1,47 @@
|
|
|
1
|
-
{
|
|
2
|
-
"author": "Zebec Network",
|
|
3
|
-
"dependencies": {
|
|
4
|
-
"@coral-xyz/anchor": "^0.31.1",
|
|
5
|
-
"@metaplex-foundation/mpl-token-metadata": "^3.4.0",
|
|
6
|
-
"@metaplex-foundation/umi": "^1.5.1",
|
|
7
|
-
"@metaplex-foundation/umi-bundle-defaults": "^1.5.1",
|
|
8
|
-
"@metaplex-foundation/umi-web3js-adapters": "^1.5.1",
|
|
9
|
-
"@solana/spl-token": "^0.4.14",
|
|
10
|
-
"@solana/web3.js": "^1.98.2",
|
|
11
|
-
"@zebec-network/core-utils": "^1.3.
|
|
12
|
-
"@zebec-network/solana-common": "^2.6.0",
|
|
13
|
-
"@zebec-network/zebec_configs": "^1.2.
|
|
14
|
-
"@zebec-network/zebec_payroll": "^1.4.
|
|
15
|
-
"bignumber.js": "^11.1.1"
|
|
16
|
-
},
|
|
17
|
-
"devDependencies": {
|
|
18
|
-
"@types/bn.js": "^5.2.0",
|
|
19
|
-
"@types/mocha": "^10.0.10",
|
|
20
|
-
"@types/node": "^25.6.0",
|
|
21
|
-
"dotenv": "^17.4.2",
|
|
22
|
-
"mocha": "^11.7.5",
|
|
23
|
-
"rimraf": "^6.1.3",
|
|
24
|
-
"ts-mocha": "^11.1.0",
|
|
25
|
-
"ts-node": "^10.9.2",
|
|
26
|
-
"typescript": "^6.0.3"
|
|
27
|
-
},
|
|
28
|
-
"files": [
|
|
29
|
-
"dist"
|
|
30
|
-
],
|
|
31
|
-
"license": "MIT",
|
|
32
|
-
"main": "dist/index.js",
|
|
33
|
-
"name": "@zebec-network/solana-payroll-sdk",
|
|
34
|
-
"private": false,
|
|
35
|
-
"scripts": {
|
|
36
|
-
"build": "npm run clean && tsc",
|
|
37
|
-
"clean": "rimraf ./dist",
|
|
38
|
-
"format": "npx @biomejs/biome format --write",
|
|
39
|
-
"prepare": "npm run build",
|
|
40
|
-
"run:example": "node --loader ts-node/esm -- example/buildTransactionAndSendForSigning.ts",
|
|
41
|
-
"test": "ts-mocha -p ./tsconfig.json -t 1000000000 test/**/*.test.ts",
|
|
42
|
-
"test:single": "ts-mocha -p ./tsconfig.json -t 1000000000 --"
|
|
43
|
-
},
|
|
44
|
-
"type": "module",
|
|
45
|
-
"types": "dist/index.d.ts",
|
|
46
|
-
"version": "2.
|
|
1
|
+
{
|
|
2
|
+
"author": "Zebec Network",
|
|
3
|
+
"dependencies": {
|
|
4
|
+
"@coral-xyz/anchor": "^0.31.1",
|
|
5
|
+
"@metaplex-foundation/mpl-token-metadata": "^3.4.0",
|
|
6
|
+
"@metaplex-foundation/umi": "^1.5.1",
|
|
7
|
+
"@metaplex-foundation/umi-bundle-defaults": "^1.5.1",
|
|
8
|
+
"@metaplex-foundation/umi-web3js-adapters": "^1.5.1",
|
|
9
|
+
"@solana/spl-token": "^0.4.14",
|
|
10
|
+
"@solana/web3.js": "^1.98.2",
|
|
11
|
+
"@zebec-network/core-utils": "^1.3.1",
|
|
12
|
+
"@zebec-network/solana-common": "^2.6.0",
|
|
13
|
+
"@zebec-network/zebec_configs": "^1.2.3",
|
|
14
|
+
"@zebec-network/zebec_payroll": "^1.4.9",
|
|
15
|
+
"bignumber.js": "^11.1.1"
|
|
16
|
+
},
|
|
17
|
+
"devDependencies": {
|
|
18
|
+
"@types/bn.js": "^5.2.0",
|
|
19
|
+
"@types/mocha": "^10.0.10",
|
|
20
|
+
"@types/node": "^25.6.0",
|
|
21
|
+
"dotenv": "^17.4.2",
|
|
22
|
+
"mocha": "^11.7.5",
|
|
23
|
+
"rimraf": "^6.1.3",
|
|
24
|
+
"ts-mocha": "^11.1.0",
|
|
25
|
+
"ts-node": "^10.9.2",
|
|
26
|
+
"typescript": "^6.0.3"
|
|
27
|
+
},
|
|
28
|
+
"files": [
|
|
29
|
+
"dist"
|
|
30
|
+
],
|
|
31
|
+
"license": "MIT",
|
|
32
|
+
"main": "dist/index.js",
|
|
33
|
+
"name": "@zebec-network/solana-payroll-sdk",
|
|
34
|
+
"private": false,
|
|
35
|
+
"scripts": {
|
|
36
|
+
"build": "npm run clean && tsc",
|
|
37
|
+
"clean": "rimraf ./dist",
|
|
38
|
+
"format": "npx @biomejs/biome format --write",
|
|
39
|
+
"prepare": "npm run build",
|
|
40
|
+
"run:example": "node --loader ts-node/esm -- example/buildTransactionAndSendForSigning.ts",
|
|
41
|
+
"test": "ts-mocha -p ./tsconfig.json -t 1000000000 test/**/*.test.ts",
|
|
42
|
+
"test:single": "ts-mocha -p ./tsconfig.json -t 1000000000 --"
|
|
43
|
+
},
|
|
44
|
+
"type": "module",
|
|
45
|
+
"types": "dist/index.d.ts",
|
|
46
|
+
"version": "2.4.0"
|
|
47
47
|
}
|