Files
wr.do/types/index.d.ts
2025-10-30 17:11:49 +08:00

52 lines
963 B
TypeScript

import { User, UserRole } from "@prisma/client";
import type { Icon } from "lucide-react";
import { Icons } from "@/components/shared/icons";
export type SiteConfig = {
name: string;
description: string;
url: string;
ogImage: string;
mailSupport: string;
links: {
twitter: string;
github: string;
feedback: string;
discord: string;
oichat: string;
};
emailR2Domain: string;
};
export type NavItem = {
title: string;
href: string;
badge?: number;
disabled?: boolean;
external?: boolean;
authorizeOnly?: UserRole;
icon?: keyof typeof Icons;
items?: NavItem[];
};
export type MainNavItem = NavItem;
export type MarketingConfig = {
mainNav: MainNavItem[];
};
export type SidebarNavItem = {
title: string;
items: NavItem[];
authorizeOnly?: UserRole;
icon?: keyof typeof Icons;
};
export type DocsConfig = {
mainNav: MainNavItem[];
sidebarNav: SidebarNavItem[];
};
// declare module "globe.gl";