@react-native-firebase/remote-config 25.1.0 → 26.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/RNFBRemoteConfig.podspec +9 -7
  3. package/android/build.gradle +19 -0
  4. package/android/src/reactnative/java/io/invertase/firebase/config/{ReactNativeFirebaseConfigModule.java → NativeRNFBTurboConfig.java} +53 -40
  5. package/android/src/reactnative/java/io/invertase/firebase/config/ReactNativeFirebaseConfigPackage.java +1 -1
  6. package/android/src/reactnative/java/io/invertase/firebase/config/generated/java/com/facebook/fbreact/specs/NativeRNFBTurboConfigSpec.java +115 -0
  7. package/android/src/reactnative/java/io/invertase/firebase/config/generated/jni/CMakeLists.txt +36 -0
  8. package/android/src/reactnative/java/io/invertase/firebase/config/generated/jni/RNFBRemoteConfigTurboModules-generated.cpp +98 -0
  9. package/android/src/reactnative/java/io/invertase/firebase/config/generated/jni/RNFBRemoteConfigTurboModules.h +31 -0
  10. package/android/src/reactnative/java/io/invertase/firebase/config/generated/jni/react/renderer/components/RNFBRemoteConfigTurboModules/RNFBRemoteConfigTurboModulesJSI-generated.cpp +110 -0
  11. package/android/src/reactnative/java/io/invertase/firebase/config/generated/jni/react/renderer/components/RNFBRemoteConfigTurboModules/RNFBRemoteConfigTurboModulesJSI.h +471 -0
  12. package/dist/module/index.js +499 -5
  13. package/dist/module/index.js.map +1 -1
  14. package/dist/module/version.js +1 -1
  15. package/dist/typescript/lib/index.d.ts +83 -5
  16. package/dist/typescript/lib/index.d.ts.map +1 -1
  17. package/dist/typescript/lib/types/internal.d.ts +25 -24
  18. package/dist/typescript/lib/types/internal.d.ts.map +1 -1
  19. package/dist/typescript/lib/types/remote-config.d.ts +24 -3
  20. package/dist/typescript/lib/types/remote-config.d.ts.map +1 -1
  21. package/dist/typescript/lib/version.d.ts +1 -1
  22. package/ios/RNFBConfig/RNFBConfigHelper.h +89 -0
  23. package/ios/RNFBConfig/{RNFBConfigModule.m → RNFBConfigHelper.m} +176 -165
  24. package/ios/RNFBConfig/RNFBConfigModule.h +3 -2
  25. package/ios/RNFBConfig/RNFBConfigModule.mm +134 -0
  26. package/ios/RNFBConfig.xcodeproj/project.pbxproj +8 -8
  27. package/ios/generated/RCTAppDependencyProvider.h +25 -0
  28. package/ios/generated/RCTAppDependencyProvider.mm +55 -0
  29. package/ios/generated/RCTModulesConformingToProtocolsProvider.h +18 -0
  30. package/ios/generated/RCTModulesConformingToProtocolsProvider.mm +33 -0
  31. package/ios/generated/RCTThirdPartyComponentsProvider.h +16 -0
  32. package/ios/generated/RCTThirdPartyComponentsProvider.mm +23 -0
  33. package/ios/generated/RNFBRemoteConfigTurboModules/RNFBRemoteConfigTurboModules-generated.mm +121 -0
  34. package/ios/generated/RNFBRemoteConfigTurboModules/RNFBRemoteConfigTurboModules.h +172 -0
  35. package/ios/generated/RNFBRemoteConfigTurboModulesJSI-generated.cpp +110 -0
  36. package/ios/generated/RNFBRemoteConfigTurboModulesJSI.h +471 -0
  37. package/ios/generated/ReactAppDependencyProvider.podspec +34 -0
  38. package/lib/index.ts +683 -8
  39. package/lib/types/internal.ts +25 -44
  40. package/lib/types/remote-config.ts +28 -3
  41. package/lib/version.ts +1 -1
  42. package/package.json +23 -5
  43. package/react-native.config.js +10 -0
  44. package/specs/NativeRNFBTurboConfig.ts +60 -0
  45. package/typedoc.json +1 -1
  46. package/dist/module/modular.js +0 -155
  47. package/dist/module/modular.js.map +0 -1
  48. package/dist/module/namespaced.js +0 -400
  49. package/dist/module/namespaced.js.map +0 -1
  50. package/dist/module/types/namespaced.js +0 -24
  51. package/dist/module/types/namespaced.js.map +0 -1
  52. package/dist/typescript/lib/modular.d.ts +0 -76
  53. package/dist/typescript/lib/modular.d.ts.map +0 -1
  54. package/dist/typescript/lib/namespaced.d.ts +0 -11
  55. package/dist/typescript/lib/namespaced.d.ts.map +0 -1
  56. package/dist/typescript/lib/types/namespaced.d.ts +0 -124
  57. package/dist/typescript/lib/types/namespaced.d.ts.map +0 -1
  58. package/lib/modular.ts +0 -197
  59. package/lib/namespaced.ts +0 -552
  60. package/lib/types/namespaced.ts +0 -163
