import type { AppThunk, RootState } from '../store'; import type { Device } from './deviceSlice'; export type WaitForDeviceWhen = 'always' | 'applicationMode' | 'dfuBootLoaderMode' | 'sameTraits' | ((device: Device) => boolean); export interface WaitForDevice { timeout: number; when: WaitForDeviceWhen; once: boolean; skipRefetchDeviceInfo?: boolean; onSuccess?: (device: Device) => void; onFail?: (reason?: string) => void; onCanceled?: () => void; } export interface DeviceAutoSelectState { autoReselect: boolean; device?: Device; disconnectionTime?: number; waitForDevice?: WaitForDevice; autoReconnectTimeout?: number; lastArrivedDeviceId?: number; arrivedButWrongWhen?: boolean; onCancelTimeout?: () => void; } export declare const reducer: import("redux").Reducer, setWaitForDeviceTimeout: import("@reduxjs/toolkit").ActionCreatorWithPayload, clearWaitForDeviceTimeout: import("@reduxjs/toolkit").ActionCreatorWithPayload, setAutoSelectDevice: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, setDisconnectedTime: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, setAutoReselect: import("@reduxjs/toolkit").ActionCreatorWithPayload, setWaitForDevice: import("@reduxjs/toolkit").ActionCreatorWithPayload, setLastArrivedDeviceId: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, setArrivedButWrongWhen: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, setOnCancelTimeout: import("@reduxjs/toolkit").ActionCreatorWithPayload<() => void, "deviceAutoSelect/setOnCancelTimeout">; export declare const getAutoReselectDevice: (state: RootState) => Device | undefined; export declare const getAutoReselect: (state: RootState) => boolean; export declare const getWaitingToAutoReselect: (state: RootState) => boolean; export declare const getWaitingForDeviceTimeout: (state: RootState) => boolean; export declare const getDisconnectionTime: (state: RootState) => number | undefined; export declare const getWaitForDevice: (state: RootState) => WaitForDevice | undefined; export declare const getLastArrivedDeviceId: (state: RootState) => number | undefined; export declare const getArrivedButWrongWhen: (state: RootState) => boolean | undefined; export declare const clearWaitForDevice: () => AppThunk; //# sourceMappingURL=deviceAutoSelectSlice.d.ts.map