From 602ec18e92fd365a3a6432ff3a5f6a31013eb1f5 Mon Sep 17 00:00:00 2001 From: Feiyang Date: Tue, 20 Oct 2020 15:35:25 -0700 Subject: [PATCH] Fix a typing error in database-types (#3968) * push should return a ThenableReference * make thenable only implement then & catch * Create tame-knives-change.md * Update .changeset/tame-knives-change.md Co-authored-by: Sebastian Schmidt Co-authored-by: Sebastian Schmidt --- .changeset/tame-knives-change.md | 7 +++++++ packages/database-types/index.d.ts | 6 ++++-- packages/firebase/index.d.ts | 2 +- 3 files changed, 12 insertions(+), 3 deletions(-) create mode 100644 .changeset/tame-knives-change.md diff --git a/.changeset/tame-knives-change.md b/.changeset/tame-knives-change.md new file mode 100644 index 00000000000..d2d813fb735 --- /dev/null +++ b/.changeset/tame-knives-change.md @@ -0,0 +1,7 @@ +--- +"@firebase/database-types": patch +"@firebase/database": patch +"firebase": patch +--- + +Updated the type definition for `ThenableReference` to only implement `then` and `catch`, which matches the implementation. diff --git a/packages/database-types/index.d.ts b/packages/database-types/index.d.ts index 15538ce1213..fa377fb241d 100644 --- a/packages/database-types/index.d.ts +++ b/packages/database-types/index.d.ts @@ -108,7 +108,7 @@ export interface Reference extends Query { key: string | null; onDisconnect(): OnDisconnect; parent: Reference | null; - push(value?: any, onComplete?: (a: Error | null) => any): Reference; + push(value?: any, onComplete?: (a: Error | null) => any): ThenableReference; remove(onComplete?: (a: Error | null) => any): Promise; root: Reference; set(value: any, onComplete?: (a: Error | null) => any): Promise; @@ -134,7 +134,9 @@ export interface ServerValue { increment(delta: number): Object; } -export interface ThenableReference extends Reference, Promise {} +export interface ThenableReference + extends Reference, + Pick, 'then' | 'catch'> {} export function enableLogging( logger?: boolean | ((a: string) => any), diff --git a/packages/firebase/index.d.ts b/packages/firebase/index.d.ts index 35a7d5549e6..2cae198c74d 100644 --- a/packages/firebase/index.d.ts +++ b/packages/firebase/index.d.ts @@ -6902,7 +6902,7 @@ declare namespace firebase.database { interface ThenableReference extends firebase.database.Reference, - Promise {} + Pick, 'then' | 'catch'> {} /** * Logs debugging information to the console.