@@ -1,12 +1,12 @@
1
1
  import type { ConfigUpdateObserver, FetchStatus, RemoteConfig, RemoteConfigSettings, Unsubscribe, Value, ValueSource } from './remote-config';
2
- import type { FirebaseRemoteConfigTypes } from './namespaced';
3
2
  export type ConfigValueSourceInternal = ValueSource;
4
3
  export type LastFetchStatusInternal = FetchStatus;
5
- export type RemoteConfigModularDeprecationArg = string;
6
- export type WithRemoteConfigDeprecationArg<F> = F extends (...args: infer P) => infer R ? (...args: [...P, RemoteConfigModularDeprecationArg?]) => R : never;
7
- export interface AppWithRemoteConfigInternal {
8
- remoteConfig(deprecationArg?: RemoteConfigModularDeprecationArg): RemoteConfig;
9
- }
4
+ export type OnConfigUpdatedListenerCallback = (event?: {
5
+ updatedKeys: string[];
6
+ }, error?: RemoteConfigUpdateErrorInternal) => void;
7
+ export type CallbackOrObserver<T extends (...args: any[]) => any> = T | {
8
+ next: T;
9
+ };
10
10
  export interface ConfigSettingsStateInternal {
11
11
  fetchTimeoutMillis: number;
12
12
  minimumFetchIntervalMillis: number;
@@ -39,6 +39,7 @@ export interface RemoteConfigUpdateErrorEventInternal extends RemoteConfigUpdate
39
39
  resultType?: string;
40
40
  }
