apollo-link-refresh-token
Version:
A link to refresh auth tokens on authentication errors
20 lines (19 loc) • 1.09 kB
TypeScript
import { GraphQLError } from 'graphql';
declare type FetchNewAccessToken = (refreshToken: string) => Promise<string | undefined>;
declare type IsUnauthenticatedError = (graphQLError: GraphQLError) => boolean;
declare type GetToken = () => string | undefined | null;
declare type IsAccessTokenValid = (accessToken?: string) => boolean;
declare type OnSuccessfulRefetch = (refreshToken?: string) => void;
declare type OnFailedRefresh = (error: any) => void;
interface Options {
isUnauthenticatedError: IsUnauthenticatedError;
getAccessToken: GetToken;
getRefreshToken: GetToken;
isAccessTokenValid: IsAccessTokenValid;
fetchNewAccessToken: FetchNewAccessToken;
authorizationHeaderKey: string;
onSuccessfulRefresh?: OnSuccessfulRefetch;
onFailedRefresh?: OnFailedRefresh;
}
export declare const getRefreshTokenLink: ({ isUnauthenticatedError, getAccessToken, getRefreshToken, isAccessTokenValid, fetchNewAccessToken, authorizationHeaderKey, onSuccessfulRefresh, onFailedRefresh, }: Options) => import("apollo-link").ApolloLink;
export {};