UNPKG

1.87 kBTypeScriptView Raw
1/**
2 * @license
3 * Copyright 2019 Google LLC
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17import { ApiKey, AppName, AuthInternal } from '../../model/auth';
18import { UserInternal } from '../../model/user';
19import { PersistenceInternal } from '../persistence';
20export declare const enum KeyName {
21 AUTH_USER = "authUser",
22 AUTH_EVENT = "authEvent",
23 REDIRECT_USER = "redirectUser",
24 PERSISTENCE_USER = "persistence"
25}
26export declare const enum Namespace {
27 PERSISTENCE = "firebase"
28}
29export declare function _persistenceKeyName(key: string, apiKey: ApiKey, appName: AppName): string;
30export declare class PersistenceUserManager {
31 persistence: PersistenceInternal;
32 private readonly auth;
33 private readonly userKey;
34 private readonly fullUserKey;
35 private readonly fullPersistenceKey;
36 private readonly boundEventHandler;
37 private constructor();
38 setCurrentUser(user: UserInternal): Promise<void>;
39 getCurrentUser(): Promise<UserInternal | null>;
40 removeCurrentUser(): Promise<void>;
41 savePersistenceForRedirect(): Promise<void>;
42 setPersistence(newPersistence: PersistenceInternal): Promise<void>;
43 delete(): void;
44 static create(auth: AuthInternal, persistenceHierarchy: PersistenceInternal[], userKey?: KeyName): Promise<PersistenceUserManager>;
45}