import type { ColorScheme, SetterResult, SystemBarStyle, SystemBarsStyleInput } from './types.js'; /** * Set the status-bar *content* tint (clock + icons). * * - `'light'` = light content (white-ish icons) — use when behind a dark theme. * - `'dark'` = dark content — use when behind a light theme. * * On iOS the host VC must forward `preferredStatusBarStyle` to * `AppearanceModule.preferredStatusBarStyle` for this to take effect — the * lynx-cli iOS template wires that automatically. * * Resolves `{ ok: false, reason: 'unsupported' }` (never rejects) when the * native module isn't registered — typical in web preview, SSR, tests, or * apps that don't link the module. Fire-and-forget callers can therefore * `void setStatusBarStyle(...)` without risking unhandled rejections. */ export declare function setStatusBarStyle(style: SystemBarStyle): Promise; /** * Android only — set the status-bar background color. Pass `null` (or * omit / pass `'transparent'`) to clear. iOS resolves `{ ok: false, * reason: 'unsupported' }` since iOS has no separate status-bar background. * * On Android 15+ (API 35) edge-to-edge is enforced and this call is a no-op * at the system level — callers should overlay their own background view * inside the safe-area top padding. * * Resolves `{ ok: false, reason: 'unsupported' }` (never rejects) when the * native module isn't registered. See `setStatusBarStyle` for the rationale. */ export declare function setStatusBarBackgroundColor(color: string | null): Promise; /** * Android only — set the navigation-bar content tint + optional background. * iOS resolves `{ ok: false, reason: 'unsupported' }` since there's no * separate navigation bar. * * Resolves `{ ok: false, reason: 'unsupported' }` (never rejects) when the * native module isn't registered. See `setStatusBarStyle` for the rationale. */ export declare function setNavigationBarStyle(opts: { style: SystemBarStyle; color?: string; }): Promise; /** * Convenience: apply status-bar tint + (optionally) status-bar background + * nav-bar tint in one call. Resolves to the aggregate result — `ok: false` * if any leg returned a non-`unsupported` failure, with the first such * failure's reason. `unsupported` legs (e.g. status-bar background on iOS) * are intentionally ignored so a partially-supported platform can still * report success for the legs that do apply. * * Fields are optional; omitting any leaves that surface untouched. Order is * deterministic (statusBar → statusBarBackground → navigationBar) so the * resolved reason on partial failure is unambiguous. */ export declare function setSystemBarsStyle(opts: SystemBarsStyleInput): Promise; /** * Whether the native Appearance module is registered in the current build. * * NOTE: this is a **bare** `isAvailable` at package root, which C2 forbids — * it collides with `@sigx/lynx-sqlite`'s under a barrel import. Renaming it to * `isAppearanceAvailable` is a breaking public change and is escalated to the * package's module-review issue (#866) rather than decided in a sweep; the * violation stays recorded in `scripts/api-conventions-baseline.json`. */ export declare function isAvailable(): boolean; /** * Ask the native module for the color scheme the OS reports *right now*. * * Prefer {@link readGlobalColorScheme} (synchronous, MT-safe) or * `useSystemColorScheme()` (reactive) — the publisher writes * `lynx.__globalProps.appearance` before MT first paint and pushes every flip * as an `appearanceChanged` event, so the sync read is correct in normal use. * This one exists for the two cases the globalProps snapshot can't serve: * * - the module is linked but nothing has published yet (a host that builds its * own LynxView without `AppearancePublisher`), so the sync read is `null`; * - the BG thread's `__globalProps` is a load-time snapshot that does not * follow an in-place OS flip (#990), so code outside the event stream that * needs today's truth has to ask native. * * Resolves `null` — rather than throwing (C3 opt-out, documented here and in * the README's Gotchas) — when the module isn't registered, matching * `readGlobalColorScheme()`'s "unknown, use your default theme" contract and * keeping the whole package non-throwing off-device. A genuine native failure * still throws `[@sigx/lynx-appearance] getColorScheme failed: …` (C4/C10). */ export declare function getColorScheme(): Promise; //# sourceMappingURL=setters.d.ts.map