declare type FirebaseDatabaseWriters = { set: (val: T) => T | Promise; transaction: ((a: T) => T) | ((transactionUpdate: (a: any) => any, onComplete?: ((a: Error | null, b: boolean, c: firebase.database.DataSnapshot | null) => any) | undefined, applyLocally?: boolean | undefined) => Promise); update: ((a: T) => T) | ((values: Object, onComplete?: ((a: Error | null) => any) | undefined) => Promise); push: ((a: T) => T) | ((value?: any, onComplete?: ((a: Error | null) => any) | undefined) => firebase.database.ThenableReference); pushWithKey: (callback: (key: string | null) => T | Promise) => T | Promise | undefined; }; export default FirebaseDatabaseWriters;