//#region src/oauth/browser.d.ts /** * Cross-platform browser launcher used by the Authorization Code * flow. The implementation is intentionally minimal - `child_process` * is enough on every host platform we support and we avoid pulling in * the `open` package as a hard dependency. * * Consumers can override the launcher entirely via the * `openAuthorizationUrl` option to {@link OAuthClient.authorizeCode}. * * @packageDocumentation */ /** * Strategy hook used by tests so the unit suite never opens a real * browser. * * @experimental */ type BrowserOpener = (url: string, signal?: AbortSignal) => Promise; /** * Override the active browser opener. Returns the previous opener so * tests can restore the default at the end of a fixture. * * @experimental */ declare function _setBrowserOpenerForTesting(opener: BrowserOpener | null): BrowserOpener | null; /** * Default cross-platform launcher. Falls back to printing the URL on * platforms where `spawn` returns a non-zero exit code so headless * deployments still surface the URL to the operator. * * @stable */ declare function openInBrowser(url: string, signal?: AbortSignal): Promise; //#endregion export { BrowserOpener, _setBrowserOpenerForTesting, openInBrowser }; //# sourceMappingURL=browser.d.ts.map