import { Observable } from 'rxjs';
import { ActionType } from 'typesafe-actions';
import { ApiClient } from '../../../types';
import { StatefulObserver } from '@equinor/fusion/lib/epic';
import actions from '../actions/access';
import { AccessToken } from '@equinor/fusion/lib/http/apiClients/models/report';
export type Dependencies = {
    clients: ApiClient;
};
/**
 * Epic for access token
 * Will fetch a token on request, cancel on signal and handle error
 * When token is successfully fetched, a refresh will be scehduled
 * Also handles request for refresh (uses store id) and dispatches request for new token
 */
export declare const accessToken: <S extends {
    id: string;
    token: AccessToken;
}>(action$: Observable<ActionType<typeof actions>>, state$: StatefulObserver<S>, { clients }: Dependencies) => Observable<ActionType<typeof actions>>;
export default accessToken;
//# sourceMappingURL=access-token.d.ts.map