Skip to content

Commit 16c4ebe

Browse files
committed
Specify customData structure for FirebaseStorageError type
1 parent 0ac6f06 commit 16c4ebe

File tree

3 files changed

+7
-4
lines changed

3 files changed

+7
-4
lines changed

packages/firebase/index.d.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -7620,7 +7620,9 @@ declare namespace firebase.storage {
76207620
/**
76217621
* An error returned by the Firebase Storage SDK.
76227622
*/
7623-
interface FirebaseStorageError extends FirebaseError {}
7623+
interface FirebaseStorageError extends FirebaseError {
7624+
customData: { serverResponse: string | null };
7625+
}
76247626

76257627
interface StorageObserver<T> {
76267628
next?: NextFn<T> | null;

packages/storage-types/index.d.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,9 @@ export interface UploadMetadata extends SettableMetadata {
8585
md5Hash?: string | null;
8686
}
8787

88-
export interface FirebaseStorageError extends FirebaseError {}
88+
interface FirebaseStorageError extends FirebaseError {
89+
customData: { serverResponse: string | null };
90+
}
8991

9092
export interface StorageObserver<T> {
9193
next?: NextFn<T> | null;

packages/storage/src/implementation/error.ts

+1-2
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,13 @@ import { FirebaseError } from '@firebase/util';
1818
import { CONFIG_STORAGE_BUCKET_KEY } from './constants';
1919

2020
export class FirebaseStorageError extends FirebaseError {
21-
customData: { serverResponse: string | null };
21+
customData: { serverResponse: string | null } = { serverResponse: null };
2222

2323
constructor(code: Code, message: string) {
2424
super(prependCode(code), 'Firebase Storage: ' + message);
2525
// Without this, `instanceof FirebaseStorageError`, in tests for example,
2626
// returns false.
2727
Object.setPrototypeOf(this, FirebaseStorageError.prototype);
28-
this.customData = { serverResponse: null };
2928
}
3029

3130
codeEquals(code: Code): boolean {

0 commit comments

Comments
 (0)