/** * SDK lookup helper. Mirrors the React/Vue/Svelte/Next/Astro * adapters: prefer the explicit instance, fall back to the global * window singleton, return `null` in server / sandboxed contexts. * * Browser-only de-scope (honest limitation, deep-dive #3) * ------------------------------------------------------ * Every `@browsonic/angular` entry point that captures (the * `ErrorHandler`, the `BrowsonicService`, the HTTP reporter, the * router instrumentation) routes its SDK lookup through this helper. * Because `resolveSdk` returns `null` whenever `window` is undefined, * the adapter is effectively BROWSER-ONLY: in a server / SSR / RSC / * edge / worker runtime there is no `window`, the lookup returns * `null`, and every capture path short-circuits to a no-op. * * Consequence: errors thrown during server-side rendering, in Angular * Universal / SSR request handlers, or in any non-browser runtime are * NOT captured by this adapter. Server-side capture is not currently * supported — wire the core `@browsonic/sdk` (or a server-appropriate * transport) directly on the server if you need that coverage. This * is a documented de-scope, not a bug; the `null` return is the * intended behaviour and callers already tolerate it. * * @copyright 2024-2026 Browsonic * @license Apache-2.0 */ import type { Browsonic } from '@browsonic/sdk'; export declare function resolveSdk(explicit?: Browsonic): Browsonic | null; //# sourceMappingURL=resolve-sdk.d.ts.map