@firebase/remote-config

  • Version 0.4.6
  • Published
  • 535 kB
  • 5 dependencies
  • Apache-2.0 license

Install

npm i @firebase/remote-config
yarn add @firebase/remote-config
pnpm add @firebase/remote-config

Overview

The Firebase Remote Config Web SDK. This SDK does not work in a Node.js environment.

Index

Functions

function activate

activate: (remoteConfig: RemoteConfig) => Promise<boolean>;
  • Makes the last fetched config available to the getters.

    Parameter remoteConfig

    The RemoteConfig instance.

    Returns

    A Promise which resolves to true if the current call activated the fetched configs. If the fetched configs were already activated, the Promise will resolve to false.

    Modifiers

    • @public

function ensureInitialized

ensureInitialized: (remoteConfig: RemoteConfig) => Promise<void>;
  • Ensures the last activated config are available to the getters.

    Parameter remoteConfig

    The RemoteConfig instance.

    Returns

    A Promise that resolves when the last activated config is available to the getters.

    Modifiers

    • @public

function fetchAndActivate

fetchAndActivate: (remoteConfig: RemoteConfig) => Promise<boolean>;
  • Performs fetch and activate operations, as a convenience.

    Parameter remoteConfig

    The RemoteConfig instance.

    Returns

    A Promise which resolves to true if the current call activated the fetched configs. If the fetched configs were already activated, the Promise will resolve to false.

    Modifiers

    • @public

function fetchConfig

fetchConfig: (remoteConfig: RemoteConfig) => Promise<void>;
  • Fetches and caches configuration from the Remote Config service.

    Parameter remoteConfig

    The RemoteConfig instance.

    Modifiers

    • @public

function getAll

getAll: (remoteConfig: RemoteConfig) => Record<string, Value>;
  • Gets all config.

    Parameter remoteConfig

    The RemoteConfig instance.

    Returns

    All config.

    Modifiers

    • @public

function getBoolean

getBoolean: (remoteConfig: RemoteConfig, key: string) => boolean;
  • Gets the value for the given key as a boolean.

    Convenience method for calling remoteConfig.getValue(key).asBoolean().

    Parameter remoteConfig

    The RemoteConfig instance.

    Parameter key

    The name of the parameter.

    Returns

    The value for the given key as a boolean.

    Modifiers

    • @public

function getNumber

getNumber: (remoteConfig: RemoteConfig, key: string) => number;
  • Gets the value for the given key as a number.

    Convenience method for calling remoteConfig.getValue(key).asNumber().

    Parameter remoteConfig

    The RemoteConfig instance.

    Parameter key

    The name of the parameter.

    Returns

    The value for the given key as a number.

    Modifiers

    • @public

function getRemoteConfig

getRemoteConfig: (app?: FirebaseApp) => RemoteConfig;

function getString

getString: (remoteConfig: RemoteConfig, key: string) => string;
  • Gets the value for the given key as a string. Convenience method for calling remoteConfig.getValue(key).asString().

    Parameter remoteConfig

    The RemoteConfig instance.

    Parameter key

    The name of the parameter.

    Returns

    The value for the given key as a string.

    Modifiers

    • @public

function getValue

getValue: (remoteConfig: RemoteConfig, key: string) => Value;
  • Gets the Value for the given key.

    Parameter remoteConfig

    The RemoteConfig instance.

    Parameter key

    The name of the parameter.

    Returns

    The value for the given key.

    Modifiers

    • @public

function isSupported

isSupported: () => Promise<boolean>;
  • This method provides two different checks:

    1. Check if IndexedDB exists in the browser environment. 2. Check if the current browser context allows IndexedDB open() calls.

    Returns

    A Promise which resolves to true if a RemoteConfig instance can be initialized in this environment, or false if it cannot.

    Modifiers

    • @public

function setLogLevel

setLogLevel: (remoteConfig: RemoteConfig, logLevel: LogLevel) => void;
  • Defines the log level to use.

    Parameter remoteConfig

    The RemoteConfig instance.

    Parameter logLevel

    The log level to set.

    Modifiers

    • @public

Interfaces

interface RemoteConfig

interface RemoteConfig {}
  • The Firebase Remote Config service interface.

    Modifiers

    • @public

property app

app: FirebaseApp;

property defaultConfig

defaultConfig: {
[key: string]: string | number | boolean;
};
  • Object containing default values for configs.

property fetchTimeMillis

fetchTimeMillis: number;
  • The Unix timestamp in milliseconds of the last successful fetch, or negative one if the RemoteConfig instance either hasn't fetched or initialization is incomplete.

property lastFetchStatus

lastFetchStatus: FetchStatus;
  • The status of the last fetch attempt.

property settings

settings: RemoteConfigSettings;
  • Defines configuration for the Remote Config SDK.

interface RemoteConfigSettings

interface RemoteConfigSettings {}
  • Defines configuration options for the Remote Config SDK.

    Modifiers

    • @public

property fetchTimeoutMillis

fetchTimeoutMillis: number;
  • Defines the maximum amount of milliseconds to wait for a response when fetching configuration from the Remote Config server. Defaults to 60000 (One minute).

property minimumFetchIntervalMillis

minimumFetchIntervalMillis: number;
  • Defines the maximum age in milliseconds of an entry in the config cache before it is considered stale. Defaults to 43200000 (Twelve hours).

interface Value

interface Value {}
  • Wraps a value with metadata and type-safe getters.

    Modifiers

    • @public

method asBoolean

asBoolean: () => boolean;
  • Gets the value as a boolean.

    The following values (case insensitive) are interpreted as true: "1", "true", "t", "yes", "y", "on". Other values are interpreted as false.

method asNumber

asNumber: () => number;
  • Gets the value as a number. Comparable to calling Number(value) || 0.

method asString

asString: () => string;
  • Gets the value as a string.

method getSource

getSource: () => ValueSource;

Type Aliases

type FetchStatus

type FetchStatus = 'no-fetch-yet' | 'success' | 'failure' | 'throttle';
  • Summarizes the outcome of the last attempt to fetch config from the Firebase Remote Config server.

    "no-fetch-yet" indicates the RemoteConfig instance has not yet attempted to fetch config, or that SDK initialization is incomplete. "success" indicates the last attempt succeeded. "failure" indicates the last attempt failed. "throttle" indicates the last attempt was rate-limited.

    Modifiers

    • @public

type LogLevel

type LogLevel = 'debug' | 'error' | 'silent';
  • Defines levels of Remote Config logging.

    Modifiers

    • @public

type ValueSource

type ValueSource = 'static' | 'default' | 'remote';
  • Indicates the source of a value.

    "static" indicates the value was defined by a static constant. "default" indicates the value was defined by default config. "remote" indicates the value was defined by fetched config.

    Modifiers

    • @public

Package Files (1)

Dependencies (5)

Dev Dependencies (4)

Peer Dependencies (1)

Badge

To add a badge like this onejsDocs.io badgeto your package's README, use the codes available below.

You may also use Shields.io to create a custom badge linking to https://www.jsdocs.io/package/@firebase/remote-config.

  • Markdown
    [![jsDocs.io](https://img.shields.io/badge/jsDocs.io-reference-blue)](https://www.jsdocs.io/package/@firebase/remote-config)
  • HTML
    <a href="https://www.jsdocs.io/package/@firebase/remote-config"><img src="https://img.shields.io/badge/jsDocs.io-reference-blue" alt="jsDocs.io"></a>