diff --git a/packages/nuxt-fire/src/index.d.ts b/packages/nuxt-fire/src/index.d.ts index d1ff7865..99b422f7 100644 --- a/packages/nuxt-fire/src/index.d.ts +++ b/packages/nuxt-fire/src/index.d.ts @@ -1,3 +1,4 @@ +import { ServerResponse } from 'http' import firebase from 'firebase' import Vue from 'vue' @@ -5,55 +6,101 @@ import Vue from 'vue' declare module 'vue/types/vue' { interface Vue { $fireStore: firebase.firestore.Firestore + $fireStoreObj: typeof firebase.firestore $fireDb: firebase.database.Database + $fireDbObj: typeof firebase.database $fireFunc: firebase.functions.Functions + $fireFuncObj: typeof firebase.functions $fireStorage: firebase.storage.Storage + $fireStorageObj: typeof firebase.storage $fireAuth: firebase.auth.Auth + $fireAuthObj: typeof firebase.auth $fireMess: firebase.messaging.Messaging + $fireMessObj: typeof firebase.messaging $fireAnalytics: firebase.analytics.Analytics + $fireAnalyticsObj: typeof firebase.analytics $firePerf: firebase.performance.Performance + $firePerfObj: typeof firebase.performance $fireConfig: firebase.remoteConfig.RemoteConfig + $fireConfigObj: typeof firebase.remoteConfig } } declare module '@nuxt/vue-app' { interface NuxtAppOptions { $fireStore: firebase.firestore.Firestore + $fireStoreObj: typeof firebase.firestore $fireDb: firebase.database.Database + $fireDbObj: typeof firebase.database $fireFunc: firebase.functions.Functions + $fireFuncObj: typeof firebase.functions $fireStorage: firebase.storage.Storage + $fireStorageObj: typeof firebase.storage $fireAuth: firebase.auth.Auth + $fireAuthObj: typeof firebase.auth $fireMess: firebase.messaging.Messaging + $fireMessObj: typeof firebase.messaging $fireAnalytics: firebase.analytics.Analytics + $fireAnalyticsObj: typeof firebase.analytics $firePerf: firebase.performance.Performance + $firePerfObj: typeof firebase.performance $fireConfig: firebase.remoteConfig.RemoteConfig + $fireConfigObj: typeof firebase.remoteConfig } } declare module '@nuxt/types' { interface NuxtAppOptions { $fireStore: firebase.firestore.Firestore + $fireStoreObj: typeof firebase.firestore $fireDb: firebase.database.Database + $fireDbObj: typeof firebase.database $fireFunc: firebase.functions.Functions + $fireFuncObj: typeof firebase.functions $fireStorage: firebase.storage.Storage + $fireStorageObj: typeof firebase.storage $fireAuth: firebase.auth.Auth + $fireAuthObj: typeof firebase.auth $fireMess: firebase.messaging.Messaging + $fireMessObj: typeof firebase.messaging $fireAnalytics: firebase.analytics.Analytics + $fireAnalyticsObj: typeof firebase.analytics $firePerf: firebase.performance.Performance + $firePerfObj: typeof firebase.performance $fireConfig: firebase.remoteConfig.RemoteConfig + $fireConfigObj: typeof firebase.remoteConfig } } declare module 'vuex/types' { interface Store { $fireStore: firebase.firestore.Firestore + $fireStoreObj: typeof firebase.firestore $fireDb: firebase.database.Database + $fireDbObj: typeof firebase.database $fireFunc: firebase.functions.Functions + $fireFuncObj: typeof firebase.functions $fireStorage: firebase.storage.Storage + $fireStorageObj: typeof firebase.storage $fireAuth: firebase.auth.Auth + $fireAuthObj: typeof firebase.auth $fireMess: firebase.messaging.Messaging + $fireMessObj: typeof firebase.messaging $fireAnalytics: firebase.analytics.Analytics + $fireAnalyticsObj: typeof firebase.analytics $firePerf: firebase.performance.Performance + $firePerfObj: typeof firebase.performance $fireConfig: firebase.remoteConfig.RemoteConfig + $fireConfigObj: typeof firebase.remoteConfig + } +} + +declare module 'http' { + export interface ServerResponse { + verifiedFireAuthUser?: { + uid: string + email: string + emailVerified: boolean + } } }