import * as actions from "@nteract/actions";
import { AppState, IContentProvider } from "@nteract/types";
import { Action } from "redux";
import { StateObservable } from "redux-observable";
import { Observable } from "rxjs";
export declare function updateContentEpic(action$: Observable<actions.ChangeContentName>, state$: StateObservable<AppState>, dependencies: {
    contentProvider: IContentProvider;
}): Observable<unknown>;
export declare function fetchContentEpic(action$: Observable<actions.FetchContent | actions.FetchContentFailed | actions.FetchContentFulfilled>, state$: StateObservable<AppState>, dependencies: {
    contentProvider: IContentProvider;
}): Observable<unknown>;
export declare function downloadString(fileContents: string, filepath: string, contentType: string): void;
export declare function autoSaveCurrentContentEpic(action$: Observable<Action>, state$: StateObservable<AppState>): Observable<actions.Save>;
export declare function saveContentEpic(action$: Observable<actions.Save | actions.DownloadContent>, state$: StateObservable<AppState>, dependencies: {
    contentProvider: IContentProvider;
}): Observable<actions.DownloadContentFailed | actions.DownloadContentFulfilled | actions.SaveFailed | actions.SaveFulfilled>;
export declare function saveAsContentEpic(action$: Observable<actions.SaveAs>, state$: StateObservable<AppState>, dependencies: {
    contentProvider: IContentProvider;
}): Observable<actions.SaveAsFailed | actions.SaveAsFulfilled>;
export declare function closeNotebookEpic(action$: Observable<actions.CloseNotebook>, state$: StateObservable<AppState>): Observable<actions.DisposeContent | actions.KillKernelAction>;
