Silence Laboratories Silence Laboratories Wallet Provider Go SDK All versions Repository ↗

package wp_responses

import "github.com/silence-laboratories/wallet-provider-go-sdk/networkclient/wp_responses"

Index

Types

type AddEphKeyResponse

type AddEphKeyResponse struct {
	KeyID  string `json:"keyId"`
	Status string `json:"status"`
}

type GetPolicyResponse

type GetPolicyResponse struct {
	Policy             json.RawMessage `json:"policy"`
	AuthorizationEpoch uint64          `json:"authorization_epoch"`
}

GetPolicyResponse contains the stored policy JSON (or null) and the current authorization epoch, which survives deletion of the policy.

type IntegrationCatalog

type IntegrationCatalog struct {
	Integrations []IntegrationCatalogEntry `json:"integrations"`
}

IntegrationCatalog lists the deployment's external-check integrations.

type IntegrationCatalogEntry

type IntegrationCatalogEntry struct {
	IntegrationID string                  `json:"integration_id"`
	Operations    []OperationCatalogEntry `json:"operations"`
}

type KeyshareIdentifier

type KeyshareIdentifier struct {
	Alg types.SignatureAlgorithm `json:"signAlg"`
	ID  string                   `json:"keyId"`
	// Public key is hex-encoded string format. The encoding depends on the signature algorithm:
	// - `secp256k1` (ECDSA): SEC1. Uncompressed `0x04 || X || Y`; compressed `0x02/0x03 || X` (prefix by Y parity).
	// - `ed25519` (EdDSA): RFC 8032 32-byte compressed Edwards.
	PK string `json:"publicKey"`
	// Threshold is the number of shares needed to sign.
	Threshold uint8 `json:"threshold"`
	// TotalParties is the number of parties holding shares.
	TotalParties uint8 `json:"total_parties"`
}
func (*KeyshareIdentifier) String
func (k *KeyshareIdentifier) String() string

type OperationCatalogEntry

type OperationCatalogEntry struct {
	Operation         string            `json:"operation"`
	Description       string            `json:"description"`
	PayloadProjection PayloadProjection `json:"payload_projection"`
}

type PayloadProjection

type PayloadProjection struct {
	Transaction *[]string `json:"transaction,omitzero"`
	Context     *[]string `json:"context,omitzero"`
}

PayloadProjection contains RFC 6901 JSON Pointers selecting fields that may be sent to an integration. Nil omits a section; an empty slice includes it.

type PolicyChangeResponse

type PolicyChangeResponse struct {
	Status             string `json:"status"`
	AuthorizationEpoch uint64 `json:"authorization_epoch"`
}

PolicyChangeResponse reports the authorization epoch after an update/delete.

type RevokeEphKeyResponse

type RevokeEphKeyResponse struct {
	Status string `json:"status"`
}

RevokeEphKeyResponse reports the status of an ephemeral-key revocation.

type SigngenResponse

type SigngenResponse struct {
	// For ECDSA: Hexstring of length 128 bytes, in a form: r || s. The r and s are 64 bytes long.
	// For EdDSA: RFC 8032 64-byte signature.
	Sign string `json:"sign"`
	// Unique ID of the transaction.
	TransactionID string `json:"transactionId"`
	// For ECDSA: Recovery id, either 0, or 1
	// For EdDSA: unused
	Recid *uint8 `json:"recid,omitempty"`
}
func (*SigngenResponse) String
func (s *SigngenResponse) String() string