import { authRouter } from "./auth-router";
import { createRouter, publicQuery } from "./middleware";
import { productRouter } from "./routers/product-router";
import { cartRouter } from "./routers/cart-router";
import { orderRouter } from "./routers/order-router";
import { wishlistRouter } from "./routers/wishlist-router";
import { couponRouter } from "./routers/coupon-router";
import { blogRouter } from "./routers/blog-router";
import { activityRouter } from "./routers/activity-router";
import { contactRouter } from "./routers/contact-router";
import { subscriberRouter } from "./routers/subscriber-router";
import { analyticsRouter } from "./routers/analytics-router";

export const appRouter = createRouter({
  ping: publicQuery.query(() => ({ ok: true, ts: Date.now() })),
  auth: authRouter,
  product: productRouter,
  cart: cartRouter,
  order: orderRouter,
  wishlist: wishlistRouter,
  coupon: couponRouter,
  blog: blogRouter,
  activity: activityRouter,
  contact: contactRouter,
  subscriber: subscriberRouter,
  analytics: analyticsRouter,
});

export type AppRouter = typeof appRouter;