41
41
  export interface RNFBConfigModule {
42
+ getConstants(): NativeRemoteConfigConstants;
42
43
  activate(): Promise<NativeRemoteConfigResult<boolean>>;
43
44
  setConfigSettings(settings: {
44
45
  fetchTimeout: number;
@@ -61,34 +62,34 @@ export interface RemoteConfigInternal extends RemoteConfig {
61
62
  defaultConfig: {
62
63
  [key: string]: string | number | boolean;
63
64
  };
64
- activate(deprecationArg?: RemoteConfigModularDeprecationArg): Promise<boolean>;
65
- ensureInitialized(deprecationArg?: RemoteConfigModularDeprecationArg): Promise<void>;
66
- fetchAndActivate(deprecationArg?: RemoteConfigModularDeprecationArg): Promise<boolean>;
67
- fetch(expirationDurationSeconds?: number, deprecationArg?: RemoteConfigModularDeprecationArg): Promise<void>;
68
- getAll(deprecationArg?: RemoteConfigModularDeprecationArg): Record<string, Value>;
69
- getBoolean(key: string, deprecationArg?: RemoteConfigModularDeprecationArg): boolean;
70
- getNumber(key: string, deprecationArg?: RemoteConfigModularDeprecationArg): number;
71
- getString(key: string, deprecationArg?: RemoteConfigModularDeprecationArg): string;
72
- getValue(key: string, deprecationArg?: RemoteConfigModularDeprecationArg): Value;
73
- reset(deprecationArg?: RemoteConfigModularDeprecationArg): Promise<void>;
65
+ activate(): Promise<boolean>;
66
+ ensureInitialized(): Promise<void>;
67
+ fetchAndActivate(): Promise<boolean>;
68
+ fetch(expirationDurationSeconds?: number): Promise<void>;
69
+ getAll(): Record<string, Value>;
70
+ getBoolean(key: string): boolean;
71
+ getNumber(key: string): number;
72
+ getString(key: string): string;
73
+ getValue(key: string): Value;
74
+ reset(): Promise<void>;
74
75
  setConfigSettings(settings: RemoteConfigSettings | {
75
76
  minimumFetchIntervalMillis?: number;
76
77
  fetchTimeMillis?: number;
77
78
  fetchTimeoutMillis?: number;
78
- }, deprecationArg?: RemoteConfigModularDeprecationArg): Promise<void>;
79
+ }, fromSettingsSetter?: boolean): Promise<void>;
79
80
  setDefaults(defaults: {
80
81
  [key: string]: string | number | boolean;
81
- }, deprecationArg?: RemoteConfigModularDeprecationArg): Promise<null>;
82
- setDefaultsFromResource(resourceName: string, deprecationArg?: RemoteConfigModularDeprecationArg): Promise<null>;
83
- onConfigUpdate(observer: ConfigUpdateObserver, deprecationArg?: RemoteConfigModularDeprecationArg): Unsubscribe;
84
- onConfigUpdated(listenerOrObserver: FirebaseRemoteConfigTypes.CallbackOrObserver<FirebaseRemoteConfigTypes.OnConfigUpdatedListenerCallback>, deprecationArg?: RemoteConfigModularDeprecationArg): Unsubscribe;
82
+ }, fromDefaultConfigSetter?: boolean): Promise<null>;
83
+ setDefaultsFromResource(resourceName: string): Promise<null>;
84
+ onConfigUpdate(observer: ConfigUpdateObserver): Unsubscribe;
85
+ onConfigUpdated(listenerOrObserver: CallbackOrObserver<OnConfigUpdatedListenerCallback>): Unsubscribe;
85
86
  readonly native: RNFBConfigModule;
86
- _promiseWithConstants(promise: Promise<NativeRemoteConfigResult<void>>, deprecationArg?: RemoteConfigModularDeprecationArg): Promise<void>;
87
- _promiseWithConstants<T>(promise: Promise<NativeRemoteConfigResult<T>>, deprecationArg?: RemoteConfigModularDeprecationArg): Promise<T>;
87
+ _promiseWithConstants(promise: Promise<NativeRemoteConfigResult<void>>): Promise<void>;
88
+ _promiseWithConstants<T>(promise: Promise<NativeRemoteConfigResult<T>>): Promise<T>;
88
89
  }
89
90
  declare module '@react-native-firebase/app/dist/module/internal/NativeModules' {
90
91
  interface ReactNativeFirebaseNativeModules {
91
- RNFBConfigModule: RNFBConfigModule;
92
+ NativeRNFBTurboConfig: RNFBConfigModule;
92
93
  }
93
94
  }
