%PDF- %PDF-
Direktori : /home/graphicd/public_html/vebto/vendor/kreait/firebase-php/src/Firebase/Contract/ |
Current File : /home/graphicd/public_html/vebto/vendor/kreait/firebase-php/src/Firebase/Contract/Auth.php |
<?php declare(strict_types=1); namespace Kreait\Firebase\Contract; use Firebase\Auth\Token\Exception\ExpiredToken; use Firebase\Auth\Token\Exception\InvalidSignature; use Firebase\Auth\Token\Exception\InvalidToken; use Firebase\Auth\Token\Exception\IssuedInTheFuture; use Firebase\Auth\Token\Exception\UnknownKey; use Kreait\Firebase\Auth\ActionCodeSettings; use Kreait\Firebase\Auth\CreateActionLink\FailedToCreateActionLink; use Kreait\Firebase\Auth\SendActionLink\FailedToSendActionLink; use Kreait\Firebase\Auth\SignIn\FailedToSignIn; use Kreait\Firebase\Auth\SignInResult; use Kreait\Firebase\Auth\UserRecord; use Kreait\Firebase\Exception; use Kreait\Firebase\Exception\Auth\ExpiredOobCode; use Kreait\Firebase\Exception\Auth\InvalidOobCode; use Kreait\Firebase\Exception\Auth\OperationNotAllowed; use Kreait\Firebase\Exception\Auth\RevokedIdToken; use Kreait\Firebase\Exception\Auth\UserDisabled; use Kreait\Firebase\Exception\Auth\UserNotFound; use Kreait\Firebase\Request; use Kreait\Firebase\Value\ClearTextPassword; use Kreait\Firebase\Value\Email; use Kreait\Firebase\Value\PhoneNumber; use Kreait\Firebase\Value\Provider; use Kreait\Firebase\Value\Uid; use Lcobucci\JWT\Token; use Psr\Http\Message\UriInterface; use Traversable; interface Auth { /** * @param Uid|string $uid * * @throws UserNotFound * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function getUser($uid): UserRecord; /** * @param array<Uid|string> $uids * * @throws Exception\FirebaseException * @throws Exception\AuthException * * @return array<string, UserRecord|null> */ public function getUsers(array $uids): array; /** * @throws Exception\FirebaseException * @throws Exception\AuthException * * @return Traversable<UserRecord> */ public function listUsers(int $maxResults = 1000, int $batchSize = 1000): Traversable; /** * Creates a new user with the provided properties. * * @param array<string, mixed>|Request\CreateUser $properties * * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function createUser($properties): UserRecord; /** * Updates the given user with the given properties. * * @param Uid|string $uid * @param array<string, mixed>|Request\UpdateUser $properties * * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function updateUser($uid, $properties): UserRecord; /** * @param Email|string $email * @param ClearTextPassword|string $password * * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function createUserWithEmailAndPassword($email, $password): UserRecord; /** * @param Email|string $email * * @throws UserNotFound * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function getUserByEmail($email): UserRecord; /** * @param PhoneNumber|string $phoneNumber * * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function getUserByPhoneNumber($phoneNumber): UserRecord; /** * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function createAnonymousUser(): UserRecord; /** * @param Uid|string $uid * @param ClearTextPassword|string $newPassword * * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function changeUserPassword($uid, $newPassword): UserRecord; /** * @param Uid|string $uid * @param Email|string $newEmail * * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function changeUserEmail($uid, $newEmail): UserRecord; /** * @param Uid|string $uid * * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function enableUser($uid): UserRecord; /** * @param Uid|string $uid * * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function disableUser($uid): UserRecord; /** * @param Uid|string $uid * * @throws UserNotFound * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function deleteUser($uid): void; /** * @param Email|string $email * @param ActionCodeSettings|array<string, mixed>|null $actionCodeSettings * * @throws FailedToCreateActionLink */ public function getEmailActionLink(string $type, $email, $actionCodeSettings = null): string; /** * @param Email|string $email * @param ActionCodeSettings|array<string, mixed>|null $actionCodeSettings * * @throws UserNotFound * @throws FailedToSendActionLink */ public function sendEmailActionLink(string $type, $email, $actionCodeSettings = null, ?string $locale = null): void; /** * @param Email|string $email * @param ActionCodeSettings|array<string, mixed>|null $actionCodeSettings * * @throws FailedToCreateActionLink */ public function getEmailVerificationLink($email, $actionCodeSettings = null): string; /** * @param Email|string $email * @param ActionCodeSettings|array<string, mixed>|null $actionCodeSettings * * @throws FailedToSendActionLink */ public function sendEmailVerificationLink($email, $actionCodeSettings = null, ?string $locale = null): void; /** * @param Email|string $email * @param ActionCodeSettings|array<string, mixed>|null $actionCodeSettings * * @throws FailedToCreateActionLink */ public function getPasswordResetLink($email, $actionCodeSettings = null): string; /** * @param Email|string $email * @param ActionCodeSettings|array<string, mixed>|null $actionCodeSettings * * @throws FailedToSendActionLink */ public function sendPasswordResetLink($email, $actionCodeSettings = null, ?string $locale = null): void; /** * @param Email|string $email * @param ActionCodeSettings|array<string, mixed>|null $actionCodeSettings * * @throws FailedToCreateActionLink */ public function getSignInWithEmailLink($email, $actionCodeSettings = null): string; /** * @param Email|string $email * @param ActionCodeSettings|array<string, mixed>|null $actionCodeSettings * * @throws FailedToSendActionLink */ public function sendSignInWithEmailLink($email, $actionCodeSettings = null, ?string $locale = null): void; /** * @param Uid|string $uid * @param array<string, mixed> $attributes * * @throws Exception\AuthException * @throws Exception\FirebaseException * * @deprecated 5.4.0 use {@see setCustomUserClaims}($id, array $claims) instead * @see setCustomUserClaims * @codeCoverageIgnore */ public function setCustomUserAttributes($uid, array $attributes): UserRecord; /** * @param Uid|string $uid * * @throws Exception\AuthException * @throws Exception\FirebaseException * * @see removeCustomUserClaims * @deprecated 5.4.0 use {@see setCustomUserClaims}($uid) instead */ public function deleteCustomUserAttributes($uid): UserRecord; /** * Sets additional developer claims on an existing user identified by the provided UID. * * @see https://firebase.google.com/docs/auth/admin/custom-claims * * @param Uid|string $uid * @param array<string, mixed>|null $claims * * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function setCustomUserClaims($uid, ?array $claims): void; /** * @param Uid|string $uid * @param array<string, mixed> $claims */ public function createCustomToken($uid, array $claims = []): Token; public function parseToken(string $tokenString): Token; /** * Verifies a JWT auth token. Returns a Promise with the tokens claims. Rejects the promise if the token * could not be verified. If checkRevoked is set to true, verifies if the session corresponding to the * ID token was revoked. If the corresponding user's session was invalidated, a RevokedToken * exception is thrown. If not specified the check is not applied. * * NOTE: Allowing time inconsistencies might impose a security risk. Do this only when you are not able * to fix your environment's time to be consistent with Google's servers. This parameter is here * for backwards compatibility reasons, and will be removed in the next major version. You * shouldn't rely on it. * * @param Token|string $idToken the JWT to verify * @param bool $checkIfRevoked whether to check if the ID token is revoked * * @throws \InvalidArgumentException if the token could not be parsed * @throws InvalidToken if the token could be parsed, but is invalid for any reason (invalid signature, expired, time errors) * @throws InvalidSignature if the signature doesn't match * @throws ExpiredToken if the token is expired * @throws IssuedInTheFuture if the token is issued in the future * @throws UnknownKey if the token's kid header doesnt' contain a known key * @throws RevokedIdToken if the token has been revoked */ public function verifyIdToken($idToken, bool $checkIfRevoked = false): Token; /** * Verifies the given password reset code. * * @see https://firebase.google.com/docs/reference/rest/auth#section-verify-password-reset-code * * @throws ExpiredOobCode * @throws InvalidOobCode * @throws OperationNotAllowed * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function verifyPasswordResetCode(string $oobCode): void; /** * Verifies the given password reset code and returns the associated user's email address. * * @see https://firebase.google.com/docs/reference/rest/auth#section-verify-password-reset-code * * @throws ExpiredOobCode * @throws InvalidOobCode * @throws OperationNotAllowed * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function verifyPasswordResetCodeAndReturnEmail(string $oobCode): Email; /** * Applies the password reset requested via the given OOB code. * * @see https://firebase.google.com/docs/reference/rest/auth#section-confirm-reset-password * * @param string $oobCode the email action code sent to the user's email for resetting the password * @param ClearTextPassword|string $newPassword * @param bool $invalidatePreviousSessions Invalidate sessions initialized with the previous credentials * * @throws ExpiredOobCode * @throws InvalidOobCode * @throws OperationNotAllowed * @throws UserDisabled * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function confirmPasswordReset(string $oobCode, $newPassword, bool $invalidatePreviousSessions = true): void; /** * Applies the password reset requested via the given OOB code and returns the associated user's email address. * * @see https://firebase.google.com/docs/reference/rest/auth#section-confirm-reset-password * * @param string $oobCode the email action code sent to the user's email for resetting the password * @param ClearTextPassword|string $newPassword * @param bool $invalidatePreviousSessions Invalidate sessions initialized with the previous credentials * * @throws ExpiredOobCode * @throws InvalidOobCode * @throws OperationNotAllowed * @throws UserDisabled * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function confirmPasswordResetAndReturnEmail(string $oobCode, $newPassword, bool $invalidatePreviousSessions = true): Email; /** * Revokes all refresh tokens for the specified user identified by the uid provided. * In addition to revoking all refresh tokens for a user, all ID tokens issued * before revocation will also be revoked on the Auth backend. Any request with an * ID token generated before revocation will be rejected with a token expired error. * * @param Uid|string $uid the user whose tokens are to be revoked * * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function revokeRefreshTokens($uid): void; /** * @param Uid|string $uid * @param Provider[]|string[]|string $provider * * @throws Exception\AuthException * @throws Exception\FirebaseException */ public function unlinkProvider($uid, $provider): UserRecord; /** * @param UserRecord|Uid|string $user * @param array<string, mixed>|null $claims * * @throws FailedToSignIn */ public function signInAsUser($user, ?array $claims = null): SignInResult; /** * @param Token|string $token * * @throws FailedToSignIn */ public function signInWithCustomToken($token): SignInResult; /** * @throws FailedToSignIn */ public function signInWithRefreshToken(string $refreshToken): SignInResult; /** * @param string|Email $email * @param string|ClearTextPassword $clearTextPassword * * @throws FailedToSignIn */ public function signInWithEmailAndPassword($email, $clearTextPassword): SignInResult; /** * @param string|Email $email * @param string $oobCode * * @throws FailedToSignIn */ public function signInWithEmailAndOobCode($email, $oobCode): SignInResult; /** * @throws FailedToSignIn */ public function signInAnonymously(): SignInResult; public function signInWithTwitterOauthCredential(string $accessToken, string $oauthTokenSecret, ?string $redirectUrl = null): SignInResult; public function signInWithGoogleIdToken(string $idToken, ?string $redirectUrl = null): SignInResult; public function signInWithFacebookAccessToken(string $accessToken, ?string $redirectUrl = null): SignInResult; /** * @see https://cloud.google.com/identity-platform/docs/reference/rest/v1/accounts/signInWithIdp * * @param Provider|string $provider * @param UriInterface|string|null $redirectUrl * * @throws FailedToSignIn */ public function signInWithIdpAccessToken($provider, string $accessToken, $redirectUrl = null, ?string $oauthTokenSecret = null): SignInResult; /** * @param Provider|string $provider * @param Token|string $idToken * @param UriInterface|string|null $redirectUrl * * @throws FailedToSignIn */ public function signInWithIdpIdToken($provider, $idToken, $redirectUrl = null): SignInResult; }