export type NoibuLogLevel = 'none' | 'error' | 'warning' | 'info' | 'debug' | 'verbose'; /** Mirrors the native SessionReplayConfig (kmp/android) plus the JS-only flags. */ export interface NoibuConfig { /** Your Noibu domain endpoint (provided by Noibu). Required. */ domain: string; /** Metroplex ingest host. Leave unset for Noibu production; override for staging/local sinks. */ ingestHost?: string; /** Diagnostic log verbosity. Leave unset for the SDK default (silent in release). */ logLevel?: NoibuLogLevel; /** Capture taps and scrolls (with DXA selectors). Default true. */ trackTouches?: boolean; /** Capture keyboard-focus events (which field was typed in — never the text). Default true. */ trackKeyboard?: boolean; /** Kill switch for ALL network capture (native interceptor and JS monitor). Default true. */ trackNetwork?: boolean; /** Capture uncaught JS errors + unhandled promise rejections + native crashes. Default true. */ trackErrors?: boolean; /** Native automatic page per resumed Activity/Fragment — a no-wiring fallback when the * react-navigation integration isn't used. Default false. */ autoTrackNavigation?: boolean; /** Capture HTTP via the JS fetch/XHR monitor instead of the native OkHttp interceptor. * Cross-platform fallback; leave false unless the native path doesn't fit. Default false. */ captureJsNetwork?: boolean; /** Allow webview hybrid capture (native). Default true. */ trackWebViews?: boolean; /** v0.x alias of [trackWebViews], accepted for migration compatibility. */ enableWebViewCapture?: boolean; }