94
95
  //# sourceMappingURL=internal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../../lib/types/internal.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EACV,oBAAoB,EACpB,WAAW,EACX,YAAY,EACZ,oBAAoB,EACpB,WAAW,EACX,KAAK,EACL,WAAW,EACZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAE9D,MAAM,MAAM,yBAAyB,GAAG,WAAW,CAAC;AAEpD,MAAM,MAAM,uBAAuB,GAAG,WAAW,CAAC;AAElD,MAAM,MAAM,iCAAiC,GAAG,MAAM,CAAC;AAEvD,MAAM,MAAM,8BAA8B,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC,GACnF,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,iCAAiC,CAAC,CAAC,KAAK,CAAC,GAC1D,KAAK,CAAC;AAEV,MAAM,WAAW,2BAA2B;IAC1C,YAAY,CAAC,cAAc,CAAC,EAAE,iCAAiC,GAAG,YAAY,CAAC;CAChF;AAED,MAAM,WAAW,2BAA2B;IAC1C,kBAAkB,EAAE,MAAM,CAAC;IAC3B,0BAA0B,EAAE,MAAM,CAAC;CACpC;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACjC,MAAM,EAAE,yBAAyB,CAAC;CACnC;AAED,MAAM,WAAW,2BAA2B;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,uBAAuB,CAAC;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,wBAAwB,CAAC,CAAC;IACzC,MAAM,EAAE,CAAC,CAAC;IACV,SAAS,EAAE,2BAA2B,CAAC;CACxC;AAED,MAAM,WAAW,+BAA+B;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,sCAAsC;IACrD,UAAU,EAAE,SAAS,CAAC;IACtB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,oCAAqC,SAAQ,+BAA+B;IAC3F,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,IAAI,OAAO,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAC;IACvD,iBAAiB,CAAC,QAAQ,EAAE;QAC1B,YAAY,EAAE,MAAM,CAAC;QACrB,oBAAoB,EAAE,MAAM,CAAC;KAC9B,GAAG,OAAO,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,KAAK,CAAC,yBAAyB,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;IAClF,gBAAgB,IAAI,OAAO,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/D,iBAAiB,IAAI,OAAO,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,WAAW,CACT,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GAClD,OAAO,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3C,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;IACvF,KAAK,IAAI,OAAO,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,eAAe,IAAI,IAAI,CAAC;IACxB,8BAA8B,IAAI,IAAI,CAAC;IACvC,gBAAgB,CACd,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC,GACpD,OAAO,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IACxD,QAAQ,EAAE,oBAAoB,GAAG;QAC/B,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,aAAa,EAAE;QACb,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;KAC1C,CAAC;IACF,QAAQ,CAAC,cAAc,CAAC,EAAE,iCAAiC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/E,iBAAiB,CAAC,cAAc,CAAC,EAAE,iCAAiC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrF,gBAAgB,CAAC,cAAc,CAAC,EAAE,iCAAiC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACvF,KAAK,CACH,yBAAyB,CAAC,EAAE,MAAM,EAClC,cAAc,CAAC,EAAE,iCAAiC,GACjD,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,MAAM,CAAC,cAAc,CAAC,EAAE,iCAAiC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAClF,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,iCAAiC,GAAG,OAAO,CAAC;IACrF,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,iCAAiC,GAAG,MAAM,CAAC;IACnF,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,iCAAiC,GAAG,MAAM,CAAC;IACnF,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,iCAAiC,GAAG,KAAK,CAAC;IACjF,KAAK,CAAC,cAAc,CAAC,EAAE,iCAAiC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzE,iBAAiB,CACf,QAAQ,EACJ,oBAAoB,GACpB;QACE,0BAA0B,CAAC,EAAE,MAAM,CAAC;QACpC,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,EACL,cAAc,CAAC,EAAE,iCAAiC,GACjD,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,WAAW,CACT,QAAQ,EAAE;QACR,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;KAC1C,EACD,cAAc,CAAC,EAAE,iCAAiC,GACjD,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,uBAAuB,CACrB,YAAY,EAAE,MAAM,EACpB,cAAc,CAAC,EAAE,iCAAiC,GACjD,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,cAAc,CACZ,QAAQ,EAAE,oBAAoB,EAC9B,cAAc,CAAC,EAAE,iCAAiC,GACjD,WAAW,CAAC;IACf,eAAe,CACb,kBAAkB,EAAE,yBAAyB,CAAC,kBAAkB,CAAC,yBAAyB,CAAC,+BAA+B,CAAC,EAC3H,cAAc,CAAC,EAAE,iCAAiC,GACjD,WAAW,CAAC;IACf,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,qBAAqB,CACnB,OAAO,EAAE,OAAO,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,EAChD,cAAc,CAAC,EAAE,iCAAiC,GACjD,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,qBAAqB,CAAC,CAAC,EACrB,OAAO,EAAE,OAAO,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,EAC7C,cAAc,CAAC,EAAE,iCAAiC,GACjD,OAAO,CAAC,CAAC,CAAC,CAAC;CACf;AAED,OAAO,QAAQ,+DAA+D,CAAC;IAC7E,UAAU,gCAAgC;QACxC,gBAAgB,EAAE,gBAAgB,CAAC;KACpC;CACF"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../../lib/types/internal.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,29 @@
