import { DevInfo, DpValue } from 'tuya-panel-kit';
import { Observable } from 'rxjs/Observable';
import { ActionsObservable } from 'redux-observable';
import 'rxjs/add/observable/fromPromise';
import 'rxjs/add/observable/of';
import 'rxjs/add/observable/merge';
import 'rxjs/add/operator/catch';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/mergeMap';
import 'rxjs/add/operator/partition';
export interface DpState {
    switch: boolean;
    [dpCode: string]: DpValue;
}
export interface Log {
    strCodes: string;
    strIds: string;
    time: string;
    isSend: boolean;
}
declare type Logs = Array<Log>;
declare type UpdateDevInfoPayload = DevInfo;
declare type UpdateDpStatePayload = Partial<DpState> & {
    [key: string]: DpValue;
};
export declare const actions: {
    devInfoChange: import("redux-actions").ActionFunction1<UpdateDevInfoPayload, import("redux-actions").Action<UpdateDevInfoPayload>>;
    deviceChange: import("redux-actions").ActionFunction1<UpdateDevInfoPayload, import("redux-actions").Action<UpdateDevInfoPayload>>;
    responseUpdateDp: import("redux-actions").ActionFunction1<UpdateDpStatePayload, import("redux-actions").Action<UpdateDpStatePayload>>;
    updateDp: import("redux-actions").ActionFunction1<UpdateDpStatePayload, import("redux-actions").Action<UpdateDpStatePayload>>;
    consoleChange: import("redux-actions").ActionFunctionAny<import("redux-actions").Action<any>>;
    clearConsole: import("redux-actions").ActionFunctionAny<import("redux-actions").Action<any>>;
};
export declare type Actions = {
    [K in keyof typeof actions]: ReturnType<typeof actions[K]>;
};
export declare const reducers: {
    dpState: import("redux-actions").ReduxCompatibleReducer<DpState, UpdateDevInfoPayload | UpdateDpStatePayload>;
    devInfo: import("redux-actions").ReduxCompatibleReducer<DevInfo<DpState>, DevInfo<DpState>>;
    logs: import("redux-actions").ReduxCompatibleReducer<Logs, DevInfo<Record<string, import("tuya-panel-kit").DpType>> | UpdateDpStatePayload | undefined>;
    ldvModules: import("@reduxjs/toolkit").Reducer<import("./NativePropsSlice").NativeProps, import("@reduxjs/toolkit").AnyAction>;
};
export declare const epics: ((action$: ActionsObservable<Actions['updateDp']>) => Observable<import("redux-actions").Action<UpdateDpStatePayload>>)[];
export {};
