import { i18n, languages } from "./i18next";
import { CommentNodeI, DataType, IsoData, VoteType } from "./interfaces";
import { HttpService, UserService } from "./services";
+import { RequestState } from "./services/HttpService";
let Tribute: any;
if (isBrowser()) {
return typeof window !== "undefined";
}
-export function setIsoData(context: any): IsoData {
+export function setIsoData<T extends Record<string, RequestState<any>>>(
+ context: any
+): IsoData<T> {
// If its the browser, you need to deserialize the data from the window
if (isBrowser()) {
return window.isoData;
return myVote == -1 ? 0 : -1;
}
}
+
+export type RouteDataResponse<T extends Record<string, any>> = {
+ [K in keyof T]: RequestState<Exclude<T[K], undefined>>;
+};