1
- import type { FirebaseApp } from '@firebase/app';
2
- import type { ReactNativeFirebase } from '@react-native-firebase/app';
1
+ import type { FirebaseApp, FirebaseError } from '@firebase/app';
3
2
  export type LogLevel = 'debug' | 'error' | 'silent';
4
3
  export type FetchStatus = 'success' | 'failure' | 'no_fetch_yet' | 'throttled';
5
4
  export type ValueSource = 'static' | 'default' | 'remote';
5
+ export interface FirebaseRemoteConfigObject {
6
+ [key: string]: string;
7
+ }
8
+ export interface FirebaseExperimentDescription {
9
+ experimentId: string;
10
+ variantId: string;
11
+ experimentStartTime: string;
12
+ triggerTimeoutMillis: string;
13
+ timeToLiveMillis: string;
14
+ affectedParameterKeys?: string[];
15
+ }
16
+ export interface FetchResponse {
17
+ status: number;
18
+ eTag?: string;
19
+ config?: FirebaseRemoteConfigObject;
20
+ templateVersion?: number;
21
+ experiments?: FirebaseExperimentDescription[];
22
+ }
23
+ export interface RemoteConfigOptions {
24
+ templateId?: string;
25
+ initialFetchResponse?: FetchResponse;
26
+ }
6
27
  export interface Value {
7
28
  getSource(): ValueSource;
8
29
  asBoolean(): boolean;
@@ -18,7 +39,7 @@ export interface ConfigUpdate {
18
39
  }
19
40
  export interface ConfigUpdateObserver {
20
41
  next: (configUpdate: ConfigUpdate) => void;
21
- error: (error: ReactNativeFirebase.NativeFirebaseError) => void;
42
+ error: (error: FirebaseError) => void;
22
43
  complete: () => void;
23
44
  }
24
45
  export type Unsubscribe = () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"remote-config.d.ts","sourceRoot":"","sources":["../../../../lib/types/remote-config.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEpD,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,cAAc,GAAG,WAAW,CAAC;AAE/E,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE1D,MAAM,WAAW,KAAK;IACpB,SAAS,IAAI,WAAW,CAAC;IACzB,SAAS,IAAI,OAAO,CAAC;IACrB,QAAQ,IAAI,MAAM,CAAC;IACnB,QAAQ,IAAI,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,0BAA0B,EAAE,MAAM,CAAC;IACnC,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,cAAc,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,CAAC,YAAY,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,KAAK,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,mBAAmB,KAAK,IAAI,CAAC;IAChE,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC;AAErC,MAAM,WAAW,aAAa;IAC5B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,WAAW,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,WAAW,CAAC;IAC7B,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,aAAa,EAAE;QACb,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;KAC1C,CAAC;CACH"}
1
+ {"version":3,"file":"remote-config.d.ts","sourceRoot":"","sources":["../../../../lib/types/remote-config.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEhE,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEpD,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,cAAc,GAAG,WAAW,CAAC;AAE/E,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE1D,MAAM,WAAW,0BAA0B;IACzC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,6BAA6B;IAC5C,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;IACzB,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,0BAA0B,CAAC;IACpC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,6BAA6B,EAAE,CAAC;CAC/C;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,aAAa,CAAC;CACtC;AAED,MAAM,WAAW,KAAK;IACpB,SAAS,IAAI,WAAW,CAAC;IACzB,SAAS,IAAI,OAAO,CAAC;IACrB,QAAQ,IAAI,MAAM,CAAC;IACnB,QAAQ,IAAI,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,0BAA0B,EAAE,MAAM,CAAC;IACnC,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,cAAc,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,CAAC,YAAY,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,KAAK,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IACtC,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC;AAErC,MAAM,WAAW,aAAa;IAC5B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,WAAW,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,WAAW,CAAC;IAC7B,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,aAAa,EAAE;QACb,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;KAC1C,CAAC;CACH"}
@@ -1,2 +1,2 @@
1
- export declare const version = "25.1.0";
1
+ export declare const version = "26.1.0";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1,89 @@
1
+ /**
2
+ * Copyright (c) 2016-present Invertase Limited & Contributors
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this library except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ *
16
+ */
17
+
18
+ #import <Foundation/Foundation.h>
19
+ #import <React/RCTBridgeModule.h>
20
+
21
+ NS_ASSUME_NONNULL_BEGIN
22
+
23
+ /// Thin Objective-C wrapper around FirebaseRemoteConfig.
24
+ ///
25
+ /// FirebaseRemoteConfig is a pure-Swift SPM module: its generated ObjC
26
+ /// interface header (FirebaseRemoteConfig-Swift.h) is not reliably
27
+ /// importable from a cross-project CocoaPods target, and `@import
28
+ /// FirebaseRemoteConfig;` (the pattern the Firebase SDK itself documents for
29
+ /// ObjC clients, see SPMSwiftHeaderWorkaround.swift) requires C++ modules to
30
+ /// be enabled when used from an Objective-C++ (.mm) file, which breaks React
31
+ /// Native's own jsi/React modules. Isolating all FirebaseRemoteConfig usage
32
+ /// in this plain Objective-C (.m) file avoids that requirement entirely,
33
+ /// since `@import` only needs `-fmodules` (already enabled) for plain ObjC.
34
+ /// See okf-bundle/ios-spm-native-imports.md.
35
+ @interface RNFBConfigHelper : NSObject
36
+
37
+ + (void)ensureInitialized:(NSString *)appName
38
+ resolve:(RCTPromiseResolveBlock)resolve
39
+ reject:(RCTPromiseRejectBlock)reject;
40
+
41
+ + (void)fetch:(NSString *)appName
42
+ expirationDurationSeconds:(double)expirationDurationSeconds
43
+ resolve:(RCTPromiseResolveBlock)resolve
44
+ reject:(RCTPromiseRejectBlock)reject;
45
+
46
+ + (void)fetchAndActivate:(NSString *)appName
47
+ resolve:(RCTPromiseResolveBlock)resolve
48
+ reject:(RCTPromiseRejectBlock)reject;
49
+
50
+ + (void)activate:(NSString *)appName
51
+ resolve:(RCTPromiseResolveBlock)resolve
52
+ reject:(RCTPromiseRejectBlock)reject;
53
+
54
+ + (void)setConfigSettings:(NSString *)appName
55
+ minimumFetchInterval:(double)minimumFetchInterval
56
+ fetchTimeout:(double)fetchTimeout
57
+ resolve:(RCTPromiseResolveBlock)resolve
58
+ reject:(RCTPromiseRejectBlock)reject;
59
+
60
+ + (void)setDefaults:(NSString *)appName
61
+ defaults:(NSDictionary *)defaults
62
+ resolve:(RCTPromiseResolveBlock)resolve
63
+ reject:(RCTPromiseRejectBlock)reject;
64
+
65
+ + (void)setDefaultsFromResource:(NSString *)appName
66
+ resourceName:(NSString *)resourceName
67
+ resolve:(RCTPromiseResolveBlock)resolve
68
+ reject:(RCTPromiseRejectBlock)reject;
69
+
70
+ + (void)reset:(NSString *)appName
71
+ resolve:(RCTPromiseResolveBlock)resolve
72
+ reject:(RCTPromiseRejectBlock)reject;
73
+
74
+ + (void)onConfigUpdated:(NSString *)appName;
75
+
76
+ + (void)removeConfigUpdateRegistration:(NSString *)appName;
77
+
78
+ + (void)removeAllConfigUpdateRegistrations;
79
+
80
+ + (void)setCustomSignals:(NSString *)appName
81
+ customSignals:(NSDictionary *)customSignals
82
+ resolve:(RCTPromiseResolveBlock)resolve
83
+ reject:(RCTPromiseRejectBlock)reject;
84
+
85
+ + (NSDictionary *)getConstantsForAppName:(NSString *)appName;
86
+
87
+ @end
88
+
89
+ NS_ASSUME_NONNULL_END