client

package
v1.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 22, 2026 License: Apache-2.0 Imports: 32 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func SatisfiesRequestedAttributes

func SatisfiesRequestedAttributes(given, requested []clientmodels.Attribute) (bool, []string)

SatisfiesRequestedAttributes checks that `given` contains everything needed to satisfy `requested`. Returns ok + list of issues with paths (e.g. "address.street", "roles[2]").

Types

type Client

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

func New

func New(
	storagePath string,
	irmaConfigurationPath string,
	eudiAppDataPath string,
	handler irmaclient.ClientHandler,
	sessionHandler clientmodels.SessionHandler,
	signer irmaclient.Signer,
	aesKey [32]byte,
) (*Client, error)

func (*Client) Close

func (client *Client) Close() error

func (*Client) DeleteKeyshareTokens

func (client *Client) DeleteKeyshareTokens()

func (*Client) EnrolledSchemeManagers

func (client *Client) EnrolledSchemeManagers() []irma.SchemeManagerIdentifier

func (*Client) GetCredentialStore

func (client *Client) GetCredentialStore() ([]*clientmodels.CredentialStoreItem, error)

func (*Client) GetCredentials

func (client *Client) GetCredentials() ([]*clientmodels.Credential, error)

func (*Client) GetEudiConfiguration

func (client *Client) GetEudiConfiguration() *eudi.Configuration

func (*Client) GetIrmaConfiguration

func (client *Client) GetIrmaConfiguration() *irma.Configuration

func (*Client) GetPreferences

func (client *Client) GetPreferences() clientsettings.Preferences

func (*Client) HandleUserInteraction

func (client *Client) HandleUserInteraction(userInteraction clientmodels.SessionUserInteraction) error

func (*Client) InitJobs

func (client *Client) InitJobs(eudiRevocationListUpdateInterval time.Duration)

func (*Client) InstallScheme

func (client *Client) InstallScheme(url string, publickey []byte) error

func (*Client) KeyshareChangePin

func (client *Client) KeyshareChangePin(oldPin, newPin string)

func (*Client) KeyshareEnroll

func (client *Client) KeyshareEnroll(manager irma.SchemeManagerIdentifier, email *string, pin string, lang string)

func (*Client) KeyshareVerifyPin

func (client *Client) KeyshareVerifyPin(
	pin string,
	schemeid irma.SchemeManagerIdentifier,
) (success bool, triesRemaing int, blockedSecs int, err error)

func (*Client) LoadLogsBefore

func (client *Client) LoadLogsBefore(before time.Time, max int) ([]clientmodels.LogInfo, error)

func (*Client) LoadNewestLogs

func (client *Client) LoadNewestLogs(max int) ([]clientmodels.LogInfo, error)

func (*Client) NewSession

func (client *Client) NewSession(id int, sessionrequest string)

NewSession starts a new session, using a caller-supplied id so that the mobile UI can mount its session screen synchronously without waiting for the first state event.

func (*Client) RemoveCredentialsByHash

func (client *Client) RemoveCredentialsByHash(hashByFormat map[clientmodels.CredentialFormat]string) error

func (*Client) RemoveRequestorScheme

func (client *Client) RemoveRequestorScheme(id irma.RequestorSchemeIdentifier) error

func (*Client) RemoveScheme

func (client *Client) RemoveScheme(id irma.SchemeManagerIdentifier) error

func (*Client) RemoveStorage

func (client *Client) RemoveStorage() error

func (*Client) SetPreferences

func (client *Client) SetPreferences(prefs clientsettings.Preferences)

func (*Client) UnenrolledSchemeManagers

func (client *Client) UnenrolledSchemeManagers() []irma.SchemeManagerIdentifier

func (*Client) UpdateSchemes

func (client *Client) UpdateSchemes()

type SessionRequestData

type SessionRequestData struct {
	irma.Qr
	Protocol               clientmodels.Protocol `json:"protocol,omitempty"`
	ContinueOnSecondDevice bool                  `json:"continue_on_second_device"`
	// OpenID4VCIRedirectUri is the OAuth `redirect_uri` to use for this
	// OpenID4VCI session. The wallet derives it from the host of the inbound
	// universal link (production vs staging). Required when Protocol is
	// OpenID4VCI; ignored otherwise.
	OpenID4VCIRedirectUri string `json:"openid4vci_redirect_uri,omitempty"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL