Skip to content

Commit 073bed1

Browse files
committed
lib: add TaprootAssetsApi class
1 parent 7ca19ef commit 073bed1

File tree

3 files changed

+33
-1
lines changed

3 files changed

+33
-1
lines changed

lib/api/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,5 @@ export { default as LndApi } from './lnd';
22
export { default as LoopApi } from './loop';
33
export { default as PoolApi } from './pool';
44
export { default as FaradayApi } from './faraday';
5+
export { default as TaprootAssetsApi } from './tapd';
56
export { default as LitApi } from './lit';

lib/api/tapd.ts

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
import { serviceNames as sn } from '../types/proto/schema';
2+
import { AssetWallet } from '../types/proto/tapd/assetwalletrpc/assetwallet';
3+
import { Mint } from '../types/proto/tapd/mintrpc/mint';
4+
import { TaprootAssets } from '../types/proto/tapd/taprootassets';
5+
import { Universe } from '../types/proto/tapd/universerpc/universe';
6+
7+
/**
8+
* An API wrapper to communicate with the Taproot Assets node via GRPC
9+
*/
10+
class TaprootAssetsApi {
11+
taprootAssets: TaprootAssets;
12+
assetWallet: AssetWallet;
13+
mint: Mint;
14+
universe: Universe;
15+
16+
constructor(createRpc: Function, lnc: any) {
17+
this.taprootAssets = createRpc(sn.taprpc.TaprootAssets, lnc);
18+
this.mint = createRpc(sn.mintrpc.Mint, lnc);
19+
this.assetWallet = createRpc(sn.assetwalletrpc.AssetWallet, lnc);
20+
this.universe = createRpc(sn.universerpc.Universe, lnc);
21+
}
22+
}
23+
24+
export default TaprootAssetsApi;

lib/index.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,11 @@
11
export * from './types/proto';
22
export { camelKeysToSnake, isObject, snakeKeysToCamel } from './util/objects';
3-
export { LndApi, LoopApi, PoolApi, FaradayApi, LitApi } from './api';
3+
export {
4+
LndApi,
5+
LoopApi,
6+
PoolApi,
7+
FaradayApi,
8+
LitApi,
9+
TaprootAssetsApi
10+
} from './api';
411
export { subscriptionMethods } from './types/proto/schema';

0 commit comments

Comments
 (0)