@solana/rpc-subscriptions-api 2.0.0-20241006045741

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.
Files changed (33) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +68 -0
  3. package/dist/index.browser.cjs +217 -0
  4. package/dist/index.browser.cjs.map +1 -0
  5. package/dist/index.browser.mjs +210 -0
  6. package/dist/index.browser.mjs.map +1 -0
  7. package/dist/index.native.mjs +210 -0
  8. package/dist/index.native.mjs.map +1 -0
  9. package/dist/index.node.cjs +217 -0
  10. package/dist/index.node.cjs.map +1 -0
  11. package/dist/index.node.mjs +210 -0
  12. package/dist/index.node.mjs.map +1 -0
  13. package/dist/types/account-notifications.d.ts +29 -0
  14. package/dist/types/account-notifications.d.ts.map +1 -0
  15. package/dist/types/block-notifications.d.ts +236 -0
  16. package/dist/types/block-notifications.d.ts.map +1 -0
  17. package/dist/types/index.d.ts +18 -0
  18. package/dist/types/index.d.ts.map +1 -0
  19. package/dist/types/logs-notifications.d.ts +24 -0
  20. package/dist/types/logs-notifications.d.ts.map +1 -0
  21. package/dist/types/program-notifications.d.ts +46 -0
  22. package/dist/types/program-notifications.d.ts.map +1 -0
  23. package/dist/types/root-notifications.d.ts +10 -0
  24. package/dist/types/root-notifications.d.ts.map +1 -0
  25. package/dist/types/signature-notifications.d.ts +24 -0
  26. package/dist/types/signature-notifications.d.ts.map +1 -0
  27. package/dist/types/slot-notifications.d.ts +14 -0
  28. package/dist/types/slot-notifications.d.ts.map +1 -0
  29. package/dist/types/slots-updates-notifications.d.ts +32 -0
  30. package/dist/types/slots-updates-notifications.d.ts.map +1 -0
  31. package/dist/types/vote-notifications.d.ts +18 -0
  32. package/dist/types/vote-notifications.d.ts.map +1 -0
  33. package/package.json +93 -0
