// This file is generated automatically by Next.js
// Do not edit this file manually
// This file validates that all pages and layouts export the correct types

import type { AppRoutes, LayoutRoutes, ParamMap } from "./routes.js"
import type { ResolvingMetadata, ResolvingViewport } from "next/types.js"

type AppPageConfig<Route extends AppRoutes = AppRoutes> = {
  default: React.ComponentType<{ params: Promise<ParamMap[Route]> } & any> | ((props: { params: Promise<ParamMap[Route]> } & any) => React.ReactNode | Promise<React.ReactNode> | never | void | Promise<void>)
  generateStaticParams?: (props: { params: ParamMap[Route] }) => Promise<any[]> | any[]
  generateMetadata?: (
    props: { params: Promise<ParamMap[Route]> } & any,
    parent: ResolvingMetadata
  ) => Promise<any> | any
  generateViewport?: (
    props: { params: Promise<ParamMap[Route]> } & any,
    parent: ResolvingViewport
  ) => Promise<any> | any
  metadata?: any
  viewport?: any
}

type LayoutConfig<Route extends LayoutRoutes = LayoutRoutes> = {
  default: React.ComponentType<LayoutProps<Route>> | ((props: LayoutProps<Route>) => React.ReactNode | Promise<React.ReactNode> | never | void | Promise<void>)
  generateStaticParams?: (props: { params: ParamMap[Route] }) => Promise<any[]> | any[]
  generateMetadata?: (
    props: { params: Promise<ParamMap[Route]> } & any,
    parent: ResolvingMetadata
  ) => Promise<any> | any
  generateViewport?: (
    props: { params: Promise<ParamMap[Route]> } & any,
    parent: ResolvingViewport
  ) => Promise<any> | any
  metadata?: any
  viewport?: any
}


// Validate ../../src/app/about/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/about">> = Specific
  const handler = {} as typeof import("../../src/app/about/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/admin/add-book/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/admin/add-book">> = Specific
  const handler = {} as typeof import("../../src/app/admin/add-book/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/admin/dashboard/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/admin/dashboard">> = Specific
  const handler = {} as typeof import("../../src/app/admin/dashboard/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/authors/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/authors">> = Specific
  const handler = {} as typeof import("../../src/app/authors/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/books/[slug]/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/books/[slug]">> = Specific
  const handler = {} as typeof import("../../src/app/books/[slug]/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/books/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/books">> = Specific
  const handler = {} as typeof import("../../src/app/books/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/cart/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/cart">> = Specific
  const handler = {} as typeof import("../../src/app/cart/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/checkout/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/checkout">> = Specific
  const handler = {} as typeof import("../../src/app/checkout/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/contact/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/contact">> = Specific
  const handler = {} as typeof import("../../src/app/contact/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/events/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/events">> = Specific
  const handler = {} as typeof import("../../src/app/events/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/institutions/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/institutions">> = Specific
  const handler = {} as typeof import("../../src/app/institutions/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/login/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/login">> = Specific
  const handler = {} as typeof import("../../src/app/login/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/new-arrivals/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/new-arrivals">> = Specific
  const handler = {} as typeof import("../../src/app/new-arrivals/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/">> = Specific
  const handler = {} as typeof import("../../src/app/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/publish-with-us/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/publish-with-us">> = Specific
  const handler = {} as typeof import("../../src/app/publish-with-us/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/register/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/register">> = Specific
  const handler = {} as typeof import("../../src/app/register/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/seller/dashboard/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/seller/dashboard">> = Specific
  const handler = {} as typeof import("../../src/app/seller/dashboard/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/tracking/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/tracking">> = Specific
  const handler = {} as typeof import("../../src/app/tracking/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}

// Validate ../../src/app/user/dashboard/page.tsx
{
  type __IsExpected<Specific extends AppPageConfig<"/user/dashboard">> = Specific
  const handler = {} as typeof import("../../src/app/user/dashboard/page.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}







// Validate ../../src/app/layout.tsx
{
  type __IsExpected<Specific extends LayoutConfig<"/">> = Specific
  const handler = {} as typeof import("../../src/app/layout.js")
  type __Check = __IsExpected<typeof handler>
  // @ts-ignore
  type __Unused = __Check
}
