stash/vendor/github.com/chromedp/cdproto/webauthn/webauthn.go

332 lines
11 KiB
Go

// Package webauthn provides the Chrome DevTools Protocol
// commands, types, and events for the WebAuthn domain.
//
// This domain allows configuring virtual authenticators to test the WebAuthn
// API.
//
// Generated by the cdproto-gen command.
package webauthn
// Code generated by cdproto-gen. DO NOT EDIT.
import (
"context"
"github.com/chromedp/cdproto/cdp"
)
// EnableParams enable the WebAuthn domain and start intercepting credential
// storage and retrieval with a virtual authenticator.
type EnableParams struct{}
// Enable enable the WebAuthn domain and start intercepting credential
// storage and retrieval with a virtual authenticator.
//
// See: https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn#method-enable
func Enable() *EnableParams {
return &EnableParams{}
}
// Do executes WebAuthn.enable against the provided context.
func (p *EnableParams) Do(ctx context.Context) (err error) {
return cdp.Execute(ctx, CommandEnable, nil, nil)
}
// DisableParams disable the WebAuthn domain.
type DisableParams struct{}
// Disable disable the WebAuthn domain.
//
// See: https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn#method-disable
func Disable() *DisableParams {
return &DisableParams{}
}
// Do executes WebAuthn.disable against the provided context.
func (p *DisableParams) Do(ctx context.Context) (err error) {
return cdp.Execute(ctx, CommandDisable, nil, nil)
}
// AddVirtualAuthenticatorParams creates and adds a virtual authenticator.
type AddVirtualAuthenticatorParams struct {
Options *VirtualAuthenticatorOptions `json:"options"`
}
// AddVirtualAuthenticator creates and adds a virtual authenticator.
//
// See: https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn#method-addVirtualAuthenticator
//
// parameters:
// options
func AddVirtualAuthenticator(options *VirtualAuthenticatorOptions) *AddVirtualAuthenticatorParams {
return &AddVirtualAuthenticatorParams{
Options: options,
}
}
// AddVirtualAuthenticatorReturns return values.
type AddVirtualAuthenticatorReturns struct {
AuthenticatorID AuthenticatorID `json:"authenticatorId,omitempty"`
}
// Do executes WebAuthn.addVirtualAuthenticator against the provided context.
//
// returns:
// authenticatorID
func (p *AddVirtualAuthenticatorParams) Do(ctx context.Context) (authenticatorID AuthenticatorID, err error) {
// execute
var res AddVirtualAuthenticatorReturns
err = cdp.Execute(ctx, CommandAddVirtualAuthenticator, p, &res)
if err != nil {
return "", err
}
return res.AuthenticatorID, nil
}
// RemoveVirtualAuthenticatorParams removes the given authenticator.
type RemoveVirtualAuthenticatorParams struct {
AuthenticatorID AuthenticatorID `json:"authenticatorId"`
}
// RemoveVirtualAuthenticator removes the given authenticator.
//
// See: https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn#method-removeVirtualAuthenticator
//
// parameters:
// authenticatorID
func RemoveVirtualAuthenticator(authenticatorID AuthenticatorID) *RemoveVirtualAuthenticatorParams {
return &RemoveVirtualAuthenticatorParams{
AuthenticatorID: authenticatorID,
}
}
// Do executes WebAuthn.removeVirtualAuthenticator against the provided context.
func (p *RemoveVirtualAuthenticatorParams) Do(ctx context.Context) (err error) {
return cdp.Execute(ctx, CommandRemoveVirtualAuthenticator, p, nil)
}
// AddCredentialParams adds the credential to the specified authenticator.
type AddCredentialParams struct {
AuthenticatorID AuthenticatorID `json:"authenticatorId"`
Credential *Credential `json:"credential"`
}
// AddCredential adds the credential to the specified authenticator.
//
// See: https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn#method-addCredential
//
// parameters:
// authenticatorID
// credential
func AddCredential(authenticatorID AuthenticatorID, credential *Credential) *AddCredentialParams {
return &AddCredentialParams{
AuthenticatorID: authenticatorID,
Credential: credential,
}
}
// Do executes WebAuthn.addCredential against the provided context.
func (p *AddCredentialParams) Do(ctx context.Context) (err error) {
return cdp.Execute(ctx, CommandAddCredential, p, nil)
}
// GetCredentialParams returns a single credential stored in the given
// virtual authenticator that matches the credential ID.
type GetCredentialParams struct {
AuthenticatorID AuthenticatorID `json:"authenticatorId"`
CredentialID string `json:"credentialId"`
}
// GetCredential returns a single credential stored in the given virtual
// authenticator that matches the credential ID.
//
// See: https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn#method-getCredential
//
// parameters:
// authenticatorID
// credentialID
func GetCredential(authenticatorID AuthenticatorID, credentialID string) *GetCredentialParams {
return &GetCredentialParams{
AuthenticatorID: authenticatorID,
CredentialID: credentialID,
}
}
// GetCredentialReturns return values.
type GetCredentialReturns struct {
Credential *Credential `json:"credential,omitempty"`
}
// Do executes WebAuthn.getCredential against the provided context.
//
// returns:
// credential
func (p *GetCredentialParams) Do(ctx context.Context) (credential *Credential, err error) {
// execute
var res GetCredentialReturns
err = cdp.Execute(ctx, CommandGetCredential, p, &res)
if err != nil {
return nil, err
}
return res.Credential, nil
}
// GetCredentialsParams returns all the credentials stored in the given
// virtual authenticator.
type GetCredentialsParams struct {
AuthenticatorID AuthenticatorID `json:"authenticatorId"`
}
// GetCredentials returns all the credentials stored in the given virtual
// authenticator.
//
// See: https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn#method-getCredentials
//
// parameters:
// authenticatorID
func GetCredentials(authenticatorID AuthenticatorID) *GetCredentialsParams {
return &GetCredentialsParams{
AuthenticatorID: authenticatorID,
}
}
// GetCredentialsReturns return values.
type GetCredentialsReturns struct {
Credentials []*Credential `json:"credentials,omitempty"`
}
// Do executes WebAuthn.getCredentials against the provided context.
//
// returns:
// credentials
func (p *GetCredentialsParams) Do(ctx context.Context) (credentials []*Credential, err error) {
// execute
var res GetCredentialsReturns
err = cdp.Execute(ctx, CommandGetCredentials, p, &res)
if err != nil {
return nil, err
}
return res.Credentials, nil
}
// RemoveCredentialParams removes a credential from the authenticator.
type RemoveCredentialParams struct {
AuthenticatorID AuthenticatorID `json:"authenticatorId"`
CredentialID string `json:"credentialId"`
}
// RemoveCredential removes a credential from the authenticator.
//
// See: https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn#method-removeCredential
//
// parameters:
// authenticatorID
// credentialID
func RemoveCredential(authenticatorID AuthenticatorID, credentialID string) *RemoveCredentialParams {
return &RemoveCredentialParams{
AuthenticatorID: authenticatorID,
CredentialID: credentialID,
}
}
// Do executes WebAuthn.removeCredential against the provided context.
func (p *RemoveCredentialParams) Do(ctx context.Context) (err error) {
return cdp.Execute(ctx, CommandRemoveCredential, p, nil)
}
// ClearCredentialsParams clears all the credentials from the specified
// device.
type ClearCredentialsParams struct {
AuthenticatorID AuthenticatorID `json:"authenticatorId"`
}
// ClearCredentials clears all the credentials from the specified device.
//
// See: https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn#method-clearCredentials
//
// parameters:
// authenticatorID
func ClearCredentials(authenticatorID AuthenticatorID) *ClearCredentialsParams {
return &ClearCredentialsParams{
AuthenticatorID: authenticatorID,
}
}
// Do executes WebAuthn.clearCredentials against the provided context.
func (p *ClearCredentialsParams) Do(ctx context.Context) (err error) {
return cdp.Execute(ctx, CommandClearCredentials, p, nil)
}
// SetUserVerifiedParams sets whether User Verification succeeds or fails for
// an authenticator. The default is true.
type SetUserVerifiedParams struct {
AuthenticatorID AuthenticatorID `json:"authenticatorId"`
IsUserVerified bool `json:"isUserVerified"`
}
// SetUserVerified sets whether User Verification succeeds or fails for an
// authenticator. The default is true.
//
// See: https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn#method-setUserVerified
//
// parameters:
// authenticatorID
// isUserVerified
func SetUserVerified(authenticatorID AuthenticatorID, isUserVerified bool) *SetUserVerifiedParams {
return &SetUserVerifiedParams{
AuthenticatorID: authenticatorID,
IsUserVerified: isUserVerified,
}
}
// Do executes WebAuthn.setUserVerified against the provided context.
func (p *SetUserVerifiedParams) Do(ctx context.Context) (err error) {
return cdp.Execute(ctx, CommandSetUserVerified, p, nil)
}
// SetAutomaticPresenceSimulationParams sets whether tests of user presence
// will succeed immediately (if true) or fail to resolve (if false) for an
// authenticator. The default is true.
type SetAutomaticPresenceSimulationParams struct {
AuthenticatorID AuthenticatorID `json:"authenticatorId"`
Enabled bool `json:"enabled"`
}
// SetAutomaticPresenceSimulation sets whether tests of user presence will
// succeed immediately (if true) or fail to resolve (if false) for an
// authenticator. The default is true.
//
// See: https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn#method-setAutomaticPresenceSimulation
//
// parameters:
// authenticatorID
// enabled
func SetAutomaticPresenceSimulation(authenticatorID AuthenticatorID, enabled bool) *SetAutomaticPresenceSimulationParams {
return &SetAutomaticPresenceSimulationParams{
AuthenticatorID: authenticatorID,
Enabled: enabled,
}
}
// Do executes WebAuthn.setAutomaticPresenceSimulation against the provided context.
func (p *SetAutomaticPresenceSimulationParams) Do(ctx context.Context) (err error) {
return cdp.Execute(ctx, CommandSetAutomaticPresenceSimulation, p, nil)
}
// Command names.
const (
CommandEnable = "WebAuthn.enable"
CommandDisable = "WebAuthn.disable"
CommandAddVirtualAuthenticator = "WebAuthn.addVirtualAuthenticator"
CommandRemoveVirtualAuthenticator = "WebAuthn.removeVirtualAuthenticator"
CommandAddCredential = "WebAuthn.addCredential"
CommandGetCredential = "WebAuthn.getCredential"
CommandGetCredentials = "WebAuthn.getCredentials"
CommandRemoveCredential = "WebAuthn.removeCredential"
CommandClearCredentials = "WebAuthn.clearCredentials"
CommandSetUserVerified = "WebAuthn.setUserVerified"
CommandSetAutomaticPresenceSimulation = "WebAuthn.setAutomaticPresenceSimulation"
)