import * as i0 from '@angular/core'; import { Signal } from '@angular/core'; /** * SSR-safe environment probes. Use to gate browser-only code paths and * react to user preferences without scattering `matchMedia` calls around. * * - `isBrowser` / `isServer` — synchronous platform check. * - `userAgent` — `navigator.userAgent` or `null` on the server. * - `prefersDark` — signal mirroring `(prefers-color-scheme: dark)`. * - `prefersReducedMotion` — signal mirroring `(prefers-reduced-motion: reduce)`. * * @example * ```ts * private readonly platform = inject(WrPlatform); * if (this.platform.isBrowser) { * localStorage.setItem('theme', 'dark'); * } * * protected readonly dark = this.platform.prefersDark; * ``` * * @see https://ngwr.dev/services/platform */ declare class WrPlatform { private readonly destroyRef; private readonly doc; readonly isBrowser: boolean; readonly isServer: boolean; readonly userAgent: string | null; readonly prefersDark: Signal; readonly prefersReducedMotion: Signal; private mediaSignal; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } export { WrPlatform };