Spade

Mini Shell

Directory:~$ /home/lmsyaran/www/joomla5/libraries/vendor/web-auth/webauthn-lib/src/
Upload File

[Home] [System Details] [Kill Me]
Current File:~$ /home/lmsyaran/www/joomla5/libraries/vendor/web-auth/webauthn-lib/src/PublicKeyCredential.php

<?php

declare(strict_types=1);

namespace Webauthn;

use const JSON_THROW_ON_ERROR;
use Stringable;

/**
 * @see https://www.w3.org/TR/webauthn/#iface-pkcredential
 */
class PublicKeyCredential extends Credential implements Stringable
{
    public function __construct(
        string $id,
        string $type,
        protected string $rawId,
        protected AuthenticatorResponse $response
    ) {
        parent::__construct($id, $type);
    }

    public function __toString(): string
    {
        return json_encode($this, JSON_THROW_ON_ERROR);
    }

    public function getRawId(): string
    {
        return $this->rawId;
    }

    public function getResponse(): AuthenticatorResponse
    {
        return $this->response;
    }

    /**
     * @param string[] $transport
     */
    public function getPublicKeyCredentialDescriptor(array $transport =
[]): PublicKeyCredentialDescriptor
    {
        return new PublicKeyCredentialDescriptor($this->getType(),
$this->getRawId(), $transport);
    }
}