UNPKG

@angular/fire

Version:

The official library for Firebase and Angular

80 lines (79 loc) 3.48 kB
import { InjectionToken, NgZone } from '@angular/core'; import { MonoTypeOperatorFunction, Observable, OperatorFunction } from 'rxjs'; import { FirebaseAppConfig, FirebaseOptions, ɵPromiseProxy } from '@angular/fire'; import { remoteConfig } from 'firebase/app'; export interface ConfigTemplate { [key: string]: string | number | boolean; } export declare const SETTINGS: InjectionToken<remoteConfig.Settings>; export declare const DEFAULTS: InjectionToken<ConfigTemplate>; export interface AngularFireRemoteConfig extends ɵPromiseProxy<remoteConfig.RemoteConfig> { } export declare class Value implements remoteConfig.Value { _source: remoteConfig.ValueSource; _value: string; asBoolean(): boolean; asString(): string; asNumber(): number; getSource(): remoteConfig.ValueSource; constructor(_source: remoteConfig.ValueSource, _value: string); } export declare class Parameter extends Value { key: string; fetchTimeMillis: number; constructor(key: string, fetchTimeMillis: number, source: remoteConfig.ValueSource, value: string); } export declare const filterRemote: () => MonoTypeOperatorFunction<Parameter | Parameter[]>; export declare const filterFresh: (howRecentInMillis: number) => MonoTypeOperatorFunction<Parameter | Parameter[]>; export declare class AngularFireRemoteConfig { private zone; readonly changes: Observable<Parameter>; readonly parameters: Observable<Parameter[]>; readonly numbers: Observable<{ [key: string]: number | undefined; }> & { [key: string]: Observable<number>; }; readonly booleans: Observable<{ [key: string]: boolean | undefined; }> & { [key: string]: Observable<boolean>; }; readonly strings: Observable<{ [key: string]: string | undefined; }> & { [key: string]: Observable<string | undefined>; }; constructor(options: FirebaseOptions, nameOrConfig: string | FirebaseAppConfig | null | undefined, settings: remoteConfig.Settings | null, defaultConfig: ConfigTemplate | null, zone: NgZone, platformId: Object); } export declare const budget: <T>(interval: number) => MonoTypeOperatorFunction<T>; export declare function scanToObject(): OperatorFunction<Parameter, { [key: string]: string | undefined; }>; export declare function scanToObject(to: 'numbers'): OperatorFunction<Parameter, { [key: string]: number | undefined; }>; export declare function scanToObject(to: 'booleans'): OperatorFunction<Parameter, { [key: string]: boolean | undefined; }>; export declare function scanToObject(to: 'strings'): OperatorFunction<Parameter, { [key: string]: string | undefined; }>; export declare function scanToObject<T extends ConfigTemplate>(template: T): OperatorFunction<Parameter, T & { [key: string]: string | undefined; }>; export declare function mapToObject(): OperatorFunction<Parameter[], { [key: string]: string | undefined; }>; export declare function mapToObject(to: 'numbers'): OperatorFunction<Parameter[], { [key: string]: number | undefined; }>; export declare function mapToObject(to: 'booleans'): OperatorFunction<Parameter[], { [key: string]: boolean | undefined; }>; export declare function mapToObject(to: 'strings'): OperatorFunction<Parameter[], { [key: string]: string | undefined; }>; export declare function mapToObject<T extends ConfigTemplate>(template: T): OperatorFunction<Parameter[], T & { [key: string]: string | undefined; }>;