madeonsol-x402 0.1.0 → 0.2.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/LICENSE CHANGED
@@ -1 +1 @@
1
- MIT License
1
+ MIT License
package/README.md CHANGED
@@ -1,60 +1,69 @@
1
- # madeonsol-x402
2
-
3
- Zero-config x402 client SDK for the [MadeOnSol](https://madeonsol.com) Solana KOL intelligence API. Pay-per-request with USDC on Solana.
4
-
5
- ## Install
6
-
7
- ```bash
8
- npm install madeonsol-x402 @x402/fetch @x402/svm @x402/core @solana/kit @scure/base
9
- ```
10
-
11
- ## Quick Start
12
-
13
- ```ts
14
- import { createClient } from "madeonsol-x402";
15
-
16
- const client = createClient(process.env.SOLANA_PRIVATE_KEY!);
17
- const { trades } = await client.kolFeed({ limit: 10 });
18
- console.log(trades);
19
- ```
20
-
21
- ## Endpoints
22
-
23
- | Method | Price | Description |
24
- |---|---|---|
25
- | `kolFeed(params?)` | $0.005 | Real-time KOL trade feed from 946+ tracked wallets |
26
- | `kolCoordination(params?)` | $0.02 | Tokens being accumulated by multiple KOLs simultaneously |
27
- | `kolLeaderboard(params?)` | $0.005 | KOL performance rankings by PnL and win rate |
28
- | `deployerAlerts(params?)` | $0.01 | Alerts from elite Pump.fun deployers with KOL enrichment |
29
- | `discovery()` | Free | Lists all endpoints, prices, and parameter docs |
30
-
31
- ## Parameters
32
-
33
- **kolFeed** — `limit` (1-100), `action` ("buy" | "sell"), `kol` (wallet address)
34
-
35
- **kolCoordination** — `period` ("1h" | "6h" | "24h" | "7d"), `min_kols` (2-50), `limit` (1-50)
36
-
37
- **kolLeaderboard** — `period` ("today" | "7d" | "30d"), `limit` (1-50)
38
-
39
- **deployerAlerts** — `since` (ISO8601), `limit` (1-100), `offset` (number)
40
-
41
- ## How it works
42
-
43
- The SDK wraps the [x402 payment protocol](https://x402.org). When you call an endpoint, the library automatically:
44
-
45
- 1. Sends the request
46
- 2. Receives the 402 Payment Required response
47
- 3. Signs a USDC payment on Solana using your private key
48
- 4. Retries the request with the payment proof
49
- 5. Returns typed data
50
-
51
- Your wallet needs USDC (SPL token) on Solana mainnet. Payments are settled via the PayAI facilitator.
52
-
53
- ## Discovery
54
-
55
- ```ts
56
- const info = await client.discovery();
57
- console.log(info.endpoints); // all endpoints with prices and params
58
- ```
59
-
60
- Docs: [madeonsol.com/solana-api](https://madeonsol.com/solana-api)
1
+ # madeonsol-x402
2
+
3
+ Zero-config x402 client SDK for the [MadeOnSol](https://madeonsol.com) Solana KOL intelligence API. Pay-per-request with USDC on Solana.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ npm install madeonsol-x402 @x402/fetch @x402/svm @x402/core @solana/kit @scure/base
9
+ ```
10
+
11
+ ## Quick Start
12
+
13
+ ```ts
14
+ import { createClient } from "madeonsol-x402";
15
+
16
+ const client = createClient(process.env.SOLANA_PRIVATE_KEY!);
17
+ const { trades } = await client.kolFeed({ limit: 10 });
18
+ console.log(trades);
19
+ ```
20
+
21
+ ## Endpoints
22
+
23
+ | Method | Price | Description |
24
+ |---|---|---|
25
+ | `kolFeed(params?)` | $0.005 | Real-time KOL trade feed from 946+ tracked wallets |
26
+ | `kolCoordination(params?)` | $0.02 | Tokens being accumulated by multiple KOLs simultaneously |
27
+ | `kolLeaderboard(params?)` | $0.005 | KOL performance rankings by PnL and win rate |
28
+ | `deployerAlerts(params?)` | $0.01 | Alerts from elite Pump.fun deployers with KOL enrichment |
29
+ | `discovery()` | Free | Lists all endpoints, prices, and parameter docs |
30
+
31
+ ## Parameters
32
+
33
+ **kolFeed** — `limit` (1-100), `action` ("buy" | "sell"), `kol` (wallet address)
34
+
35
+ **kolCoordination** — `period` ("1h" | "6h" | "24h" | "7d"), `min_kols` (2-50), `limit` (1-50)
36
+
37
+ **kolLeaderboard** — `period` ("today" | "7d" | "30d"), `limit` (1-50)
38
+
39
+ **deployerAlerts** — `since` (ISO8601), `limit` (1-100), `offset` (number)
40
+
41
+ ## How it works
42
+
43
+ The SDK wraps the [x402 payment protocol](https://x402.org). When you call an endpoint, the library automatically:
44
+
45
+ 1. Sends the request
46
+ 2. Receives the 402 Payment Required response
47
+ 3. Signs a USDC payment on Solana using your private key
48
+ 4. Retries the request with the payment proof
49
+ 5. Returns typed data
50
+
51
+ Your wallet needs USDC (SPL token) on Solana mainnet. Payments are settled via the PayAI facilitator.
52
+
53
+ ## Discovery
54
+
55
+ ```ts
56
+ const info = await client.discovery();
57
+ console.log(info.endpoints); // all endpoints with prices and params
58
+ ```
59
+
60
+ Docs: [madeonsol.com/solana-api](https://madeonsol.com/solana-api)
61
+
62
+ ## Also Available
63
+
64
+ | Platform | Package |
65
+ |---|---|
66
+ | Python (LangChain, CrewAI) | [`madeonsol-x402`](https://github.com/LamboPoewert/madeonsol-python) on PyPI |
67
+ | MCP Server (Claude, Cursor) | [`mcp-server-madeonsol`](https://www.npmjs.com/package/mcp-server-madeonsol) |
68
+ | ElizaOS | [`@madeonsol/plugin-madeonsol`](https://www.npmjs.com/package/@madeonsol/plugin-madeonsol) |
69
+ | Solana Agent Kit | [`solana-agent-kit-plugin-madeonsol`](https://www.npmjs.com/package/solana-agent-kit-plugin-madeonsol) |
package/dist/index.d.ts CHANGED
@@ -1,29 +1,29 @@
1
- import type { KolFeedParams, KolFeedResponse, KolCoordinationParams, KolCoordinationResponse, KolLeaderboardParams, KolLeaderboardResponse, DeployerAlertsParams, DeployerAlertsResponse, DiscoveryResponse } from "./types.js";
2
- export type { KolTrade, KolFeedParams, KolFeedResponse, KolCoordinationToken, KolCoordinationParams, KolCoordinationResponse, KolLeaderboardEntry, KolLeaderboardParams, KolLeaderboardResponse, DeployerAlert, DeployerAlertsParams, DeployerAlertsResponse, DiscoveryEndpoint, DiscoveryResponse, } from "./types.js";
3
- interface MadeOnSolX402Options {
4
- /** Base58-encoded Solana private key */
5
- privateKey: string;
6
- /** API base URL (default: https://madeonsol.com) */
7
- baseUrl?: string;
8
- }
9
- export declare class MadeOnSolX402 {
10
- private paidFetch;
11
- private baseUrl;
12
- private ready;
13
- constructor(opts: MadeOnSolX402Options);
14
- private init;
15
- private request;
16
- /** Real-time KOL trade feed from 946+ tracked wallets. ($0.005/req) */
17
- kolFeed(params?: KolFeedParams): Promise<KolFeedResponse>;
18
- /** KOL convergence signals — tokens being accumulated by multiple KOLs. ($0.02/req) */
19
- kolCoordination(params?: KolCoordinationParams): Promise<KolCoordinationResponse>;
20
- /** KOL performance rankings by PnL and win rate. ($0.005/req) */
21
- kolLeaderboard(params?: KolLeaderboardParams): Promise<KolLeaderboardResponse>;
22
- /** Real-time alerts from elite Pump.fun deployers. ($0.01/req) */
23
- deployerAlerts(params?: DeployerAlertsParams): Promise<DeployerAlertsResponse>;
24
- /** Free discovery endpoint — lists all available endpoints and prices. */
25
- discovery(): Promise<DiscoveryResponse>;
26
- }
27
- /** Convenience factory — creates a ready-to-use client. */
28
- export declare function createClient(privateKey: string, baseUrl?: string): MadeOnSolX402;
1
+ import type { KolFeedParams, KolFeedResponse, KolCoordinationParams, KolCoordinationResponse, KolLeaderboardParams, KolLeaderboardResponse, DeployerAlertsParams, DeployerAlertsResponse, DiscoveryResponse } from "./types.js";
2
+ export type { KolTrade, KolFeedParams, KolFeedResponse, KolCoordinationToken, KolCoordinationParams, KolCoordinationResponse, KolLeaderboardEntry, KolLeaderboardParams, KolLeaderboardResponse, DeployerAlert, DeployerAlertsParams, DeployerAlertsResponse, DiscoveryEndpoint, DiscoveryResponse, } from "./types.js";
3
+ interface MadeOnSolX402Options {
4
+ /** Base58-encoded Solana private key */
5
+ privateKey: string;
6
+ /** API base URL (default: https://madeonsol.com) */
7
+ baseUrl?: string;
8
+ }
9
+ export declare class MadeOnSolX402 {
10
+ private paidFetch;
11
+ private baseUrl;
12
+ private ready;
13
+ constructor(opts: MadeOnSolX402Options);
14
+ private init;
15
+ private request;
16
+ /** Real-time KOL trade feed from 946+ tracked wallets. ($0.005/req) */
17
+ kolFeed(params?: KolFeedParams): Promise<KolFeedResponse>;
18
+ /** KOL convergence signals — tokens being accumulated by multiple KOLs. ($0.02/req) */
19
+ kolCoordination(params?: KolCoordinationParams): Promise<KolCoordinationResponse>;
20
+ /** KOL performance rankings by PnL and win rate. ($0.005/req) */
21
+ kolLeaderboard(params?: KolLeaderboardParams): Promise<KolLeaderboardResponse>;
22
+ /** Real-time alerts from elite Pump.fun deployers. ($0.01/req) */
23
+ deployerAlerts(params?: DeployerAlertsParams): Promise<DeployerAlertsResponse>;
24
+ /** Free discovery endpoint — lists all available endpoints and prices. */
25
+ discovery(): Promise<DiscoveryResponse>;
26
+ }
27
+ /** Convenience factory — creates a ready-to-use client. */
28
+ export declare function createClient(privateKey: string, baseUrl?: string): MadeOnSolX402;
29
29
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1,65 +1,65 @@
1
- const DEFAULT_BASE_URL = "https://madeonsol.com";
2
- export class MadeOnSolX402 {
3
- paidFetch;
4
- baseUrl;
5
- ready;
6
- constructor(opts) {
7
- this.baseUrl = (opts.baseUrl ?? DEFAULT_BASE_URL).replace(/\/$/, "");
8
- this.ready = this.init(opts.privateKey);
9
- }
10
- async init(privateKey) {
11
- const { wrapFetchWithPayment } = await import("@x402/fetch");
12
- const { x402Client } = await import("@x402/core/client");
13
- const { ExactSvmScheme } = await import("@x402/svm/exact/client");
14
- const { createKeyPairSignerFromBytes } = await import("@solana/kit");
15
- const { base58 } = await import("@scure/base");
16
- const signer = await createKeyPairSignerFromBytes(base58.decode(privateKey));
17
- const client = new x402Client();
18
- client.register("solana:*", new ExactSvmScheme(signer));
19
- this.paidFetch = wrapFetchWithPayment(fetch, client);
20
- }
21
- async request(path, params) {
22
- await this.ready;
23
- const url = new URL(path, this.baseUrl);
24
- if (params) {
25
- for (const [k, v] of Object.entries(params)) {
26
- if (v !== undefined)
27
- url.searchParams.set(k, String(v));
28
- }
29
- }
30
- const res = await this.paidFetch(url.toString());
31
- if (!res.ok) {
32
- const body = await res.text().catch(() => "");
33
- throw new Error(`MadeOnSol API error ${res.status}: ${body}`);
34
- }
35
- return res.json();
36
- }
37
- /** Real-time KOL trade feed from 946+ tracked wallets. ($0.005/req) */
38
- async kolFeed(params) {
39
- return this.request("/api/x402/kol/feed", params);
40
- }
41
- /** KOL convergence signals — tokens being accumulated by multiple KOLs. ($0.02/req) */
42
- async kolCoordination(params) {
43
- return this.request("/api/x402/kol/coordination", params);
44
- }
45
- /** KOL performance rankings by PnL and win rate. ($0.005/req) */
46
- async kolLeaderboard(params) {
47
- return this.request("/api/x402/kol/leaderboard", params);
48
- }
49
- /** Real-time alerts from elite Pump.fun deployers. ($0.01/req) */
50
- async deployerAlerts(params) {
51
- return this.request("/api/x402/deployer-hunter/alerts", params);
52
- }
53
- /** Free discovery endpoint — lists all available endpoints and prices. */
54
- async discovery() {
55
- const res = await fetch(new URL("/api/x402", this.baseUrl).toString());
56
- if (!res.ok)
57
- throw new Error(`Discovery failed: ${res.status}`);
58
- return res.json();
59
- }
60
- }
61
- /** Convenience factory — creates a ready-to-use client. */
62
- export function createClient(privateKey, baseUrl) {
63
- return new MadeOnSolX402({ privateKey, baseUrl });
64
- }
1
+ const DEFAULT_BASE_URL = "https://madeonsol.com";
2
+ export class MadeOnSolX402 {
3
+ paidFetch;
4
+ baseUrl;
5
+ ready;
6
+ constructor(opts) {
7
+ this.baseUrl = (opts.baseUrl ?? DEFAULT_BASE_URL).replace(/\/$/, "");
8
+ this.ready = this.init(opts.privateKey);
9
+ }
10
+ async init(privateKey) {
11
+ const { wrapFetchWithPayment } = await import("@x402/fetch");
12
+ const { x402Client } = await import("@x402/core/client");
13
+ const { ExactSvmScheme } = await import("@x402/svm/exact/client");
14
+ const { createKeyPairSignerFromBytes } = await import("@solana/kit");
15
+ const { base58 } = await import("@scure/base");
16
+ const signer = await createKeyPairSignerFromBytes(base58.decode(privateKey));
17
+ const client = new x402Client();
18
+ client.register("solana:*", new ExactSvmScheme(signer));
19
+ this.paidFetch = wrapFetchWithPayment(fetch, client);
20
+ }
21
+ async request(path, params) {
22
+ await this.ready;
23
+ const url = new URL(path, this.baseUrl);
24
+ if (params) {
25
+ for (const [k, v] of Object.entries(params)) {
26
+ if (v !== undefined)
27
+ url.searchParams.set(k, String(v));
28
+ }
29
+ }
30
+ const res = await this.paidFetch(url.toString());
31
+ if (!res.ok) {
32
+ const body = await res.text().catch(() => "");
33
+ throw new Error(`MadeOnSol API error ${res.status}: ${body}`);
34
+ }
35
+ return res.json();
36
+ }
37
+ /** Real-time KOL trade feed from 946+ tracked wallets. ($0.005/req) */
38
+ async kolFeed(params) {
39
+ return this.request("/api/x402/kol/feed", params);
40
+ }
41
+ /** KOL convergence signals — tokens being accumulated by multiple KOLs. ($0.02/req) */
42
+ async kolCoordination(params) {
43
+ return this.request("/api/x402/kol/coordination", params);
44
+ }
45
+ /** KOL performance rankings by PnL and win rate. ($0.005/req) */
46
+ async kolLeaderboard(params) {
47
+ return this.request("/api/x402/kol/leaderboard", params);
48
+ }
49
+ /** Real-time alerts from elite Pump.fun deployers. ($0.01/req) */
50
+ async deployerAlerts(params) {
51
+ return this.request("/api/x402/deployer-hunter/alerts", params);
52
+ }
53
+ /** Free discovery endpoint — lists all available endpoints and prices. */
54
+ async discovery() {
55
+ const res = await fetch(new URL("/api/x402", this.baseUrl).toString());
56
+ if (!res.ok)
57
+ throw new Error(`Discovery failed: ${res.status}`);
58
+ return res.json();
59
+ }
60
+ }
61
+ /** Convenience factory — creates a ready-to-use client. */
62
+ export function createClient(privateKey, baseUrl) {
63
+ return new MadeOnSolX402({ privateKey, baseUrl });
64
+ }
65
65
  //# sourceMappingURL=index.js.map
package/dist/types.d.ts CHANGED
@@ -1,126 +1,126 @@
1
- export interface KolTrade {
2
- wallet_address: string;
3
- kol_name: string | null;
4
- kol_twitter: string | null;
5
- token_mint: string;
6
- token_name: string | null;
7
- token_symbol: string | null;
8
- action: "buy" | "sell";
9
- sol_amount: number;
10
- token_amount: number;
11
- tx_signature: string;
12
- deployer?: {
13
- wallet: string;
14
- tier: string;
15
- bonding_rate: number | null;
16
- };
17
- traded_at: string;
18
- }
19
- export interface KolFeedResponse {
20
- trades: KolTrade[];
21
- count: number;
22
- }
23
- export interface KolFeedParams {
24
- limit?: number;
25
- action?: "buy" | "sell";
26
- kol?: string;
27
- }
28
- export interface KolCoordinationToken {
29
- token_mint: string;
30
- token_symbol: string;
31
- token_name: string;
32
- kol_count: number;
33
- total_buys: number;
34
- total_sells: number;
35
- net_sol_flow: number;
36
- signal: "accumulating" | "distributing";
37
- kols: {
38
- name: string;
39
- wallet: string;
40
- }[];
41
- }
42
- export interface KolCoordinationResponse {
43
- coordination: KolCoordinationToken[];
44
- period: string;
45
- min_kols: number;
46
- }
47
- export interface KolCoordinationParams {
48
- period?: "1h" | "6h" | "24h" | "7d";
49
- min_kols?: number;
50
- limit?: number;
51
- }
52
- export interface KolLeaderboardEntry {
53
- wallet_address: string;
54
- name: string;
55
- pnl_sol: number;
56
- total_buy_sol: number;
57
- total_sell_sol: number;
58
- buy_count: number;
59
- sell_count: number;
60
- win_rate: number | null;
61
- }
62
- export interface KolLeaderboardResponse {
63
- leaderboard: KolLeaderboardEntry[];
64
- period: string;
65
- }
66
- export interface KolLeaderboardParams {
67
- period?: "today" | "7d" | "30d";
68
- limit?: number;
69
- }
70
- export interface DeployerAlert {
71
- id: string;
72
- token_mint: string;
73
- token_name: string | null;
74
- token_symbol: string | null;
75
- alert_type: string;
76
- title: string;
77
- message: string;
78
- priority: string;
79
- created_at: string;
80
- market_cap_at_alert: number | null;
81
- deployers: {
82
- wallet_address: string;
83
- tier: string;
84
- total_tokens_deployed: number;
85
- total_bonded: number;
86
- bonding_rate: number;
87
- recent_outcomes: unknown;
88
- recent_bond_rate: number;
89
- };
90
- kol_buys: {
91
- count: number;
92
- total_sol: number;
93
- kols: string[];
94
- } | null;
95
- }
96
- export interface DeployerAlertsResponse {
97
- alerts: DeployerAlert[];
98
- limit: number;
99
- offset: number;
100
- }
101
- export interface DeployerAlertsParams {
102
- since?: string;
103
- limit?: number;
104
- offset?: number;
105
- }
106
- export interface DiscoveryEndpoint {
107
- path: string;
108
- method: string;
109
- price: string;
110
- description: string;
111
- params: Record<string, string>;
112
- }
113
- export interface DiscoveryResponse {
114
- name: string;
115
- description: string;
116
- website: string;
117
- x402Version: number;
118
- payTo: string;
119
- network: string;
120
- paymentToken: string;
121
- endpoints: DiscoveryEndpoint[];
122
- docs: string;
123
- totalKolsTracked: number;
124
- totalDeployersTracked: string;
125
- }
1
+ export interface KolTrade {
2
+ wallet_address: string;
3
+ kol_name: string | null;
4
+ kol_twitter: string | null;
5
+ token_mint: string;
6
+ token_name: string | null;
7
+ token_symbol: string | null;
8
+ action: "buy" | "sell";
9
+ sol_amount: number;
10
+ token_amount: number;
11
+ tx_signature: string;
12
+ deployer?: {
13
+ wallet: string;
14
+ tier: string;
15
+ bonding_rate: number | null;
16
+ };
17
+ traded_at: string;
18
+ }
19
+ export interface KolFeedResponse {
20
+ trades: KolTrade[];
21
+ count: number;
22
+ }
23
+ export interface KolFeedParams {
24
+ limit?: number;
25
+ action?: "buy" | "sell";
26
+ kol?: string;
27
+ }
28
+ export interface KolCoordinationToken {
29
+ token_mint: string;
30
+ token_symbol: string;
31
+ token_name: string;
32
+ kol_count: number;
33
+ total_buys: number;
34
+ total_sells: number;
35
+ net_sol_flow: number;
36
+ signal: "accumulating" | "distributing";
37
+ kols: {
38
+ name: string;
39
+ wallet: string;
40
+ }[];
41
+ }
42
+ export interface KolCoordinationResponse {
43
+ coordination: KolCoordinationToken[];
44
+ period: string;
45
+ min_kols: number;
46
+ }
47
+ export interface KolCoordinationParams {
48
+ period?: "1h" | "6h" | "24h" | "7d";
49
+ min_kols?: number;
50
+ limit?: number;
51
+ }
52
+ export interface KolLeaderboardEntry {
53
+ wallet_address: string;
54
+ name: string;
55
+ pnl_sol: number;
56
+ total_buy_sol: number;
57
+ total_sell_sol: number;
58
+ buy_count: number;
59
+ sell_count: number;
60
+ win_rate: number | null;
61
+ }
62
+ export interface KolLeaderboardResponse {
63
+ leaderboard: KolLeaderboardEntry[];
64
+ period: string;
65
+ }
66
+ export interface KolLeaderboardParams {
67
+ period?: "today" | "7d" | "30d";
68
+ limit?: number;
69
+ }
70
+ export interface DeployerAlert {
71
+ id: string;
72
+ token_mint: string;
73
+ token_name: string | null;
74
+ token_symbol: string | null;
75
+ alert_type: string;
76
+ title: string;
77
+ message: string;
78
+ priority: string;
79
+ created_at: string;
80
+ market_cap_at_alert: number | null;
81
+ deployers: {
82
+ wallet_address: string;
83
+ tier: string;
84
+ total_tokens_deployed: number;
85
+ total_bonded: number;
86
+ bonding_rate: number;
87
+ recent_outcomes: unknown;
88
+ recent_bond_rate: number;
89
+ };
90
+ kol_buys: {
91
+ count: number;
92
+ total_sol: number;
93
+ kols: string[];
94
+ } | null;
95
+ }
96
+ export interface DeployerAlertsResponse {
97
+ alerts: DeployerAlert[];
98
+ limit: number;
99
+ offset: number;
100
+ }
101
+ export interface DeployerAlertsParams {
102
+ since?: string;
103
+ limit?: number;
104
+ offset?: number;
105
+ }
106
+ export interface DiscoveryEndpoint {
107
+ path: string;
108
+ method: string;
109
+ price: string;
110
+ description: string;
111
+ params: Record<string, string>;
112
+ }
113
+ export interface DiscoveryResponse {
114
+ name: string;
115
+ description: string;
116
+ website: string;
117
+ x402Version: number;
118
+ payTo: string;
119
+ network: string;
120
+ paymentToken: string;
121
+ endpoints: DiscoveryEndpoint[];
122
+ docs: string;
123
+ totalKolsTracked: number;
124
+ totalDeployersTracked: string;
125
+ }
126
126
  //# sourceMappingURL=types.d.ts.map
package/dist/types.js CHANGED
@@ -1,3 +1,3 @@
1
- /* ── KOL Feed ── */
2
- export {};
1
+ /* ── KOL Feed ── */
2
+ export {};
3
3
  //# sourceMappingURL=types.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "madeonsol-x402",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "x402 client SDK for MadeOnSol Solana KOL intelligence API",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",