📖 Package Overview

Package walletprovidergosdk provides a client SDK for interacting with the Silence Laboratories Wallet Provider Network.

Functions

func NewNetworkClient

func NewNetworkClient()

func NewNetworkClientWithChalResp

func NewNetworkClientWithChalResp()

func NewRequestConfig

func NewRequestConfig()

func NewSignRequestBuilder

func NewSignRequestBuilder()

Types

type ApiVersion

type ApiVersion string

type ChallengeResponseExchanger

type ChallengeResponseExchanger interface {
	Next() (string, error) // Returns (message, error)
	Send(msg string) error
	RequestUserSignatures(finalChallenge string) (string, error) // Returns user signatures
}

type NetworkClient

type NetworkClient struct {
	// contains filtered or unexported fields
}

type NetworkClientConfig

type NetworkClientConfig struct {
	// APIKey is the API key used for authentication with the network nodes.
	APIKey string
	// NetworkNodes is the list of network nodes to connect to.
	NetworkNodes []networkclient.NetworkNode
	// SetupSK is the setup signing key used for authentication with the network nodes.
	SetupSK *setup_sk.WpSigningKey
}

type NetworkClientWithChalResp

type NetworkClientWithChalResp struct {
	// contains filtered or unexported fields
}

type NetworkConn

type NetworkConn struct {
	// contains filtered or unexported fields
}

type NodeEndpoint

type NodeEndpoint struct {
	Endpoint url.URL
	// contains filtered or unexported fields
}

type RRLoadBalancer

type RRLoadBalancer struct {
	// contains filtered or unexported fields
}

type RequestConfig

type RequestConfig struct {
	// Version is the API version (current supported: "v1", "v2").
	Version ApiVersion
	// RequestID is a unique identifier for the request.
	RequestID string
}

type SignRequestBuilder

type SignRequestBuilder struct {
	// contains filtered or unexported fields
}

type SignRequestType

type SignRequestType string

type Slug

type Slug string

type Transaction

type Transaction struct {
	SigningMessage string          `json:"signingMessage"`
	RequestType    SignRequestType `json:"requestType"`
}