# Interface FirebaseConfig

interface FirebaseConfig {
firebase: null | {
analytics?: {
enabled?: boolean;
};
appCheck: {
isTokenAutoRefreshEnabled?: boolean;
siteKey?: string;
};
auth: {
facebook: boolean;
github: boolean;
google: boolean;
languageCode?: string;
persistence?: boolean;
settings?: AuthSettings;
tenantId?: string;
twitter: boolean;
useDeviceLanguage?: boolean;
};
emulator: {
auth?: [string, number];
firestore?: [string, number];
functions?: [string, number];
};
firestore: {
enablePersistence: boolean;
persistenceSettings: PersistenceSettings;
settings: FirestoreSettings;
};
functions: {
origin: null | string;
region: null | string;
};
messaging: {
vapid: null | string;
};
name: null | string;
options: {
apiKey: string;
appId?: string;
authDomain?: string;
databaseURL?: string;
messagingSenderId?: string;
projectId: string;
storageBucket?: string;
};
origin: null | string;
region: null | string;
storage: {
bucket?: string;
maxOperationRetryTime?: number;
maxUploadRetryTime?: number;
};
storageBucket: null | string;
vapid: null | string;
};
}

- Defined in lib/firebase.config.ts:7

#####
Index

### Properties

firebase

## Properties

### firebase

firebase: null | {
analytics?: {
enabled?: boolean;
};
appCheck: {
isTokenAutoRefreshEnabled?: boolean;
siteKey?: string;
};
auth: {
facebook: boolean;
github: boolean;
google: boolean;
languageCode?: string;
persistence?: boolean;
settings?: AuthSettings;
tenantId?: string;
twitter: boolean;
useDeviceLanguage?: boolean;
};
emulator: {
auth?: [string, number];
firestore?: [string, number];
functions?: [string, number];
};
firestore: {
enablePersistence: boolean;
persistenceSettings: PersistenceSettings;
settings: FirestoreSettings;
};
functions: {
origin: null | string;
region: null | string;
};
messaging: {
vapid: null | string;
};
name: null | string;
options: {
apiKey: string;
appId?: string;
authDomain?: string;
databaseURL?: string;
messagingSenderId?: string;
projectId: string;
storageBucket?: string;
};
origin: null | string;
region: null | string;
storage: {
bucket?: string;
maxOperationRetryTime?: number;
maxUploadRetryTime?: number;
};
storageBucket: null | string;
vapid: null | string;
}

#### Type declaration

- ##### `Optional` analytics?: {
  enabled?: boolean;
  }

  - ##### `Optional` enabled?: boolean

- ##### appCheck: {
  isTokenAutoRefreshEnabled?: boolean;
  siteKey?: string;
  }

  - ##### `Optional` isTokenAutoRefreshEnabled?: boolean

  - ##### `Optional` siteKey?: string

    reCaptcha key

- ##### auth: {
  facebook: boolean;
  github: boolean;
  google: boolean;
  languageCode?: string;
  persistence?: boolean;
  settings?: AuthSettings;
  tenantId?: string;
  twitter: boolean;
  useDeviceLanguage?: boolean;
  }

  - ##### facebook: boolean

  - ##### github: boolean

  - ##### google: boolean

  - ##### `Optional` languageCode?: string

  - ##### `Optional` persistence?: boolean

  - ##### `Optional` settings?: AuthSettings

  - ##### `Optional` tenantId?: string

  - ##### twitter: boolean

  - ##### `Optional` useDeviceLanguage?: boolean

- ##### emulator: {
  auth?: [string, number];
  firestore?: [string, number];
  functions?: [string, number];
  }

  - ##### `Optional` auth?: [string, number]

  - ##### `Optional` firestore?: [string, number]

  - ##### `Optional` functions?: [string, number]

- ##### firestore: {
  enablePersistence: boolean;
  persistenceSettings: PersistenceSettings;
  settings: FirestoreSettings;
  }

  - ##### enablePersistence: boolean

  - ##### persistenceSettings: PersistenceSettings

    Settings that can be passed to Firestore.enablePersistence() to configure Firestore persistence.

  - ##### settings: FirestoreSettings

    Specifies custom configurations for your Cloud Firestore instance. You must set these before invoking any other methods.

- ##### functions: {
  origin: null | string;
  region: null | string;
  }

  - ##### origin: null | string

  - ##### region: null | string

- ##### messaging: {
  vapid: null | string;
  }

  - ##### vapid: null | string

- ##### name: null | string

- ##### options: {
  apiKey: string;
  appId?: string;
  authDomain?: string;
  databaseURL?: string;
  messagingSenderId?: string;
  projectId: string;
  storageBucket?: string;
  }

  - ##### apiKey: string

  - ##### `Optional` appId?: string

  - ##### `Optional` authDomain?: string

  - ##### `Optional` databaseURL?: string

  - ##### `Optional` messagingSenderId?: string

  - ##### projectId: string

  - ##### `Optional` storageBucket?: string

- ##### origin: null | string

  #### Deprecated

  use functions.origin

- ##### region: null | string

  #### Deprecated

  use functions.region

- ##### storage: {
  bucket?: string;
  maxOperationRetryTime?: number;
  maxUploadRetryTime?: number;
  }

  - ##### `Optional` bucket?: string

  - ##### `Optional` maxOperationRetryTime?: number

  - ##### `Optional` maxUploadRetryTime?: number

- ##### storageBucket: null | string

  #### Deprecated

  use storage.bucket

- ##### vapid: null | string

  #### Deprecated

  use messaging.origin

- Defined in lib/firebase.config.ts:8