1 import { ErrorPageData } from "@utils/types";
2 import { CommentView, GetSiteResponse } from "lemmy-js-client";
3 import type { ParsedQs } from "qs";
4 import { RequestState, WrappedLemmyHttp } from "./services/HttpService";
7 * This contains serialized data, it needs to be deserialized before use.
9 export interface IsoData<T extends RouteData = any> {
12 site_res: GetSiteResponse;
13 errorPageData?: ErrorPageData;
16 export type IsoDataOptionalSite<T extends RouteData = any> = Partial<
19 Pick<IsoData<T>, Exclude<keyof IsoData<T>, "site_res">>;
27 export interface InitialFetchRequest<T extends ParsedQs = ParsedQs> {
29 client: WrappedLemmyHttp;
32 site: GetSiteResponse;
35 export interface PostFormParams {
41 export enum CommentViewType {
46 export enum DataType {
56 export enum PersonDetailsView {
57 Overview = "Overview",
58 Comments = "Comments",
63 export enum PurgeType {
70 export enum VoteType {
75 export enum VoteContentType {
80 export interface CommentNodeI {
81 comment_view: CommentView;
82 children: Array<CommentNodeI>;
86 export type RouteData = Record<string, RequestState<any>>;