import { InjectionToken, NgZone } from '@angular/core'; import { MonoTypeOperatorFunction, Observable, OperatorFunction } from 'rxjs'; import { ɵAngularFireSchedulers } from '@angular/fire'; import { ɵPromiseProxy } from '@angular/fire/compat'; import { FirebaseOptions } from 'firebase/app'; import firebase from 'firebase/compat/app'; import { Settings } from './interfaces'; import * as i0 from "@angular/core"; export interface ConfigTemplate { [key: string]: string | number | boolean; } export declare const SETTINGS: InjectionToken; export declare const DEFAULTS: InjectionToken; export interface AngularFireRemoteConfig extends ɵPromiseProxy { } export declare class Value implements firebase.remoteConfig.Value { _source: firebase.remoteConfig.ValueSource; _value: string; asBoolean(): boolean; asString(): string; asNumber(): number; getSource(): firebase.remoteConfig.ValueSource; constructor(_source: firebase.remoteConfig.ValueSource, _value: string); } export declare class Parameter extends Value { key: string; fetchTimeMillis: number; constructor(key: string, fetchTimeMillis: number, source: firebase.remoteConfig.ValueSource, value: string); } export declare const filterRemote: () => MonoTypeOperatorFunction; export declare const filterFresh: (howRecentInMillis: number) => MonoTypeOperatorFunction; export declare class AngularFireRemoteConfig { private zone; readonly changes: Observable; readonly parameters: Observable; readonly numbers: Observable<{ [key: string]: number | undefined; }> & { [key: string]: Observable; }; readonly booleans: Observable<{ [key: string]: boolean | undefined; }> & { [key: string]: Observable; }; readonly strings: Observable<{ [key: string]: string | undefined; }> & { [key: string]: Observable; }; constructor(options: FirebaseOptions, name: string | null | undefined, settings: Settings | null, defaultConfig: ConfigTemplate | null, zone: NgZone, schedulers: ɵAngularFireSchedulers, platformId: Object); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } export declare const budget: (interval: number) => MonoTypeOperatorFunction; export declare function scanToObject(): OperatorFunction; export declare function scanToObject(to: 'numbers'): OperatorFunction; export declare function scanToObject(to: 'booleans'): OperatorFunction; export declare function scanToObject(to: 'strings'): OperatorFunction; export declare function scanToObject(template: T): OperatorFunction; export declare function mapToObject(): OperatorFunction; export declare function mapToObject(to: 'numbers'): OperatorFunction; export declare function mapToObject(to: 'booleans'): OperatorFunction; export declare function mapToObject(to: 'strings'): OperatorFunction; export declare function mapToObject(template: T): OperatorFunction;