<?php

/*
 * This file is part of the AuthStack project.
 *
 * (c) Buckhill Ltd <development@buckhill.co.uk>
 *
 * This source file is subject to the Buckhill license that is bundled
 * with this source code in the file LICENSE.
 */

namespace AuthStack\TwoFactor\Verifier;

interface VerifierInterface
{
    /**
     * VerifierInterface constructor.
     * @param array $keyMetadata
     */
    public function __construct(array $keyMetadata);

    /**
     * @param $otp
     * @return bool
     */
    public function verify($otp);

    /**
     * @return array
     */
    public function getResult();

    /**
     * @return array
     */
    public function getErrors();
}