UNPKG

@datadog/mobile-react-native

Version:

A client-side React Native module to interact with Datadog

29 lines 1.52 kB
import type { Bundle, DatadogDebugIdModule, DatadogMetroSerializer, MetroSerializer, MixedOutput, Module, ReadOnlyGraph } from './types/metroTypes'; /** * Creates a Metro serializer that adds a Debug ID module to the bundle. * This module injects the Debug ID at runtime, making it globally accessible. * * @param customSerializer - Optional custom {@link MetroSerializer}. If provided, you are responsible * for invoking `options.datadogBundleCallback` within it. */ export declare const createDatadogMetroSerializer: (customSerializer?: MetroSerializer) => DatadogMetroSerializer; /** * Creates a Metro Bundle Serializer like metro does by default, while also calling the datadogBundleCallback. * https://github.com/facebook/metro/blob/a3d021a0d021b5706372059f472715c63019e044/packages/metro/src/Server.js#L272-L307 */ export declare const createDefaultMetroSerializer: () => MetroSerializer; /** * Creates a callback used to transform the given bundle by injecting the Debug ID snippet. * @param debugIdModule - The virtual Debug ID module * @returns The bundle callback */ export declare const createDatadogBundleCallback: (debugIdModule: DatadogDebugIdModule) => (bundle: Bundle) => Bundle; /** * Adds Debug ID module for runtime injection, used for Expo. */ export declare function unstable_beforeAssetSerializationPlugin({ premodules, debugId }: { graph: ReadOnlyGraph<MixedOutput>; premodules: Module[]; debugId?: string; }): Module[]; //# sourceMappingURL=metroSerializer.d.ts.map