1 | /**
|
2 | * @license
|
3 | * Copyright 2020 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 | */
|
17 | import { PersistenceInternal, PersistenceType, PersistenceValue } from '../../src/core/persistence';
|
18 | /**
|
19 | * Helper class for mocking completely broken persistence that errors when
|
20 | * accessed.
|
21 | *
|
22 | * When disabling cookies in Chrome entirely, for example, simply reading the
|
23 | * "localStorage" field in "window" will throw an error, but this can't be
|
24 | * checked for by calling `'localStorage' in window`. This class simulates a
|
25 | * situation where _isAvailable works correctly but all other methods fail.
|
26 | */
|
27 | export declare class ErroringUnavailablePersistence implements PersistenceInternal {
|
28 | type: PersistenceType;
|
29 | _isAvailable(): Promise<boolean>;
|
30 | _set(): Promise<void>;
|
31 | _get<T extends PersistenceValue>(): Promise<T | null>;
|
32 | _remove(): Promise<void>;
|
33 | _addListener(): void;
|
34 | _removeListener(): void;
|
35 | _shouldAllowMigration: boolean;
|
36 | }
|