import { Observable } from "rxjs"; import { OnboardingState } from "./extractOnboardingState"; export type OnboardingStatePollingResult = { onboardingState: OnboardingState | null; allowedError: Error | null; lockedDevice: boolean; }; export type GetOnboardingStatePollingResult = Observable; export type GetOnboardingStatePollingArgs = { deviceId: string; deviceName: string | null; pollingPeriodMs: number; transportAbortTimeoutMs?: number; safeGuardTimeoutMs?: number; allowedErrorChecks?: ((error: unknown) => boolean)[]; }; /** * Polls the device onboarding state at a given frequency * * @param deviceId A device id * @param pollingPeriodMs The period in ms after which the device onboarding state is fetched again * @param transportAbortTimeoutMs Depending on the transport implementation, an "abort timeout" will be set (and throw an error) when: * - opening a transport instance * - on called commands (where `getVersion`) * Default to (pollingPeriodMs - 100) ms * @param safeGuardTimeoutMs For Transport implementations not implementing an "abort timeout", a timeout will be triggered (and throw an error) at this function call level * @returns An Observable that polls the device onboarding state and pushes an object containing: * - onboardingState: the device state during the onboarding * - allowedError: any error that is allowed and does not stop the polling * - lockedDevice: a boolean set to true if the device is currently locked, false otherwise */ export declare const getOnboardingStatePolling: ({ deviceId, deviceName, pollingPeriodMs, transportAbortTimeoutMs, safeGuardTimeoutMs, allowedErrorChecks, }: GetOnboardingStatePollingArgs) => GetOnboardingStatePollingResult; export declare const isAllowedOnboardingStatePollingError: (error: unknown) => boolean; //# sourceMappingURL=getOnboardingStatePolling.d.ts.map