@aigne/afs-ocap 1.12.0-beta.5
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.md +26 -0
- package/README.md +144 -0
- package/aup/accounts/default.json +64 -0
- package/aup/accounts/item.json +510 -0
- package/aup/assets/default.json +70 -0
- package/aup/assets/item.json +360 -0
- package/aup/bridges/_addr/blocks/item.json +168 -0
- package/aup/bridges/default.json +79 -0
- package/aup/bridges/item.json +868 -0
- package/aup/config/default.json +806 -0
- package/aup/default.json +387 -0
- package/aup/delegates/default.json +71 -0
- package/aup/delegates/item.json +241 -0
- package/aup/factories/default.json +78 -0
- package/aup/factories/item.json +310 -0
- package/aup/stakes/default.json +76 -0
- package/aup/stakes/item.json +374 -0
- package/aup/tokens/default.json +76 -0
- package/aup/tokens/item.json +384 -0
- package/aup/transactions/default.json +102 -0
- package/aup/transactions/item.json +286 -0
- package/aup/validators/default.json +57 -0
- package/aup/validators/item.json +99 -0
- package/dist/_virtual/_@oxc-project_runtime@0.108.0/helpers/decorate.cjs +11 -0
- package/dist/_virtual/_@oxc-project_runtime@0.108.0/helpers/decorate.mjs +10 -0
- package/dist/index.cjs +7 -0
- package/dist/index.d.cts +5 -0
- package/dist/index.d.mts +5 -0
- package/dist/index.mjs +4 -0
- package/dist/method-colors.cjs +137 -0
- package/dist/method-colors.mjs +136 -0
- package/dist/method-colors.mjs.map +1 -0
- package/dist/provider.cjs +2490 -0
- package/dist/provider.d.cts +453 -0
- package/dist/provider.d.cts.map +1 -0
- package/dist/provider.d.mts +453 -0
- package/dist/provider.d.mts.map +1 -0
- package/dist/provider.mjs +2490 -0
- package/dist/provider.mjs.map +1 -0
- package/dist/remote-source.cjs +338 -0
- package/dist/remote-source.d.cts +62 -0
- package/dist/remote-source.d.cts.map +1 -0
- package/dist/remote-source.d.mts +62 -0
- package/dist/remote-source.d.mts.map +1 -0
- package/dist/remote-source.mjs +339 -0
- package/dist/remote-source.mjs.map +1 -0
- package/dist/source.d.cts +77 -0
- package/dist/source.d.cts.map +1 -0
- package/dist/source.d.mts +77 -0
- package/dist/source.d.mts.map +1 -0
- package/dist/types.d.cts +572 -0
- package/dist/types.d.cts.map +1 -0
- package/dist/types.d.mts +572 -0
- package/dist/types.d.mts.map +1 -0
- package/dist/utils.cjs +581 -0
- package/dist/utils.mjs +557 -0
- package/dist/utils.mjs.map +1 -0
- package/package.json +61 -0
|
@@ -0,0 +1,453 @@
|
|
|
1
|
+
import { AFSOCAPOptions } from "./types.cjs";
|
|
2
|
+
import { AFSAccessMode, AFSEntry, AFSExplainResult, AFSListResult, AFSModuleLoadParams, AFSRoot, AFSSearchOptions, AFSStatResult, OperationsDeclaration, ProviderManifest, ProviderTreeSchema } from "@aigne/afs";
|
|
3
|
+
import { AFSBaseProvider, RouteContext } from "@aigne/afs/provider";
|
|
4
|
+
import { z } from "zod";
|
|
5
|
+
|
|
6
|
+
//#region src/provider.d.ts
|
|
7
|
+
declare class AFSOCAP extends AFSBaseProvider {
|
|
8
|
+
static schema(): z.ZodObject<{
|
|
9
|
+
endpoint: z.ZodString;
|
|
10
|
+
name: z.ZodOptional<z.ZodString>;
|
|
11
|
+
description: z.ZodOptional<z.ZodString>;
|
|
12
|
+
accessMode: z.ZodOptional<z.ZodEnum<{
|
|
13
|
+
readonly: "readonly";
|
|
14
|
+
readwrite: "readwrite";
|
|
15
|
+
}>>;
|
|
16
|
+
pageSize: z.ZodOptional<z.ZodNumber>;
|
|
17
|
+
}, z.core.$strip>;
|
|
18
|
+
static manifest(): ProviderManifest;
|
|
19
|
+
static treeSchema(): ProviderTreeSchema;
|
|
20
|
+
static load({
|
|
21
|
+
config
|
|
22
|
+
}?: AFSModuleLoadParams): Promise<AFSOCAP>;
|
|
23
|
+
private _name;
|
|
24
|
+
readonly description?: string;
|
|
25
|
+
readonly accessMode: AFSAccessMode;
|
|
26
|
+
get name(): string;
|
|
27
|
+
private source;
|
|
28
|
+
private defaultPageSize;
|
|
29
|
+
private _nameResolved;
|
|
30
|
+
private priceCache;
|
|
31
|
+
private static readonly PRICE_TTL_MS;
|
|
32
|
+
private static readonly PRICE_API;
|
|
33
|
+
private fetchImpl;
|
|
34
|
+
private chainCache;
|
|
35
|
+
private static readonly CHAIN_TTL_MS;
|
|
36
|
+
private nativeTokenPromise;
|
|
37
|
+
constructor(options: AFSOCAPOptions);
|
|
38
|
+
/**
|
|
39
|
+
* Probed during onMount(); true when the underlying source exposes a
|
|
40
|
+
* working `subscribe(topic, cb)`. Read by `getOperationsDeclaration()`
|
|
41
|
+
* so capability discovery reflects runtime reality (worker bundles
|
|
42
|
+
* without `@arcblock/ws` advertise live:false even when the rest of
|
|
43
|
+
* the read API works fine).
|
|
44
|
+
*/
|
|
45
|
+
private _liveCapable;
|
|
46
|
+
private _unsubTxCreate;
|
|
47
|
+
onMount(_root: AFSRoot, _mountPath?: string): void;
|
|
48
|
+
onUnmount(): void;
|
|
49
|
+
/**
|
|
50
|
+
* Bridge a phoenix `tx.create` payload onto the AFS event bus as an
|
|
51
|
+
* `afs:append /transactions/<hash>` event. Path traversal is impossible
|
|
52
|
+
* because the hash is bracketed with `joinURL` after validation; we drop
|
|
53
|
+
* the event entirely if the hash isn't a plain string.
|
|
54
|
+
*/
|
|
55
|
+
private handleTxCreatePayload;
|
|
56
|
+
protected getOperationsDeclaration(): OperationsDeclaration;
|
|
57
|
+
private resolveNameOnce;
|
|
58
|
+
/**
|
|
59
|
+
* Memoize an async source call by `key` for `ttlMs`. Concurrent callers
|
|
60
|
+
* share the in-flight Promise; rejections evict the entry so the next
|
|
61
|
+
* call retries. Used by chain-level aggregate queries that are read by
|
|
62
|
+
* multiple handlers within the same homepage load.
|
|
63
|
+
*/
|
|
64
|
+
private memoize;
|
|
65
|
+
/**
|
|
66
|
+
* Resolve the chain's native gas/staking token (ABT on ArcBlock-family
|
|
67
|
+
* chains, with a fallback to the newest token when ABT isn't present —
|
|
68
|
+
* test chains, custom genesis). The result is cached for the lifetime of
|
|
69
|
+
* the provider; failures are not cached so the next caller retries.
|
|
70
|
+
*
|
|
71
|
+
* Returns `null` when no native token is discoverable (empty chain).
|
|
72
|
+
*/
|
|
73
|
+
private resolveNativeToken;
|
|
74
|
+
/**
|
|
75
|
+
* Symbol-keyed price fetch. Extracted from `readTokenPrice` so callers
|
|
76
|
+
* that already know the symbol (e.g. microbar after resolveNativeToken)
|
|
77
|
+
* can skip the `getTokenState` round-trip just to look up the symbol.
|
|
78
|
+
*
|
|
79
|
+
* Returns the normalized payload on success, a `{...stale, error}` object
|
|
80
|
+
* when fetch fails but a cache entry exists, or `null` when fetch fails
|
|
81
|
+
* with no cached fallback.
|
|
82
|
+
*/
|
|
83
|
+
private getPriceBySymbol;
|
|
84
|
+
private resolveNavPath;
|
|
85
|
+
/**
|
|
86
|
+
* Phase 0.2 A.6 — Inject the request's account address as `_currentAccount`
|
|
87
|
+
* on every entry's content. Used by /accounts/:addr/{transactions,stakes/*,
|
|
88
|
+
* assets,token-flows} so the AUP `direction-pill` formatter can compute
|
|
89
|
+
* IN/OUT/SELF without each blocklet reaching for ctx.params.
|
|
90
|
+
*
|
|
91
|
+
* Trust boundary: the address comes from the route param (set by the AFS
|
|
92
|
+
* core router from the URL path), NOT from ctx.options (which is
|
|
93
|
+
* caller-controlled). The object spread ordering also guarantees a
|
|
94
|
+
* caller-supplied `content._currentAccount` cannot override us.
|
|
95
|
+
*/
|
|
96
|
+
private withCurrentAccount;
|
|
97
|
+
/**
|
|
98
|
+
* Phase 0.6 polish — single source of truth for tx content enrichment.
|
|
99
|
+
*
|
|
100
|
+
* Both `buildTxEntries` (list path) and `readTransaction` (detail path)
|
|
101
|
+
* call this so columns and key-value-list rows that bind to the same
|
|
102
|
+
* keys (e.g. `_gasFeeRaw`) render identically. Detail-only fields like
|
|
103
|
+
* `_itxJson` / `_receiverPath` / `_prevHash` stay in `readTransaction`
|
|
104
|
+
* so the list payload doesn't grow with rendering metadata.
|
|
105
|
+
*/
|
|
106
|
+
private enrichTxContent;
|
|
107
|
+
private buildTxEntries;
|
|
108
|
+
private buildBlockEntries;
|
|
109
|
+
readRoot(_ctx: RouteContext): Promise<AFSEntry | undefined>;
|
|
110
|
+
/**
|
|
111
|
+
* Phase 0.5 B.1 — chainInfo.totalTxs is a string from GraphQL ("5000").
|
|
112
|
+
* Same regex + BigInt clamp story as `computeAccountCount`: reject anything
|
|
113
|
+
* that isn't a base-10 unsigned integer to keep "1e308" and negatives out
|
|
114
|
+
* of the renderer, then clamp to MAX_SAFE_INTEGER so JSON serialization
|
|
115
|
+
* stays lossless.
|
|
116
|
+
*/
|
|
117
|
+
private parseSafeCount;
|
|
118
|
+
/**
|
|
119
|
+
* Phase 0.2 A.10 — Convert the last `numDeclareTxs` entry (a string from
|
|
120
|
+
* GraphQL) to a JS number, with explicit BigInt-then-bounds guard so a
|
|
121
|
+
* malicious / corrupt payload like "1e308" or "9".repeat(40) cannot wrap
|
|
122
|
+
* around to Infinity or lose precision via Number() coercion.
|
|
123
|
+
*
|
|
124
|
+
* Returns 0 when the source is unavailable; callers can detect "no data"
|
|
125
|
+
* vs "0 declare txs" by checking forgeStats null upstream.
|
|
126
|
+
*/
|
|
127
|
+
private computeAccountCount;
|
|
128
|
+
/**
|
|
129
|
+
* Phase 1.1 — `/_microbar` aggregator powering the chain-explorer header
|
|
130
|
+
* micro-bar. The renderer can't fan out to multiple sources cheaply, so
|
|
131
|
+
* the provider produces a single object containing chain.height +
|
|
132
|
+
* sync flag + native-token price + 24h change.
|
|
133
|
+
*
|
|
134
|
+
* Price fetch is best-effort (Promise.allSettled): a slow upstream MUST
|
|
135
|
+
* NOT block chain navigation. When unavailable, tokens[i].price is null
|
|
136
|
+
* and tokens[i].stale is true so the renderer can show a dim "—".
|
|
137
|
+
*/
|
|
138
|
+
readMicrobar(ctx: RouteContext): Promise<AFSEntry | undefined>;
|
|
139
|
+
readConfig(_ctx: RouteContext): Promise<AFSEntry | undefined>;
|
|
140
|
+
listValidators(_ctx: RouteContext): Promise<AFSListResult>;
|
|
141
|
+
readValidator(ctx: RouteContext<{
|
|
142
|
+
address: string;
|
|
143
|
+
}>): Promise<AFSEntry | undefined>;
|
|
144
|
+
listTransactions(ctx: RouteContext): Promise<AFSListResult>;
|
|
145
|
+
readTransaction(ctx: RouteContext<{
|
|
146
|
+
hash: string;
|
|
147
|
+
}>): Promise<AFSEntry | undefined>;
|
|
148
|
+
readTxReceiptsDir(ctx: RouteContext<{
|
|
149
|
+
hash: string;
|
|
150
|
+
}>): Promise<AFSEntry | undefined>;
|
|
151
|
+
listTxReceipts(ctx: RouteContext<{
|
|
152
|
+
hash: string;
|
|
153
|
+
}>): Promise<AFSListResult>;
|
|
154
|
+
readTxReceiptEntry(ctx: RouteContext<{
|
|
155
|
+
hash: string;
|
|
156
|
+
idx: string;
|
|
157
|
+
}>): Promise<AFSEntry | undefined>;
|
|
158
|
+
/**
|
|
159
|
+
* Phase 1.6 — find adjacent tx hashes by querying a tight time window
|
|
160
|
+
* around the current tx and selecting the immediate neighbours after
|
|
161
|
+
* sorting by time desc. Returns nulls for missing neighbours (newest /
|
|
162
|
+
* oldest tx). Failure of listTransactions must NOT propagate — the
|
|
163
|
+
* detail page still needs to render even when the indexer is down.
|
|
164
|
+
*/
|
|
165
|
+
private findTxNeighbours;
|
|
166
|
+
private _buildReceiptEntries;
|
|
167
|
+
listAccounts(ctx: RouteContext): Promise<AFSListResult>;
|
|
168
|
+
readAccount(ctx: RouteContext<{
|
|
169
|
+
address: string;
|
|
170
|
+
}>): Promise<AFSEntry | undefined>;
|
|
171
|
+
listAccountChildren(ctx: RouteContext<{
|
|
172
|
+
address: string;
|
|
173
|
+
}>): Promise<AFSListResult>;
|
|
174
|
+
readAccountTokensDir(ctx: RouteContext<{
|
|
175
|
+
addr: string;
|
|
176
|
+
}>): Promise<AFSEntry | undefined>;
|
|
177
|
+
readAccountAssetsDir(ctx: RouteContext<{
|
|
178
|
+
addr: string;
|
|
179
|
+
}>): Promise<AFSEntry | undefined>;
|
|
180
|
+
readAccountTxDir(ctx: RouteContext<{
|
|
181
|
+
addr: string;
|
|
182
|
+
}>): Promise<AFSEntry | undefined>;
|
|
183
|
+
listAccountTokens(ctx: RouteContext<{
|
|
184
|
+
addr: string;
|
|
185
|
+
}>): Promise<AFSListResult>;
|
|
186
|
+
metaAccountTokens(ctx: RouteContext<{
|
|
187
|
+
addr: string;
|
|
188
|
+
}>): Promise<AFSEntry | undefined>;
|
|
189
|
+
readAccountToken(ctx: RouteContext<{
|
|
190
|
+
addr: string;
|
|
191
|
+
token: string;
|
|
192
|
+
}>): Promise<AFSEntry | undefined>;
|
|
193
|
+
listAccountAssets(ctx: RouteContext<{
|
|
194
|
+
addr: string;
|
|
195
|
+
}>): Promise<AFSListResult>;
|
|
196
|
+
listAccountTransactions(ctx: RouteContext<{
|
|
197
|
+
addr: string;
|
|
198
|
+
}>): Promise<AFSListResult>;
|
|
199
|
+
readAccountStakesDir(ctx: RouteContext<{
|
|
200
|
+
addr: string;
|
|
201
|
+
}>): Promise<AFSEntry | undefined>;
|
|
202
|
+
listAccountStakes(ctx: RouteContext<{
|
|
203
|
+
addr: string;
|
|
204
|
+
}>): Promise<AFSListResult>;
|
|
205
|
+
readAccountSentStakesDir(ctx: RouteContext<{
|
|
206
|
+
addr: string;
|
|
207
|
+
}>): Promise<AFSEntry | undefined>;
|
|
208
|
+
listAccountSentStakes(ctx: RouteContext<{
|
|
209
|
+
addr: string;
|
|
210
|
+
}>): Promise<AFSListResult>;
|
|
211
|
+
readAccountReceivedStakesDir(ctx: RouteContext<{
|
|
212
|
+
addr: string;
|
|
213
|
+
}>): Promise<AFSEntry | undefined>;
|
|
214
|
+
listAccountReceivedStakes(ctx: RouteContext<{
|
|
215
|
+
addr: string;
|
|
216
|
+
}>): Promise<AFSListResult>;
|
|
217
|
+
readAccountMigrationDir(ctx: RouteContext<{
|
|
218
|
+
addr: string;
|
|
219
|
+
}>): Promise<AFSEntry | undefined>;
|
|
220
|
+
listAccountMigration(ctx: RouteContext<{
|
|
221
|
+
addr: string;
|
|
222
|
+
}>): Promise<AFSListResult>;
|
|
223
|
+
readAccountTokenFlowsDir(ctx: RouteContext<{
|
|
224
|
+
addr: string;
|
|
225
|
+
}>): Promise<AFSEntry | undefined>;
|
|
226
|
+
listAccountTokenFlows(ctx: RouteContext<{
|
|
227
|
+
addr: string;
|
|
228
|
+
}>): Promise<AFSListResult>;
|
|
229
|
+
readAccountDelegatesDir(ctx: RouteContext<{
|
|
230
|
+
addr: string;
|
|
231
|
+
}>): Promise<AFSEntry | undefined>;
|
|
232
|
+
listAccountDelegates(ctx: RouteContext<{
|
|
233
|
+
addr: string;
|
|
234
|
+
}>): Promise<AFSListResult>;
|
|
235
|
+
listTokens(ctx: RouteContext): Promise<AFSListResult>;
|
|
236
|
+
readToken(ctx: RouteContext<{
|
|
237
|
+
address: string;
|
|
238
|
+
}>): Promise<AFSEntry | undefined>;
|
|
239
|
+
listTokenChildren(ctx: RouteContext<{
|
|
240
|
+
address: string;
|
|
241
|
+
}>): Promise<AFSListResult>;
|
|
242
|
+
/**
|
|
243
|
+
* Phase 0.2 A.7 — Pull `{price, change24h}` out of the token-data
|
|
244
|
+
* upstream shape into top-level fields. The upstream API returns a
|
|
245
|
+
* paginated `{ symbol, data: [{ price: {USD, CNY}, percent_change_24h:
|
|
246
|
+
* {USD, CNY}, ... }] }`. AUP nodes binding `${content.price}` should
|
|
247
|
+
* just see a number — they shouldn't have to navigate the upstream
|
|
248
|
+
* pagination wrapper.
|
|
249
|
+
*
|
|
250
|
+
* Also surfaces `currency: "USD"` so dark-launch testing or future
|
|
251
|
+
* locale work can switch to other currencies. Falls back to the raw
|
|
252
|
+
* shape (with the wrapper) when the upstream returns something
|
|
253
|
+
* unexpected — partial structure is better than throwing on a price
|
|
254
|
+
* lookup that the UI uses opportunistically.
|
|
255
|
+
*/
|
|
256
|
+
private normalizePricePayload;
|
|
257
|
+
/**
|
|
258
|
+
* Phase 0.2 A.7 — Token price endpoint with 60s in-memory cache + stale
|
|
259
|
+
* fallback on upstream failure. Backed by token-data.arcblock.io which
|
|
260
|
+
* accepts only symbols (not addresses), so we resolve the token's symbol
|
|
261
|
+
* via getTokenState first.
|
|
262
|
+
*
|
|
263
|
+
* Cache lifecycle:
|
|
264
|
+
* - Fresh hit (within TTL) → return cached value immediately
|
|
265
|
+
* - Miss → fetch upstream → cache → return
|
|
266
|
+
* - Fetch failure WITH cached value → return cached + { stale: true, error }
|
|
267
|
+
* - Fetch failure WITHOUT cached value → throw AFSError
|
|
268
|
+
*/
|
|
269
|
+
readTokenPrice(ctx: RouteContext<{
|
|
270
|
+
addr: string;
|
|
271
|
+
}>): Promise<AFSEntry | undefined>;
|
|
272
|
+
readTokenHoldersDir(ctx: RouteContext<{
|
|
273
|
+
addr: string;
|
|
274
|
+
}>): Promise<AFSEntry | undefined>;
|
|
275
|
+
listTokenHolders(ctx: RouteContext<{
|
|
276
|
+
addr: string;
|
|
277
|
+
}>): Promise<AFSListResult>;
|
|
278
|
+
readTokenTxDir(ctx: RouteContext<{
|
|
279
|
+
addr: string;
|
|
280
|
+
}>): Promise<AFSEntry | undefined>;
|
|
281
|
+
listTokenTransactions(ctx: RouteContext<{
|
|
282
|
+
addr: string;
|
|
283
|
+
}>): Promise<AFSListResult>;
|
|
284
|
+
listAssets(ctx: RouteContext): Promise<AFSListResult>;
|
|
285
|
+
readAsset(ctx: RouteContext<{
|
|
286
|
+
address: string;
|
|
287
|
+
}>): Promise<AFSEntry | undefined>;
|
|
288
|
+
listAssetChildren(ctx: RouteContext<{
|
|
289
|
+
address: string;
|
|
290
|
+
}>): Promise<AFSListResult>;
|
|
291
|
+
readAssetTxDir(ctx: RouteContext<{
|
|
292
|
+
addr: string;
|
|
293
|
+
}>): Promise<AFSEntry | undefined>;
|
|
294
|
+
listAssetTransactions(ctx: RouteContext<{
|
|
295
|
+
addr: string;
|
|
296
|
+
}>): Promise<AFSListResult>;
|
|
297
|
+
readAssetStakesDir(ctx: RouteContext<{
|
|
298
|
+
addr: string;
|
|
299
|
+
}>): Promise<AFSEntry | undefined>;
|
|
300
|
+
listAssetStakes(ctx: RouteContext<{
|
|
301
|
+
addr: string;
|
|
302
|
+
}>): Promise<AFSListResult>;
|
|
303
|
+
listFactories(ctx: RouteContext): Promise<AFSListResult>;
|
|
304
|
+
readFactory(ctx: RouteContext<{
|
|
305
|
+
address: string;
|
|
306
|
+
}>): Promise<AFSEntry | undefined>;
|
|
307
|
+
listFactoryChildren(ctx: RouteContext<{
|
|
308
|
+
address: string;
|
|
309
|
+
}>): Promise<AFSListResult>;
|
|
310
|
+
readFactoryAssetsDir(ctx: RouteContext<{
|
|
311
|
+
addr: string;
|
|
312
|
+
}>): Promise<AFSEntry | undefined>;
|
|
313
|
+
listFactoryAssets(ctx: RouteContext<{
|
|
314
|
+
addr: string;
|
|
315
|
+
}>): Promise<AFSListResult>;
|
|
316
|
+
readFactoryTxDir(ctx: RouteContext<{
|
|
317
|
+
addr: string;
|
|
318
|
+
}>): Promise<AFSEntry | undefined>;
|
|
319
|
+
listFactoryTransactions(ctx: RouteContext<{
|
|
320
|
+
addr: string;
|
|
321
|
+
}>): Promise<AFSListResult>;
|
|
322
|
+
listStakes(ctx: RouteContext): Promise<AFSListResult>;
|
|
323
|
+
readStake(ctx: RouteContext<{
|
|
324
|
+
address: string;
|
|
325
|
+
}>): Promise<AFSEntry | undefined>;
|
|
326
|
+
listStakeChildren(ctx: RouteContext<{
|
|
327
|
+
address: string;
|
|
328
|
+
}>): Promise<AFSListResult>;
|
|
329
|
+
readStakeTxDir(ctx: RouteContext<{
|
|
330
|
+
addr: string;
|
|
331
|
+
}>): Promise<AFSEntry | undefined>;
|
|
332
|
+
listStakeTransactions(ctx: RouteContext<{
|
|
333
|
+
addr: string;
|
|
334
|
+
}>): Promise<AFSListResult>;
|
|
335
|
+
readStakeTokensDir(ctx: RouteContext<{
|
|
336
|
+
addr: string;
|
|
337
|
+
}>): Promise<AFSEntry | undefined>;
|
|
338
|
+
listStakeTokens(ctx: RouteContext<{
|
|
339
|
+
addr: string;
|
|
340
|
+
}>): Promise<AFSListResult>;
|
|
341
|
+
readStakeAssetsDir(ctx: RouteContext<{
|
|
342
|
+
addr: string;
|
|
343
|
+
}>): Promise<AFSEntry | undefined>;
|
|
344
|
+
listStakeAssets(ctx: RouteContext<{
|
|
345
|
+
addr: string;
|
|
346
|
+
}>): Promise<AFSListResult>;
|
|
347
|
+
listBridges(ctx: RouteContext): Promise<AFSListResult>;
|
|
348
|
+
readBridge(ctx: RouteContext<{
|
|
349
|
+
address: string;
|
|
350
|
+
}>): Promise<AFSEntry | undefined>;
|
|
351
|
+
listBridgeChildren(ctx: RouteContext<{
|
|
352
|
+
address: string;
|
|
353
|
+
}>): Promise<AFSListResult>;
|
|
354
|
+
readBridgeTxDir(ctx: RouteContext<{
|
|
355
|
+
addr: string;
|
|
356
|
+
}>): Promise<AFSEntry | undefined>;
|
|
357
|
+
listBridgeTransactions(ctx: RouteContext<{
|
|
358
|
+
addr: string;
|
|
359
|
+
}>): Promise<AFSListResult>;
|
|
360
|
+
readBridgeStakeDir(ctx: RouteContext<{
|
|
361
|
+
addr: string;
|
|
362
|
+
}>): Promise<AFSEntry | undefined>;
|
|
363
|
+
listBridgeStakes(ctx: RouteContext<{
|
|
364
|
+
addr: string;
|
|
365
|
+
}>): Promise<AFSListResult>;
|
|
366
|
+
readBridgeDepositsDir(ctx: RouteContext<{
|
|
367
|
+
addr: string;
|
|
368
|
+
}>): Promise<AFSEntry | undefined>;
|
|
369
|
+
listBridgeDeposits(ctx: RouteContext<{
|
|
370
|
+
addr: string;
|
|
371
|
+
}>): Promise<AFSListResult>;
|
|
372
|
+
readBridgeWithdrawalsDir(ctx: RouteContext<{
|
|
373
|
+
addr: string;
|
|
374
|
+
}>): Promise<AFSEntry | undefined>;
|
|
375
|
+
listBridgeWithdrawals(ctx: RouteContext<{
|
|
376
|
+
addr: string;
|
|
377
|
+
}>): Promise<AFSListResult>;
|
|
378
|
+
readBridgeGovernanceDir(ctx: RouteContext<{
|
|
379
|
+
addr: string;
|
|
380
|
+
}>): Promise<AFSEntry | undefined>;
|
|
381
|
+
listBridgeGovernance(ctx: RouteContext<{
|
|
382
|
+
addr: string;
|
|
383
|
+
}>): Promise<AFSListResult>;
|
|
384
|
+
readBridgeSlashesDir(ctx: RouteContext<{
|
|
385
|
+
addr: string;
|
|
386
|
+
}>): Promise<AFSEntry | undefined>;
|
|
387
|
+
listBridgeSlashes(ctx: RouteContext<{
|
|
388
|
+
addr: string;
|
|
389
|
+
}>): Promise<AFSListResult>;
|
|
390
|
+
readBridgeNodesDir(ctx: RouteContext<{
|
|
391
|
+
addr: string;
|
|
392
|
+
}>): Promise<AFSEntry | undefined>;
|
|
393
|
+
listBridgeNodes(ctx: RouteContext<{
|
|
394
|
+
addr: string;
|
|
395
|
+
}>): Promise<AFSListResult>;
|
|
396
|
+
readBridgeBlocksDir(ctx: RouteContext<{
|
|
397
|
+
addr: string;
|
|
398
|
+
}>): Promise<AFSEntry | undefined>;
|
|
399
|
+
metaBridgeBlocks(ctx: RouteContext<{
|
|
400
|
+
addr: string;
|
|
401
|
+
}>): Promise<AFSEntry | undefined>;
|
|
402
|
+
listBridgeBlocks(ctx: RouteContext<{
|
|
403
|
+
addr: string;
|
|
404
|
+
}>): Promise<AFSListResult>;
|
|
405
|
+
readBridgeBlock(ctx: RouteContext<{
|
|
406
|
+
addr: string;
|
|
407
|
+
hash: string;
|
|
408
|
+
}>): Promise<AFSEntry | undefined>;
|
|
409
|
+
listDelegates(ctx: RouteContext): Promise<AFSListResult>;
|
|
410
|
+
readDelegate(ctx: RouteContext<{
|
|
411
|
+
address: string;
|
|
412
|
+
}>): Promise<AFSEntry | undefined>;
|
|
413
|
+
listDelegateChildren(ctx: RouteContext<{
|
|
414
|
+
address: string;
|
|
415
|
+
}>): Promise<AFSListResult>;
|
|
416
|
+
readDelegateTxDir(ctx: RouteContext<{
|
|
417
|
+
addr: string;
|
|
418
|
+
}>): Promise<AFSEntry | undefined>;
|
|
419
|
+
listDelegateTransactions(ctx: RouteContext<{
|
|
420
|
+
addr: string;
|
|
421
|
+
}>): Promise<AFSListResult>;
|
|
422
|
+
readDelegatePermissionsDir(ctx: RouteContext<{
|
|
423
|
+
addr: string;
|
|
424
|
+
}>): Promise<AFSEntry | undefined>;
|
|
425
|
+
listDelegatePermissions(ctx: RouteContext<{
|
|
426
|
+
addr: string;
|
|
427
|
+
}>): Promise<AFSListResult>;
|
|
428
|
+
searchHandler(ctx: RouteContext<{
|
|
429
|
+
path?: string;
|
|
430
|
+
}>, query: string, options?: AFSSearchOptions): Promise<{
|
|
431
|
+
data: AFSEntry[];
|
|
432
|
+
message?: string;
|
|
433
|
+
}>;
|
|
434
|
+
explainHandler(ctx: RouteContext<{
|
|
435
|
+
path?: string;
|
|
436
|
+
}>): Promise<AFSExplainResult>;
|
|
437
|
+
readCollection(ctx: RouteContext<{
|
|
438
|
+
collection: string;
|
|
439
|
+
}>): Promise<AFSEntry | undefined>;
|
|
440
|
+
listCatchAll(ctx: RouteContext<{
|
|
441
|
+
path?: string;
|
|
442
|
+
}>): Promise<AFSListResult>;
|
|
443
|
+
readCapabilities(_ctx: RouteContext): Promise<AFSEntry | undefined>;
|
|
444
|
+
statHandler(ctx: RouteContext<{
|
|
445
|
+
path?: string;
|
|
446
|
+
}>): Promise<AFSStatResult>;
|
|
447
|
+
metaHandler(ctx: RouteContext<{
|
|
448
|
+
path?: string;
|
|
449
|
+
}>): Promise<AFSEntry | undefined>;
|
|
450
|
+
}
|
|
451
|
+
//#endregion
|
|
452
|
+
export { AFSOCAP };
|
|
453
|
+
//# sourceMappingURL=provider.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.d.cts","names":[],"sources":["../src/provider.ts"],"mappings":"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"}
|