forked from iotaledger/goshimmer
-
Notifications
You must be signed in to change notification settings - Fork 0
/
connector.go
21 lines (18 loc) · 1 KB
/
connector.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package wallet
import (
"github.com/izuc/zipp.foundation/core/types/confirmation"
"github.com/izuc/zipp/client/wallet/packages/address"
"github.com/izuc/zipp/packages/core/ledger/utxo"
"github.com/izuc/zipp/packages/core/ledger/vm/devnetvm"
"github.com/izuc/zipp/packages/core/mana"
)
// Connector represents an interface that defines how the wallet interacts with the network. A wallet can either be used
// locally on a server or it can connect remotely using the web API.
type Connector interface {
UnspentOutputs(addresses ...address.Address) (unspentOutputs OutputsByAddressAndOutputID, err error)
SendTransaction(transaction *devnetvm.Transaction) (err error)
RequestFaucetFunds(address address.Address, powTarget int) (err error)
GetAllowedPledgeIDs() (pledgeIDMap map[mana.Type][]string, err error)
GetTransactionConfirmationState(txID utxo.TransactionID) (confirmationState confirmation.State, err error)
GetUnspentAliasOutput(address *devnetvm.AliasAddress) (output *devnetvm.AliasOutput, err error)
}