/** * Bota Client - Main entry point for the Bota React Native SDK */ import EventEmitter from 'eventemitter3'; import { DeviceManager } from './managers/DeviceManager'; import { RecordingManager } from './managers/RecordingManager'; import { OTAManager } from './managers/OTAManager'; import type { BotaConfig, SdkState, BluetoothState, BotaClientEvents } from './models/Status'; import { type LogHandler } from './utils/logger'; import type { LogLevel } from './models/Status'; /** * Bota Client class - singleton SDK entry point */ declare class BotaClientImpl extends EventEmitter { private _config; private _state; private _bluetoothState; private _bleManager; private _deviceManager; private _recordingManager; private _otaManager; /** * Get current SDK state */ get state(): SdkState; /** * Get current Bluetooth state */ get bluetoothState(): BluetoothState; /** * Check if Bluetooth is ready */ get isBluetoothReady(): boolean; /** * Check if SDK is initialized */ get isInitialized(): boolean; /** * Get current configuration */ get config(): BotaConfig | null; /** * Get device manager */ get devices(): DeviceManager; /** * Get recording manager */ get recordings(): RecordingManager; /** * Get OTA manager */ get ota(): OTAManager; /** * Configure and initialize the SDK */ configure(config?: BotaConfig): Promise; /** * Wait for Bluetooth to be ready */ waitForBluetooth(timeoutMs?: number): Promise; /** * Change the SDK log level at runtime without reinitializing */ setLogLevel(level: LogLevel): void; /** * Set an external log handler to receive SDK log entries */ setLogHandler(handler: LogHandler | null): void; /** * Destroy the SDK and clean up resources */ destroy(): Promise; /** * Set SDK state and emit event */ private setState; } /** * Singleton instance */ export declare const BotaClient: BotaClientImpl; /** * Export types */ export type { BotaConfig, SdkState, BluetoothState }; //# sourceMappingURL=BotaClient.d.ts.map