@@ -0,0 +1,210 @@
1
+ import fastStableStringify from '@solana/fast-stable-stringify';
2
+ import { createRpcSubscriptionsApi, executeRpcPubSubSubscriptionPlan } from '@solana/rpc-subscriptions-spec';
3
+ import { getDefaultResponseTransformerForSolanaRpcSubscriptions, jsonParsedAccountsConfigs, KEYPATH_WILDCARD, getDefaultRequestTransformerForSolanaRpc } from '@solana/rpc-transformers';
4
+
5
+ // src/index.ts
6
+ function createSolanaRpcSubscriptionsApi_INTERNAL(config) {
7
+ const responseTransformer = getDefaultResponseTransformerForSolanaRpcSubscriptions({
8
+ allowedNumericKeyPaths: getAllowedNumericKeypaths()
9
+ });
10
+ const parametersTransformer = (notificationName, params) => {
11
+ return getDefaultRequestTransformerForSolanaRpc(config)({ methodName: notificationName, params }).params;
12
+ };
13
+ return createRpcSubscriptionsApi({
14
+ getSubscriptionConfigurationHash({ notificationName, params }) {
15
+ return fastStableStringify([notificationName, params]);
16
+ },
17
+ planExecutor({ notificationName, params, ...rest }) {
18
+ return executeRpcPubSubSubscriptionPlan({
19
+ ...rest,
20
+ responseTransformer,
21
+ subscribeMethodName: notificationName.replace(/Notifications$/, "Subscribe"),
22
+ subscribeParams: parametersTransformer(notificationName, params),
23
+ unsubscribeMethodName: notificationName.replace(/Notifications$/, "Unsubscribe")
24
+ });
25
+ }
26
+ });
27
+ }
28
+ function createSolanaRpcSubscriptionsApi(config) {
29
+ return createSolanaRpcSubscriptionsApi_INTERNAL(config);
30
+ }
31
+ function createSolanaRpcSubscriptionsApi_UNSTABLE(config) {
32
+ return createSolanaRpcSubscriptionsApi_INTERNAL(
33
+ config
34
+ );
35
+ }
36
+ var memoizedKeypaths;
37
+ function getAllowedNumericKeypaths() {
38
+ if (!memoizedKeypaths) {
39
+ memoizedKeypaths = {
40
+ accountNotifications: jsonParsedAccountsConfigs.map((c) => ["value", ...c]),
41
+ blockNotifications: [
42
+ [
43
+ "value",
44
+ "block",
45
+ "transactions",
46
+ KEYPATH_WILDCARD,
47
+ "meta",
48
+ "preTokenBalances",
49
+ KEYPATH_WILDCARD,
50
+ "accountIndex"
51
+ ],
52
+ [
53
+ "value",
54
+ "block",
55
+ "transactions",
56
+ KEYPATH_WILDCARD,
57
+ "meta",
58
+ "preTokenBalances",
59
+ KEYPATH_WILDCARD,
60
+ "uiTokenAmount",
61
+ "decimals"
62
+ ],
63
+ [
64
+ "value",
65
+ "block",
66
+ "transactions",
67
+ KEYPATH_WILDCARD,
68
+ "meta",
69
+ "postTokenBalances",
70
+ KEYPATH_WILDCARD,
71
+ "accountIndex"
72
+ ],
73
+ [
74
+ "value",
75
+ "block",
76
+ "transactions",
77
+ KEYPATH_WILDCARD,
78
+ "meta",
79
+ "postTokenBalances",
80
+ KEYPATH_WILDCARD,
81
+ "uiTokenAmount",
82
+ "decimals"
83
+ ],
84
+ ["value", "block", "transactions", KEYPATH_WILDCARD, "meta", "rewards", KEYPATH_WILDCARD, "commission"],
85
+ [
86
+ "value",
87
+ "block",
88
+ "transactions",
89
+ KEYPATH_WILDCARD,
90
+ "meta",
91
+ "innerInstructions",
92
+ KEYPATH_WILDCARD,
93
+ "index"
94
+ ],
95
+ [
96
+ "value",
97
+ "block",
98
+ "transactions",
99
+ KEYPATH_WILDCARD,
100
+ "meta",
101
+ "innerInstructions",
102
+ KEYPATH_WILDCARD,
103
+ "instructions",
104
+ KEYPATH_WILDCARD,
105
+ "programIdIndex"
106
+ ],
107
+ [
108
+ "value",
109
+ "block",
110
+ "transactions",
111
+ KEYPATH_WILDCARD,
112
+ "meta",
113
+ "innerInstructions",
114
+ KEYPATH_WILDCARD,
115
+ "instructions",
116
+ KEYPATH_WILDCARD,
117
+ "accounts",
118
+ KEYPATH_WILDCARD
119
+ ],
120
+ [
121
+ "value",
122
+ "block",
123
+ "transactions",
124
+ KEYPATH_WILDCARD,
125
+ "transaction",
126
+ "message",
127
+ "addressTableLookups",
128
+ KEYPATH_WILDCARD,
129
+ "writableIndexes",
130
+ KEYPATH_WILDCARD
131
+ ],
132
+ [
133
+ "value",
134
+ "block",
135
+ "transactions",
136
+ KEYPATH_WILDCARD,
137
+ "transaction",
138
+ "message",
139
+ "addressTableLookups",
140
+ KEYPATH_WILDCARD,
141
+ "readonlyIndexes",
142
+ KEYPATH_WILDCARD
143
+ ],
144
+ [
145
+ "value",
146
+ "block",
147
+ "transactions",
148
+ KEYPATH_WILDCARD,
149
+ "transaction",
150
+ "message",
151
+ "instructions",
152
+ KEYPATH_WILDCARD,
153
+ "programIdIndex"
154
+ ],
155
+ [
156
+ "value",
157
+ "block",
158
+ "transactions",
159
+ KEYPATH_WILDCARD,
160
+ "transaction",
161
+ "message",
162
+ "instructions",
163
+ KEYPATH_WILDCARD,
164
+ "accounts",
165
+ KEYPATH_WILDCARD
166
+ ],
167
+ [
168
+ "value",
169
+ "block",
170
+ "transactions",
171
+ KEYPATH_WILDCARD,
172
+ "transaction",
173
+ "message",
174
+ "header",
175
+ "numReadonlySignedAccounts"
176
+ ],
177
+ [
178
+ "value",
179
+ "block",
180
+ "transactions",
181
+ KEYPATH_WILDCARD,
182
+ "transaction",
183
+ "message",
184
+ "header",
185
+ "numReadonlyUnsignedAccounts"
186
+ ],
187
+ [
188
+ "value",
189
+ "block",
190
+ "transactions",
191
+ KEYPATH_WILDCARD,
192
+ "transaction",
193
+ "message",
194
+ "header",
195
+ "numRequiredSignatures"
196
+ ],
197
+ ["value", "block", "rewards", KEYPATH_WILDCARD, "commission"]
198
+ ],
199
+ programNotifications: jsonParsedAccountsConfigs.flatMap((c) => [
200
+ ["value", KEYPATH_WILDCARD, "account", ...c],
201
+ [KEYPATH_WILDCARD, "account", ...c]
202
+ ])
203
+ };
204
+ }
205
+ return memoizedKeypaths;
206
+ }
207
+
208
+ export { createSolanaRpcSubscriptionsApi, createSolanaRpcSubscriptionsApi_UNSTABLE };
209
+ //# sourceMappingURL=index.node.mjs.map
210
+ //# sourceMappingURL=index.node.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":";;;;;AAkDA,SAAS,yCACL,MACyB,EAAA;AACzB,EAAA,MAAM,sBAAsB,sDAAuD,CAAA;AAAA,IAC/E,wBAAwB,yBAA0B,EAAA;AAAA,GACrD,CAAA,CAAA;AAED,EAAM,MAAA,qBAAA,GAAwB,CAAsB,gBAAA,EAA0B,MAAe,KAAA;AACzF,IAAO,OAAA,wCAAA,CAAyC,MAAM,CAAE,CAAA,EAAE,YAAY,gBAAkB,EAAA,MAAA,EAAQ,CAC3F,CAAA,MAAA,CAAA;AAAA,GACT,CAAA;AACA,EAAA,OAAO,yBAAgC,CAAA;AAAA,IACnC,gCAAiC,CAAA,EAAE,gBAAkB,EAAA,MAAA,EAAU,EAAA;AAC3D,MAAA,OAAO,mBAAoB,CAAA,CAAC,gBAAkB,EAAA,MAAM,CAAC,CAAA,CAAA;AAAA,KACzD;AAAA,IACA,aAAa,EAAE,gBAAA,EAAkB,MAAQ,EAAA,GAAG,MAAQ,EAAA;AAChD,MAAA,OAAO,gCAAiC,CAAA;AAAA,QACpC,GAAG,IAAA;AAAA,QACH,mBAAA;AAAA,QACA,mBAAqB,EAAA,gBAAA,CAAiB,OAAQ,CAAA,gBAAA,EAAkB,WAAW,CAAA;AAAA,QAC3E,eAAA,EAAiB,qBAAsB,CAAA,gBAAA,EAAkB,MAAM,CAAA;AAAA,QAC/D,qBAAuB,EAAA,gBAAA,CAAiB,OAAQ,CAAA,gBAAA,EAAkB,aAAa,CAAA;AAAA,OAClF,CAAA,CAAA;AAAA,KACL;AAAA,GACH,CAAA,CAAA;AACL,CAAA;AAEO,SAAS,gCACZ,MACyB,EAAA;AACzB,EAAA,OAAO,yCAA+C,MAAM,CAAA,CAAA;AAChE,CAAA;AAEO,SAAS,yCAAyC,MAAiB,EAAA;AACtE,EAAO,OAAA,wCAAA;AAAA,IACH,MAAA;AAAA,GACJ,CAAA;AACJ,CAAA;AAEA,IAAI,gBAAA,CAAA;AAQJ,SAAS,yBAEP,GAAA;AACE,EAAA,IAAI,CAAC,gBAAkB,EAAA;AACnB,IAAmB,gBAAA,GAAA;AAAA,MACf,oBAAA,EAAsB,0BAA0B,GAAI,CAAA,CAAA,CAAA,KAAK,CAAC,OAAS,EAAA,GAAG,CAAC,CAAC,CAAA;AAAA,MACxE,kBAAoB,EAAA;AAAA,QAChB;AAAA,UACI,OAAA;AAAA,UACA,OAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,MAAA;AAAA,UACA,kBAAA;AAAA,UACA,gBAAA;AAAA,UACA,cAAA;AAAA,SACJ;AAAA,QACA;AAAA,UACI,OAAA;AAAA,UACA,OAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,MAAA;AAAA,UACA,kBAAA;AAAA,UACA,gBAAA;AAAA,UACA,eAAA;AAAA,UACA,UAAA;AAAA,SACJ;AAAA,QACA;AAAA,UACI,OAAA;AAAA,UACA,OAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,MAAA;AAAA,UACA,mBAAA;AAAA,UACA,gBAAA;AAAA,UACA,cAAA;AAAA,SACJ;AAAA,QACA;AAAA,UACI,OAAA;AAAA,UACA,OAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,MAAA;AAAA,UACA,mBAAA;AAAA,UACA,gBAAA;AAAA,UACA,eAAA;AAAA,UACA,UAAA;AAAA,SACJ;AAAA,QACA,CAAC,SAAS,OAAS,EAAA,cAAA,EAAgB,kBAAkB,MAAQ,EAAA,SAAA,EAAW,kBAAkB,YAAY,CAAA;AAAA,QACtG;AAAA,UACI,OAAA;AAAA,UACA,OAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,MAAA;AAAA,UACA,mBAAA;AAAA,UACA,gBAAA;AAAA,UACA,OAAA;AAAA,SACJ;AAAA,QACA;AAAA,UACI,OAAA;AAAA,UACA,OAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,MAAA;AAAA,UACA,mBAAA;AAAA,UACA,gBAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,gBAAA;AAAA,SACJ;AAAA,QACA;AAAA,UACI,OAAA;AAAA,UACA,OAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,MAAA;AAAA,UACA,mBAAA;AAAA,UACA,gBAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,UAAA;AAAA,UACA,gBAAA;AAAA,SACJ;AAAA,QACA;AAAA,UACI,OAAA;AAAA,UACA,OAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,aAAA;AAAA,UACA,SAAA;AAAA,UACA,qBAAA;AAAA,UACA,gBAAA;AAAA,UACA,iBAAA;AAAA,UACA,gBAAA;AAAA,SACJ;AAAA,QACA;AAAA,UACI,OAAA;AAAA,UACA,OAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,aAAA;AAAA,UACA,SAAA;AAAA,UACA,qBAAA;AAAA,UACA,gBAAA;AAAA,UACA,iBAAA;AAAA,UACA,gBAAA;AAAA,SACJ;AAAA,QACA;AAAA,UACI,OAAA;AAAA,UACA,OAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,aAAA;AAAA,UACA,SAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,gBAAA;AAAA,SACJ;AAAA,QACA;AAAA,UACI,OAAA;AAAA,UACA,OAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,aAAA;AAAA,UACA,SAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,UAAA;AAAA,UACA,gBAAA;AAAA,SACJ;AAAA,QACA;AAAA,UACI,OAAA;AAAA,UACA,OAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,aAAA;AAAA,UACA,SAAA;AAAA,UACA,QAAA;AAAA,UACA,2BAAA;AAAA,SACJ;AAAA,QACA;AAAA,UACI,OAAA;AAAA,UACA,OAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,aAAA;AAAA,UACA,SAAA;AAAA,UACA,QAAA;AAAA,UACA,6BAAA;AAAA,SACJ;AAAA,QACA;AAAA,UACI,OAAA;AAAA,UACA,OAAA;AAAA,UACA,cAAA;AAAA,UACA,gBAAA;AAAA,UACA,aAAA;AAAA,UACA,SAAA;AAAA,UACA,QAAA;AAAA,UACA,uBAAA;AAAA,SACJ;AAAA,QACA,CAAC,OAAA,EAAS,OAAS,EAAA,SAAA,EAAW,kBAAkB,YAAY,CAAA;AAAA,OAChE;AAAA,MACA,oBAAA,EAAsB,yBAA0B,CAAA,OAAA,CAAQ,CAAK,CAAA,KAAA;AAAA,QACzD,CAAC,OAAA,EAAS,gBAAkB,EAAA,SAAA,EAAW,GAAG,CAAC,CAAA;AAAA,QAC3C,CAAC,gBAAA,EAAkB,SAAW,EAAA,GAAG,CAAC,CAAA;AAAA,OACrC,CAAA;AAAA,KACL,CAAA;AAAA,GACJ;AACA,EAAO,OAAA,gBAAA,CAAA;AACX","file":"index.node.mjs","sourcesContent":["import fastStableStringify from '@solana/fast-stable-stringify';\nimport {\n createRpcSubscriptionsApi,\n executeRpcPubSubSubscriptionPlan,\n RpcSubscriptionsApi,\n RpcSubscriptionsApiMethods,\n} from '@solana/rpc-subscriptions-spec';\nimport {\n AllowedNumericKeypaths,\n getDefaultRequestTransformerForSolanaRpc,\n getDefaultResponseTransformerForSolanaRpcSubscriptions,\n jsonParsedAccountsConfigs,\n KEYPATH_WILDCARD,\n RequestTransformerConfig,\n} from '@solana/rpc-transformers';\n\nimport { AccountNotificationsApi } from './account-notifications';\nimport { BlockNotificationsApi } from './block-notifications';\nimport { LogsNotificationsApi } from './logs-notifications';\nimport { ProgramNotificationsApi } from './program-notifications';\nimport { RootNotificationsApi } from './root-notifications';\nimport { SignatureNotificationsApi } from './signature-notifications';\nimport { SlotNotificationsApi } from './slot-notifications';\nimport { SlotsUpdatesNotificationsApi } from './slots-updates-notifications';\nimport { VoteNotificationsApi } from './vote-notifications';\n\nexport type SolanaRpcSubscriptionsApi = AccountNotificationsApi &\n LogsNotificationsApi &\n ProgramNotificationsApi &\n RootNotificationsApi &\n SignatureNotificationsApi &\n SlotNotificationsApi;\nexport type SolanaRpcSubscriptionsApiUnstable = BlockNotificationsApi &\n SlotsUpdatesNotificationsApi &\n VoteNotificationsApi;\n\nexport type {\n AccountNotificationsApi,\n BlockNotificationsApi,\n LogsNotificationsApi,\n ProgramNotificationsApi,\n RootNotificationsApi,\n SignatureNotificationsApi,\n SlotNotificationsApi,\n SlotsUpdatesNotificationsApi,\n VoteNotificationsApi,\n};\n\ntype Config = RequestTransformerConfig;\n\nfunction createSolanaRpcSubscriptionsApi_INTERNAL<TApi extends RpcSubscriptionsApiMethods>(\n config?: Config,\n): RpcSubscriptionsApi<TApi> {\n const responseTransformer = getDefaultResponseTransformerForSolanaRpcSubscriptions({\n allowedNumericKeyPaths: getAllowedNumericKeypaths(),\n });\n // TODO(loris): Replace with request transformer.\n const parametersTransformer = <T extends unknown[]>(notificationName: string, params?: T) => {\n return getDefaultRequestTransformerForSolanaRpc(config)({ methodName: notificationName, params })\n .params as unknown[];\n };\n return createRpcSubscriptionsApi<TApi>({\n getSubscriptionConfigurationHash({ notificationName, params }) {\n return fastStableStringify([notificationName, params]);\n },\n planExecutor({ notificationName, params, ...rest }) {\n return executeRpcPubSubSubscriptionPlan({\n ...rest,\n responseTransformer,\n subscribeMethodName: notificationName.replace(/Notifications$/, 'Subscribe'),\n subscribeParams: parametersTransformer(notificationName, params),\n unsubscribeMethodName: notificationName.replace(/Notifications$/, 'Unsubscribe'),\n });\n },\n });\n}\n\nexport function createSolanaRpcSubscriptionsApi<TApi extends RpcSubscriptionsApiMethods = SolanaRpcSubscriptionsApi>(\n config?: Config,\n): RpcSubscriptionsApi<TApi> {\n return createSolanaRpcSubscriptionsApi_INTERNAL<TApi>(config);\n}\n\nexport function createSolanaRpcSubscriptionsApi_UNSTABLE(config?: Config) {\n return createSolanaRpcSubscriptionsApi_INTERNAL<SolanaRpcSubscriptionsApi & SolanaRpcSubscriptionsApiUnstable>(\n config,\n );\n}\n\nlet memoizedKeypaths: AllowedNumericKeypaths<\n RpcSubscriptionsApi<SolanaRpcSubscriptionsApi & SolanaRpcSubscriptionsApiUnstable>\n>;\n\n/**\n * These are keypaths at the end of which you will find a numeric value that should *not* be upcast\n * to a `bigint`. These are values that are legitimately defined as `u8` or `usize` on the backend.\n */\nfunction getAllowedNumericKeypaths(): AllowedNumericKeypaths<\n RpcSubscriptionsApi<SolanaRpcSubscriptionsApi & SolanaRpcSubscriptionsApiUnstable>\n> {\n if (!memoizedKeypaths) {\n memoizedKeypaths = {\n accountNotifications: jsonParsedAccountsConfigs.map(c => ['value', ...c]),\n blockNotifications: [\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'preTokenBalances',\n KEYPATH_WILDCARD,\n 'accountIndex',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'preTokenBalances',\n KEYPATH_WILDCARD,\n 'uiTokenAmount',\n 'decimals',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'postTokenBalances',\n KEYPATH_WILDCARD,\n 'accountIndex',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'postTokenBalances',\n KEYPATH_WILDCARD,\n 'uiTokenAmount',\n 'decimals',\n ],\n ['value', 'block', 'transactions', KEYPATH_WILDCARD, 'meta', 'rewards', KEYPATH_WILDCARD, 'commission'],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'innerInstructions',\n KEYPATH_WILDCARD,\n 'index',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'innerInstructions',\n KEYPATH_WILDCARD,\n 'instructions',\n KEYPATH_WILDCARD,\n 'programIdIndex',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'innerInstructions',\n KEYPATH_WILDCARD,\n 'instructions',\n KEYPATH_WILDCARD,\n 'accounts',\n KEYPATH_WILDCARD,\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'addressTableLookups',\n KEYPATH_WILDCARD,\n 'writableIndexes',\n KEYPATH_WILDCARD,\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'addressTableLookups',\n KEYPATH_WILDCARD,\n 'readonlyIndexes',\n KEYPATH_WILDCARD,\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'instructions',\n KEYPATH_WILDCARD,\n 'programIdIndex',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'instructions',\n KEYPATH_WILDCARD,\n 'accounts',\n KEYPATH_WILDCARD,\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'header',\n 'numReadonlySignedAccounts',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'header',\n 'numReadonlyUnsignedAccounts',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'header',\n 'numRequiredSignatures',\n ],\n ['value', 'block', 'rewards', KEYPATH_WILDCARD, 'commission'],\n ],\n programNotifications: jsonParsedAccountsConfigs.flatMap(c => [\n ['value', KEYPATH_WILDCARD, 'account', ...c],\n [KEYPATH_WILDCARD, 'account', ...c],\n ]),\n };\n }\n return memoizedKeypaths;\n}\n"]}
@@ -0,0 +1,29 @@
1
+ import type { Address } from '@solana/addresses';
2
+ import type { AccountInfoBase, AccountInfoWithBase58Bytes, AccountInfoWithBase58EncodedData, AccountInfoWithBase64EncodedData, AccountInfoWithBase64EncodedZStdCompressedData, AccountInfoWithJsonData, Commitment, SolanaRpcResponse } from '@solana/rpc-types';
3
+ type AccountNotificationsApiCommonConfig = Readonly<{
4
+ commitment?: Commitment;
5
+ }>;
6
+ export type AccountNotificationsApi = {
7
+ /**
8
+ * Subscribe to an account to receive notifications when the lamports or data for
9
+ * a given account public key changes.
10
+ *
11
+ * The notification format is the same as seen in the `getAccountInfo` RPC HTTP method.
12
+ * @see https://docs.solana.com/api/websocket#getAccountInfo
13
+ */
14
+ accountNotifications(address: Address, config: AccountNotificationsApiCommonConfig & Readonly<{
15
+ encoding: 'base64';
16
+ }>): SolanaRpcResponse<AccountInfoBase & AccountInfoWithBase64EncodedData>;
17
+ accountNotifications(address: Address, config: AccountNotificationsApiCommonConfig & Readonly<{
18
+ encoding: 'base64+zstd';
19
+ }>): SolanaRpcResponse<AccountInfoBase & AccountInfoWithBase64EncodedZStdCompressedData>;
20
+ accountNotifications(address: Address, config: AccountNotificationsApiCommonConfig & Readonly<{
21
+ encoding: 'jsonParsed';
22
+ }>): SolanaRpcResponse<AccountInfoBase & AccountInfoWithJsonData>;
23
+ accountNotifications(address: Address, config: AccountNotificationsApiCommonConfig & Readonly<{
24
+ encoding: 'base58';
25
+ }>): SolanaRpcResponse<AccountInfoBase & AccountInfoWithBase58EncodedData>;
26
+ accountNotifications(address: Address, config?: AccountNotificationsApiCommonConfig): SolanaRpcResponse<AccountInfoBase & AccountInfoWithBase58Bytes>;
27
+ };
28
+ export {};
29
+ //# sourceMappingURL=account-notifications.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account-notifications.d.ts","sourceRoot":"","sources":["../../src/account-notifications.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,EACR,eAAe,EACf,0BAA0B,EAC1B,gCAAgC,EAChC,gCAAgC,EAChC,8CAA8C,EAC9C,uBAAuB,EACvB,UAAU,EACV,iBAAiB,EACpB,MAAM,mBAAmB,CAAC;AAE3B,KAAK,mCAAmC,GAAG,QAAQ,CAAC;IAChD,UAAU,CAAC,EAAE,UAAU,CAAC;CAC3B,CAAC,CAAC;AAEH,MAAM,MAAM,uBAAuB,GAAG;IAClC;;;;;;OAMG;IACH,oBAAoB,CAChB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,mCAAmC,GACvC,QAAQ,CAAC;QACL,QAAQ,EAAE,QAAQ,CAAC;KACtB,CAAC,GACP,iBAAiB,CAAC,eAAe,GAAG,gCAAgC,CAAC,CAAC;IACzE,oBAAoB,CAChB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,mCAAmC,GACvC,QAAQ,CAAC;QACL,QAAQ,EAAE,aAAa,CAAC;KAC3B,CAAC,GACP,iBAAiB,CAAC,eAAe,GAAG,8CAA8C,CAAC,CAAC;IACvF,oBAAoB,CAChB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,mCAAmC,GACvC,QAAQ,CAAC;QACL,QAAQ,EAAE,YAAY,CAAC;KAC1B,CAAC,GACP,iBAAiB,CAAC,eAAe,GAAG,uBAAuB,CAAC,CAAC;IAChE,oBAAoB,CAChB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,mCAAmC,GACvC,QAAQ,CAAC;QACL,QAAQ,EAAE,QAAQ,CAAC;KACtB,CAAC,GACP,iBAAiB,CAAC,eAAe,GAAG,gCAAgC,CAAC,CAAC;IACzE,oBAAoB,CAChB,OAAO,EAAE,OAAO,EAChB,MAAM,CAAC,EAAE,mCAAmC,GAC7C,iBAAiB,CAAC,eAAe,GAAG,0BAA0B,CAAC,CAAC;CACtE,CAAC"}
@@ -0,0 +1,236 @@
1
+ import type { Base58EncodedBytes, Blockhash, Commitment, Reward, Slot, SolanaRpcResponse, TransactionForAccounts, TransactionForFullBase58, TransactionForFullBase64, TransactionForFullJson, TransactionForFullJsonParsed, U64UnsafeBeyond2Pow53Minus1, UnixTimestampUnsafeBeyond2Pow53Minus1 } from '@solana/rpc-types';
2
+ import type { TransactionVersion } from '@solana/transaction-messages';
3
+ type BlockNotificationsNotificationBase = Readonly<{
4
+ /**
5
+ * Errors can arise in generating a block notification.
6
+ * If an error is encountered, this field will contain the error, and the `block` field will return null.
7
+ * @see https://github.com/solana-labs/solana/blob/6ea51280ddc235ed93e16906c3427efd20cd7ce4/rpc/src/rpc_subscriptions.rs#L1059-L1074
8
+ * @see https://github.com/solana-labs/solana/blob/6ea51280ddc235ed93e16906c3427efd20cd7ce4/rpc-client-api/src/response.rs#L507-L514
9
+ */
10
+ err: string | null;
11
+ slot: Slot;
12
+ }>;
13
+ type BlockNotificationsNotificationBlock = Readonly<{
14
+ /** The number of blocks beneath this block */
15
+ blockHeight: U64UnsafeBeyond2Pow53Minus1;
16
+ /** Estimated production time, as Unix timestamp */
17
+ blockTime: UnixTimestampUnsafeBeyond2Pow53Minus1;
18
+ /** the blockhash of this block */
19
+ blockhash: Blockhash;
20
+ /** The slot index of this block's parent */
21
+ parentSlot: Slot;
22
+ /** The blockhash of this block's parent */
23
+ previousBlockhash: Blockhash;
24
+ }>;
25
+ type BlockNotificationsNotificationBlockWithRewards = Readonly<{
26
+ /** Block-level rewards */
27
+ rewards: readonly Reward[];
28
+ }>;
29
+ type BlockNotificationsNotificationBlockWithSignatures = Readonly<{
30
+ /** List of signatures applied to transactions in this block */
31
+ signatures: readonly Base58EncodedBytes[];
32
+ }>;
33
+ type BlockNotificationsNotificationBlockWithTransactions<TTransaction> = Readonly<{
34
+ transactions: readonly TTransaction[];
35
+ }>;
36
+ type BlockNotificationsFilter = 'all' | {
37
+ mentionsAccountOrProgram: string;
38
+ };
39
+ type BlockNotificationsCommonConfig = Readonly<{
40
+ /** @defaultValue finalized */
41
+ commitment?: Omit<Commitment, 'processed'>;
42
+ }>;
43
+ type BlockNotificationsEncoding = 'base58' | 'base64' | 'json' | 'jsonParsed';
44
+ type BlockNotificationsMaxSupportedTransactionVersion = Exclude<TransactionVersion, 'legacy'>;
45
+ export type BlockNotificationsApi = {
46
+ /**
47
+ * Subscribe to receive notification anytime a new block is Confirmed or Finalized.
48
+ *
49
+ * Note: The `block` field is a block object as seen in the `getBlock` RPC HTTP method.
50
+ * @see https://docs.solana.com/api/http#getblock
51
+ */
52
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
53
+ encoding?: BlockNotificationsEncoding;
54
+ maxSupportedTransactionVersion?: BlockNotificationsMaxSupportedTransactionVersion;
55
+ showRewards: false;
56
+ transactionDetails: 'none';
57
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
58
+ block: BlockNotificationsNotificationBlock | null;
59
+ }>>;
60
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
61
+ encoding?: BlockNotificationsEncoding;
62
+ maxSupportedTransactionVersion?: BlockNotificationsMaxSupportedTransactionVersion;
63
+ showRewards?: true;
64
+ transactionDetails: 'none';
65
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
66
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithRewards) | null;
67
+ }>>;
68
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
69
+ encoding?: BlockNotificationsEncoding;
70
+ maxSupportedTransactionVersion?: BlockNotificationsMaxSupportedTransactionVersion;
71
+ showRewards: false;
72
+ transactionDetails: 'signatures';
73
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
74
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithSignatures) | null;
75
+ }>>;
76
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
77
+ encoding?: BlockNotificationsEncoding;
78
+ maxSupportedTransactionVersion?: BlockNotificationsMaxSupportedTransactionVersion;
79
+ showRewards?: true;
80
+ transactionDetails: 'signatures';
81
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
82
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithRewards & BlockNotificationsNotificationBlockWithSignatures) | null;
83
+ }>>;
84
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
85
+ encoding?: BlockNotificationsEncoding;
86
+ maxSupportedTransactionVersion: BlockNotificationsMaxSupportedTransactionVersion;
87
+ showRewards: false;
88
+ transactionDetails: 'accounts';
89
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
90
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithTransactions<TransactionForAccounts<BlockNotificationsMaxSupportedTransactionVersion>>) | null;
91
+ }>>;
92
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
93
+ encoding?: BlockNotificationsEncoding;
94
+ showRewards: false;
95
+ transactionDetails: 'accounts';
96
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
97
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithTransactions<TransactionForAccounts<void>>) | null;
98
+ }>>;
99
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
100
+ encoding?: BlockNotificationsEncoding;
101
+ maxSupportedTransactionVersion: BlockNotificationsMaxSupportedTransactionVersion;
102
+ showRewards?: true;
103
+ transactionDetails: 'accounts';
104
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
105
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithRewards & BlockNotificationsNotificationBlockWithTransactions<TransactionForAccounts<BlockNotificationsMaxSupportedTransactionVersion>>) | null;
106
+ }>>;
107
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
108
+ encoding?: BlockNotificationsEncoding;
109
+ showRewards?: true;
110
+ transactionDetails: 'accounts';
111
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
112
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithRewards & BlockNotificationsNotificationBlockWithTransactions<TransactionForAccounts<void>>) | null;
113
+ }>>;
114
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
115
+ encoding: 'base58';
116
+ maxSupportedTransactionVersion: BlockNotificationsMaxSupportedTransactionVersion;
117
+ showRewards: false;
118
+ transactionDetails?: 'full';
119
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
120
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullBase58<BlockNotificationsMaxSupportedTransactionVersion>>) | null;
121
+ }>>;
122
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
123
+ encoding: 'base58';
124
+ showRewards: false;
125
+ transactionDetails?: 'full';
126
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
127
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullBase58<void>>) | null;
128
+ }>>;
129
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
130
+ encoding: 'base58';
131
+ maxSupportedTransactionVersion: BlockNotificationsMaxSupportedTransactionVersion;
132
+ showRewards?: true;
133
+ transactionDetails?: 'full';
134
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
135
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithRewards & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullBase58<BlockNotificationsMaxSupportedTransactionVersion>>) | null;
136
+ }>>;
137
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
138
+ encoding: 'base58';
139
+ showRewards?: true;
140
+ transactionDetails?: 'full';
141
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
142
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithRewards & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullBase58<void>>) | null;
143
+ }>>;
144
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
145
+ encoding: 'base64';
146
+ maxSupportedTransactionVersion: BlockNotificationsMaxSupportedTransactionVersion;
147
+ showRewards: false;
148
+ transactionDetails?: 'full';
149
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
150
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullBase64<BlockNotificationsMaxSupportedTransactionVersion>>) | null;
151
+ }>>;
152
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
153
+ encoding: 'base64';
154
+ showRewards: false;
155
+ transactionDetails?: 'full';
156
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
157
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullBase64<void>>) | null;
158
+ }>>;
159
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
160
+ encoding: 'base64';
161
+ maxSupportedTransactionVersion: BlockNotificationsMaxSupportedTransactionVersion;
162
+ showRewards?: true;
163
+ transactionDetails?: 'full';
164
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
165
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithRewards & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullBase64<BlockNotificationsMaxSupportedTransactionVersion>>) | null;
166
+ }>>;
167
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
168
+ encoding: 'base64';
169
+ showRewards?: true;
170
+ transactionDetails?: 'full';
171
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
172
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithRewards & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullBase64<void>>) | null;
173
+ }>>;
174
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
175
+ encoding: 'jsonParsed';
176
+ maxSupportedTransactionVersion: BlockNotificationsMaxSupportedTransactionVersion;
177
+ showRewards: false;
178
+ transactionDetails?: 'full';
179
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
180
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullJsonParsed<BlockNotificationsMaxSupportedTransactionVersion>>) | null;
181
+ }>>;
182
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
183
+ encoding: 'jsonParsed';
184
+ showRewards: false;
185
+ transactionDetails?: 'full';
186
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
187
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullJsonParsed<void>>) | null;
188
+ }>>;
189
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
190
+ encoding: 'jsonParsed';
191
+ maxSupportedTransactionVersion: BlockNotificationsMaxSupportedTransactionVersion;
192
+ showRewards?: true;
193
+ transactionDetails?: 'full';
194
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
195
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithRewards & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullJsonParsed<BlockNotificationsMaxSupportedTransactionVersion>>) | null;
196
+ }>>;
197
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
198
+ encoding: 'jsonParsed';
199
+ showRewards?: true;
200
+ transactionDetails?: 'full';
201
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
202
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithRewards & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullJsonParsed<void>>) | null;
203
+ }>>;
204
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
205
+ encoding?: 'json';
206
+ maxSupportedTransactionVersion: BlockNotificationsMaxSupportedTransactionVersion;
207
+ showRewards: false;
208
+ transactionDetails?: 'full';
209
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
210
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullJson<BlockNotificationsMaxSupportedTransactionVersion>>) | null;
211
+ }>>;
212
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
213
+ encoding?: 'json';
214
+ showRewards: false;
215
+ transactionDetails?: 'full';
216
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
217
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullJson<void>>) | null;
218
+ }>>;
219
+ blockNotifications(filter: BlockNotificationsFilter, config: BlockNotificationsCommonConfig & Readonly<{
220
+ encoding?: 'json';
221
+ maxSupportedTransactionVersion: BlockNotificationsMaxSupportedTransactionVersion;
222
+ showRewards?: true;
223
+ transactionDetails?: 'full';
224
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
225
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithRewards & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullJson<BlockNotificationsMaxSupportedTransactionVersion>>) | null;
226
+ }>>;
227
+ blockNotifications(filter: BlockNotificationsFilter, config?: BlockNotificationsCommonConfig & Readonly<{
228
+ encoding?: 'json';
229
+ showRewards?: true;
230
+ transactionDetails?: 'full';
231
+ }>): SolanaRpcResponse<BlockNotificationsNotificationBase & Readonly<{
232
+ block: (BlockNotificationsNotificationBlock & BlockNotificationsNotificationBlockWithRewards & BlockNotificationsNotificationBlockWithTransactions<TransactionForFullJson<void>>) | null;
233
+ }>>;
234
+ };
235
+ export {};
236
+ //# sourceMappingURL=block-notifications.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"block-notifications.d.ts","sourceRoot":"","sources":["../../src/block-notifications.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { RpcSubscriptionsApi, RpcSubscriptionsApiMethods } from '@solana/rpc-subscriptions-spec';
2
+ import { RequestTransformerConfig } from '@solana/rpc-transformers';
3
+ import { AccountNotificationsApi } from './account-notifications';
4
+ import { BlockNotificationsApi } from './block-notifications';
5
+ import { LogsNotificationsApi } from './logs-notifications';
6
+ import { ProgramNotificationsApi } from './program-notifications';
7
+ import { RootNotificationsApi } from './root-notifications';
8
+ import { SignatureNotificationsApi } from './signature-notifications';
9
+ import { SlotNotificationsApi } from './slot-notifications';
10
+ import { SlotsUpdatesNotificationsApi } from './slots-updates-notifications';
11
+ import { VoteNotificationsApi } from './vote-notifications';
12
+ export type SolanaRpcSubscriptionsApi = AccountNotificationsApi & LogsNotificationsApi & ProgramNotificationsApi & RootNotificationsApi & SignatureNotificationsApi & SlotNotificationsApi;
13
+ export type SolanaRpcSubscriptionsApiUnstable = BlockNotificationsApi & SlotsUpdatesNotificationsApi & VoteNotificationsApi;
14
+ export type { AccountNotificationsApi, BlockNotificationsApi, LogsNotificationsApi, ProgramNotificationsApi, RootNotificationsApi, SignatureNotificationsApi, SlotNotificationsApi, SlotsUpdatesNotificationsApi, VoteNotificationsApi, };
15
+ type Config = RequestTransformerConfig;
16
+ export declare function createSolanaRpcSubscriptionsApi<TApi extends RpcSubscriptionsApiMethods = SolanaRpcSubscriptionsApi>(config?: Config): RpcSubscriptionsApi<TApi>;
17
+ export declare function createSolanaRpcSubscriptionsApi_UNSTABLE(config?: Config): RpcSubscriptionsApi<AccountNotificationsApi & LogsNotificationsApi & ProgramNotificationsApi & RootNotificationsApi & SignatureNotificationsApi & SlotNotificationsApi & BlockNotificationsApi & SlotsUpdatesNotificationsApi & VoteNotificationsApi>;
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAGH,mBAAmB,EACnB,0BAA0B,EAC7B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAMH,wBAAwB,EAC3B,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,MAAM,MAAM,yBAAyB,GAAG,uBAAuB,GAC3D,oBAAoB,GACpB,uBAAuB,GACvB,oBAAoB,GACpB,yBAAyB,GACzB,oBAAoB,CAAC;AACzB,MAAM,MAAM,iCAAiC,GAAG,qBAAqB,GACjE,4BAA4B,GAC5B,oBAAoB,CAAC;AAEzB,YAAY,EACR,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,yBAAyB,EACzB,oBAAoB,EACpB,4BAA4B,EAC5B,oBAAoB,GACvB,CAAC;AAEF,KAAK,MAAM,GAAG,wBAAwB,CAAC;AA6BvC,wBAAgB,+BAA+B,CAAC,IAAI,SAAS,0BAA0B,GAAG,yBAAyB,EAC/G,MAAM,CAAC,EAAE,MAAM,GAChB,mBAAmB,CAAC,IAAI,CAAC,CAE3B;AAED,wBAAgB,wCAAwC,CAAC,MAAM,CAAC,EAAE,MAAM,yPAIvE"}
@@ -0,0 +1,24 @@
1
+ import type { Address } from '@solana/addresses';
2
+ import type { Signature } from '@solana/keys';
3
+ import type { Commitment, SolanaRpcResponse, TransactionError } from '@solana/rpc-types';
4
+ type LogsNotificationsApiNotification = SolanaRpcResponse<Readonly<{
5
+ err: TransactionError | null;
6
+ logs: readonly string[] | null;
7
+ signature: Signature;
8
+ }>>;
9
+ type LogsNotificationsApiFilter = 'all' | 'allWithVotes' | {
10
+ mentions: [Address];
11
+ };
12
+ type LogsNotificationsApiConfig = Readonly<{
13
+ commitment?: Commitment;
14
+ }>;
15
+ export type LogsNotificationsApi = {
16
+ /**
17
+ * Subscribe to a transaction logs to receive notification when a given transaction is committed.
18
+ * On `logsNotification` - the subscription is automatically cancelled.
19
+ * The logs must be a txid, the first logs of a transaction.
20
+ */
21
+ logsNotifications(filter: LogsNotificationsApiFilter, config?: LogsNotificationsApiConfig): LogsNotificationsApiNotification;
22
+ };
23
+ export {};
24
+ //# sourceMappingURL=logs-notifications.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logs-notifications.d.ts","sourceRoot":"","sources":["../../src/logs-notifications.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAEzF,KAAK,gCAAgC,GAAG,iBAAiB,CACrD,QAAQ,CAAC;IAEL,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAI7B,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAC;IAE/B,SAAS,EAAE,SAAS,CAAC;CACxB,CAAC,CACL,CAAC;AAIF,KAAK,0BAA0B,GAAG,KAAK,GAAG,cAAc,GAAG;IAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAA;CAAE,CAAC;AAEnF,KAAK,0BAA0B,GAAG,QAAQ,CAAC;IACvC,UAAU,CAAC,EAAE,UAAU,CAAC;CAC3B,CAAC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG;IAC/B;;;;OAIG;IACH,iBAAiB,CACb,MAAM,EAAE,0BAA0B,EAClC,MAAM,CAAC,EAAE,0BAA0B,GACpC,gCAAgC,CAAC;CACvC,CAAC"}
@@ -0,0 +1,46 @@
1
+ import type { Address } from '@solana/addresses';
2
+ import type { AccountInfoBase, AccountInfoWithBase58Bytes, AccountInfoWithBase58EncodedData, AccountInfoWithBase64EncodedData, AccountInfoWithBase64EncodedZStdCompressedData, AccountInfoWithJsonData, Base58EncodedBytes, Base64EncodedBytes, Commitment, SolanaRpcResponse, U64UnsafeBeyond2Pow53Minus1 } from '@solana/rpc-types';
3
+ type ProgramNotificationsMemcmpFilterBase58 = Readonly<{
4
+ bytes: Base58EncodedBytes;
5
+ encoding: 'base58';
6
+ offset: U64UnsafeBeyond2Pow53Minus1;
7
+ }>;
8
+ type ProgramNotificationsMemcmpFilterBase64 = Readonly<{
9
+ bytes: Base64EncodedBytes;
10
+ encoding: 'base64';
11
+ offset: U64UnsafeBeyond2Pow53Minus1;
12
+ }>;
13
+ type ProgramNotificationsDatasizeFilter = U64UnsafeBeyond2Pow53Minus1;
14
+ type ProgramNotificationsApiNotificationBase<TData> = SolanaRpcResponse<Readonly<{
15
+ account: AccountInfoBase & TData;
16
+ pubkey: Address;
17
+ }>>;
18
+ type ProgramNotificationsApiCommonConfig = Readonly<{
19
+ commitment?: Commitment;
20
+ filters?: readonly Readonly<{
21
+ dataSize: ProgramNotificationsDatasizeFilter;
22
+ } | {
23
+ memcmp: ProgramNotificationsMemcmpFilterBase58 | ProgramNotificationsMemcmpFilterBase64;
24
+ }>[];
25
+ }>;
26
+ export type ProgramNotificationsApi = {
27
+ /**
28
+ * Subscribe to a program to receive notifications when the lamports or data for an account
29
+ * owned by the given program changes
30
+ */
31
+ programNotifications(programId: Address, config: ProgramNotificationsApiCommonConfig & Readonly<{
32
+ encoding: 'base64';
33
+ }>): ProgramNotificationsApiNotificationBase<AccountInfoWithBase64EncodedData>;
34
+ programNotifications(programId: Address, config: ProgramNotificationsApiCommonConfig & Readonly<{
35
+ encoding: 'base64+zstd';
36
+ }>): ProgramNotificationsApiNotificationBase<AccountInfoWithBase64EncodedZStdCompressedData>;
37
+ programNotifications(programId: Address, config: ProgramNotificationsApiCommonConfig & Readonly<{
38
+ encoding: 'jsonParsed';
39
+ }>): ProgramNotificationsApiNotificationBase<AccountInfoWithJsonData>;
40
+ programNotifications(programId: Address, config: ProgramNotificationsApiCommonConfig & Readonly<{
41
+ encoding: 'base58';
42
+ }>): ProgramNotificationsApiNotificationBase<AccountInfoWithBase58EncodedData>;
43
+ programNotifications(programId: Address, config?: ProgramNotificationsApiCommonConfig): ProgramNotificationsApiNotificationBase<AccountInfoWithBase58Bytes>;
44
+ };
45
+ export {};
46
+ //# sourceMappingURL=program-notifications.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"program-notifications.d.ts","sourceRoot":"","sources":["../../src/program-notifications.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,EACR,eAAe,EACf,0BAA0B,EAC1B,gCAAgC,EAChC,gCAAgC,EAChC,8CAA8C,EAC9C,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,UAAU,EACV,iBAAiB,EACjB,2BAA2B,EAC9B,MAAM,mBAAmB,CAAC;AAE3B,KAAK,sCAAsC,GAAG,QAAQ,CAAC;IACnD,KAAK,EAAE,kBAAkB,CAAC;IAC1B,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,2BAA2B,CAAC;CACvC,CAAC,CAAC;AAEH,KAAK,sCAAsC,GAAG,QAAQ,CAAC;IACnD,KAAK,EAAE,kBAAkB,CAAC;IAC1B,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,2BAA2B,CAAC;CACvC,CAAC,CAAC;AAEH,KAAK,kCAAkC,GAAG,2BAA2B,CAAC;AAEtE,KAAK,uCAAuC,CAAC,KAAK,IAAI,iBAAiB,CACnE,QAAQ,CAAC;IACL,OAAO,EAAE,eAAe,GAAG,KAAK,CAAC;IACjC,MAAM,EAAE,OAAO,CAAC;CACnB,CAAC,CACL,CAAC;AAEF,KAAK,mCAAmC,GAAG,QAAQ,CAAC;IAChD,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB,OAAO,CAAC,EAAE,SAAS,QAAQ,CACrB;QAAE,QAAQ,EAAE,kCAAkC,CAAA;KAAE,GAChD;QAAE,MAAM,EAAE,sCAAsC,GAAG,sCAAsC,CAAA;KAAE,CAChG,EAAE,CAAC;CACP,CAAC,CAAC;AAEH,MAAM,MAAM,uBAAuB,GAAG;IAClC;;;OAGG;IACH,oBAAoB,CAChB,SAAS,EAAE,OAAO,EAClB,MAAM,EAAE,mCAAmC,GACvC,QAAQ,CAAC;QACL,QAAQ,EAAE,QAAQ,CAAC;KACtB,CAAC,GACP,uCAAuC,CAAC,gCAAgC,CAAC,CAAC;IAC7E,oBAAoB,CAChB,SAAS,EAAE,OAAO,EAClB,MAAM,EAAE,mCAAmC,GACvC,QAAQ,CAAC;QACL,QAAQ,EAAE,aAAa,CAAC;KAC3B,CAAC,GACP,uCAAuC,CAAC,8CAA8C,CAAC,CAAC;IAC3F,oBAAoB,CAChB,SAAS,EAAE,OAAO,EAClB,MAAM,EAAE,mCAAmC,GACvC,QAAQ,CAAC;QACL,QAAQ,EAAE,YAAY,CAAC;KAC1B,CAAC,GACP,uCAAuC,CAAC,uBAAuB,CAAC,CAAC;IACpE,oBAAoB,CAChB,SAAS,EAAE,OAAO,EAClB,MAAM,EAAE,mCAAmC,GACvC,QAAQ,CAAC;QACL,QAAQ,EAAE,QAAQ,CAAC;KACtB,CAAC,GACP,uCAAuC,CAAC,gCAAgC,CAAC,CAAC;IAC7E,oBAAoB,CAChB,SAAS,EAAE,OAAO,EAClB,MAAM,CAAC,EAAE,mCAAmC,GAC7C,uCAAuC,CAAC,0BAA0B,CAAC,CAAC;CAC1E,CAAC"}