import type { CallbackID, ClearWatchOptions, GeolocationPlugin, GeolocationPluginPermissions, PermissionStatus, Position, PositionOptions, WatchPositionCallback } from './definitions'; /** * GeolocationHuawei implements the same GeolocationPlugin interface as * @capacitor/geolocation, routing calls through the Huawei JS Bridge. * * getCurrentPosition / clearWatch / checkPermissions / requestPermissions * use the standard request-response bridge. * * watchPosition registers a global push callback so the native side can * continuously deliver position updates via * window.aigensGeolocationWatch(id, position) * window.aigensGeolocationWatchError(id, error) */ export declare class GeolocationHuawei implements GeolocationPlugin { private bridge; private watchCallbacks; /** Buffered positions for watchIds whose callback isn't registered yet (race safety) */ private pendingPositions; private initialized; constructor(); /** * Lazily register global watch push handlers on first watchPosition call. */ private ensureWatchInitialized; getCurrentPosition(options?: PositionOptions): Promise; watchPosition(options: PositionOptions, callback: WatchPositionCallback): Promise; clearWatch(options: ClearWatchOptions): Promise; checkPermissions(): Promise; requestPermissions(permissions?: GeolocationPluginPermissions): Promise; }