@pedwise/next-firebase-auth-edge
Version:
Next.js 13 Firebase Authentication for Edge and server runtimes. Dedicated for Next 13 server components. Compatible with Next.js middleware.
41 lines (40 loc) • 1.2 kB
TypeScript
import { FirebaseTokenInfo } from "./firebase";
export interface DecodedIdToken {
aud: string;
auth_time: number;
email?: string;
email_verified?: boolean;
exp: number;
firebase: {
identities: {
[key: string]: any;
};
sign_in_provider: string;
sign_in_second_factor?: string;
second_factor_identifier?: string;
tenant?: string;
[key: string]: any;
};
iat: number;
iss: string;
phone_number?: string;
picture?: string;
sub: string;
uid: string;
[key: string]: any;
}
export declare class FirebaseTokenVerifier {
private issuer;
private tokenInfo;
private projectId;
private readonly shortNameArticle;
private readonly signatureVerifier;
constructor(clientCertUrl: string, issuer: string, tokenInfo: FirebaseTokenInfo, projectId: string);
verifyJWT(jwtToken: string, isEmulator?: boolean): Promise<DecodedIdToken>;
private decodeAndVerify;
private safeDecode;
private verifyContent;
private verifySignature;
private mapJwtErrorToAuthError;
}
export declare function createIdTokenVerifier(projectId: string): FirebaseTokenVerifier;