react-native-acoustic-connect-beta
Version:
BETA: React native plugin for Acoustic Connect
34 lines • 1.9 kB
TypeScript
import { type ConfigPlugin } from '@expo/config-plugins';
import type { ConnectPluginProps } from './withConnectNSE';
export declare const CONFIG_GRADLE_APPLY: string;
/**
* Append the config.gradle `apply from:` line to an app `build.gradle` body.
*
* Idempotent: a no-op when the line is already present, so repeated prebuilds
* (and a prebuild over an already-patched, non-`--clean` project) don't stack
* duplicate applies.
*/
export declare function appendConfigGradleApply(contents: string): string;
/**
* Expo config mod: wire the SDK's config.gradle into the generated Android
* app build so ConnectConfig.json values reach the native assets at build
* time. Without it, the Android SDK ships its committed default collector
* config and the app reports to the wrong endpoint (iOS is unaffected — it
* uses AcousticConnectRNConfig.json via a separate flow).
*/
export declare const withConnectAndroidConfig: ConfigPlugin<ConnectPluginProps>;
/**
* Fail fast at prebuild when push is enabled but `android.package` is absent
* from the configured `google-services.json`. FCM matches its client by package
* name, so a mismatch makes Gradle fail much later at
* `:app:processDebugGoogleServices` with the opaque "No matching client found
* for package name …" — and only after a full prebuild + Gradle config. Surface
* it here, at the moment the native project is (re)generated, with the exact fix
* (CA-144135 §10b). `acoustic-connect doctor` performs the same check up front;
* this is the guard for a developer who runs `expo run:android` directly.
*
* Only the genuine MISMATCH throws. A missing package / googleServicesFile is
* left to `doctor` and the build itself (this mod doesn't duplicate those).
*/
export declare const withConnectAndroidGoogleServicesMatch: ConfigPlugin<ConnectPluginProps>;
//# sourceMappingURL=withConnectAndroidConfig.d.ts.map