• Returns
        | {
            error: Error;
            invalidate: () => Promise<undefined | User>;
            isLoading: boolean;
            user: null;
        }
        | {
            error: null;
            invalidate: () => Promise<undefined | User>;
            isLoading: boolean;
            user: User;
        }
        | {
            error: undefined;
            invalidate: () => Promise<undefined | User>;
            isLoading: boolean;
            user: undefined;
        }