/
wallet.go
49 lines (38 loc) · 1.61 KB
/
wallet.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
// Copyright (c) 2023 Blockwatch Data Inc.
// Author: alex@blockwatch.cc
package wallet
import (
"context"
"blockwatch.cc/tzpro-go/internal/client"
)
type WalletAPI interface {
// Token API
ListTokenBalances(context.Context, Address, Query) ([]*TokenBalance, error)
ListTokenEvents(context.Context, Address, Query) ([]*TokenEvent, error)
// DEX API
ListDexEvents(context.Context, Address, Query) ([]*DexEvent, error)
ListDexPositions(context.Context, Address, Query) ([]*DexPosition, error)
ListDexTrades(context.Context, Address, Query) ([]*DexTrade, error)
// Farm API
ListFarmEvents(context.Context, Address, Query) ([]*FarmEvent, error)
ListFarmPositions(context.Context, Address, Query) ([]*FarmPosition, error)
// Lending API
ListLendingEvents(context.Context, Address, Query) ([]*LendingEvent, error)
ListLendingPositions(context.Context, Address, Query) ([]*LendingPosition, error)
// NFT API
ListNftEvents(context.Context, Address, Query) ([]*NftEvent, error)
ListNftPositions(context.Context, Address, Query) ([]*NftPosition, error)
ListNftTrades(context.Context, Address, Query) ([]*NftTrade, error)
// Identity API
ListDomains(context.Context, Address, Query) ([]*Domain, error)
ListDomainEvents(context.Context, Address, Query) ([]*DomainEvent, error)
GetProfile(context.Context, Address) (*Profile, error)
ListProfileEvents(context.Context, Address, Query) ([]*ProfileEvent, error)
ListProfileClaims(context.Context, Address, Query) ([]*ProfileClaim, error)
}
func NewWalletAPI(c *client.Client) WalletAPI {
return &walletClient{client: c}
}
type walletClient struct {
client *client.Client
}