// This file is generated automatically by Next.js
// Do not edit this file manually

type AppRoutes = "/" | "/about" | "/admin" | "/admin/managePayment" | "/admin/manageProperty" | "/admin/manageRefundRequest" | "/admin/manageTransactions" | "/admin/manageUser" | "/admin/manageWebContent" | "/auth/error" | "/contact" | "/emailverification" | "/forgotResetPassword" | "/login" | "/privacy" | "/properties" | "/signup" | "/terms" | "/userDashboard" | "/userDashboard/MyProperty" | "/userDashboard/PropertyListing" | "/userDashboard/SupportTab" | "/userDashboard/TransactionHistory" | "/userDashboard/UpdateProfile"
type AppRouteHandlerRoutes = "/api/aapi/anlytics" | "/api/aapi/faqs" | "/api/aapi/hero-content" | "/api/aapi/property/assign-property" | "/api/aapi/property/deleteproperty" | "/api/aapi/property/newproperty" | "/api/aapi/property/updateproperty" | "/api/aapi/refund/mark-paid" | "/api/aapi/refund/refund-requests" | "/api/aapi/refund/refundReminders" | "/api/aapi/send-sms" | "/api/aapi/stats" | "/api/aapi/transactions" | "/api/aapi/transactions/updateTransaction" | "/api/aapi/users/deleteuser" | "/api/aapi/users/getUsers" | "/api/aapi/withdrawals" | "/api/aapi/withdrawals/approve" | "/api/auth/[...nextauth]" | "/api/changePassword" | "/api/emailverify" | "/api/forgot-password" | "/api/newsletter/subscribe" | "/api/newsletter/unsubscribe" | "/api/newupload" | "/api/notify" | "/api/notify/getSinglenotification" | "/api/properties" | "/api/property/getproperties" | "/api/property/getsingleproperty" | "/api/property/searchProperty" | "/api/propertyData" | "/api/reset-password" | "/api/sendSupportEmail" | "/api/transactions" | "/api/upload" | "/api/users/analyticss" | "/api/users/checkexituser" | "/api/users/createNewUser" | "/api/users/getBankDetail" | "/api/users/getNextofKinDetail" | "/api/users/getSingleUser" | "/api/users/searchbyemail" | "/api/users/updateuser" | "/api/users/userproperty" | "/api/users/withdraw-contract" | "/api/verifyTransaction" | "/api/verifyTransaction/subsequent-payment" | "/api/webhook"
type PageRoutes = never
type LayoutRoutes = "/" | "/admin" | "/components" | "/userDashboard"
type RedirectRoutes = never
type RewriteRoutes = never
type Routes = AppRoutes | PageRoutes | LayoutRoutes | RedirectRoutes | RewriteRoutes | AppRouteHandlerRoutes


interface ParamMap {
  "/": {}
  "/about": {}
  "/admin": {}
  "/admin/managePayment": {}
  "/admin/manageProperty": {}
  "/admin/manageRefundRequest": {}
  "/admin/manageTransactions": {}
  "/admin/manageUser": {}
  "/admin/manageWebContent": {}
  "/api/aapi/anlytics": {}
  "/api/aapi/faqs": {}
  "/api/aapi/hero-content": {}
  "/api/aapi/property/assign-property": {}
  "/api/aapi/property/deleteproperty": {}
  "/api/aapi/property/newproperty": {}
  "/api/aapi/property/updateproperty": {}
  "/api/aapi/refund/mark-paid": {}
  "/api/aapi/refund/refund-requests": {}
  "/api/aapi/refund/refundReminders": {}
  "/api/aapi/send-sms": {}
  "/api/aapi/stats": {}
  "/api/aapi/transactions": {}
  "/api/aapi/transactions/updateTransaction": {}
  "/api/aapi/users/deleteuser": {}
  "/api/aapi/users/getUsers": {}
  "/api/aapi/withdrawals": {}
  "/api/aapi/withdrawals/approve": {}
  "/api/auth/[...nextauth]": { "nextauth": string[]; }
  "/api/changePassword": {}
  "/api/emailverify": {}
  "/api/forgot-password": {}
  "/api/newsletter/subscribe": {}
  "/api/newsletter/unsubscribe": {}
  "/api/newupload": {}
  "/api/notify": {}
  "/api/notify/getSinglenotification": {}
  "/api/properties": {}
  "/api/property/getproperties": {}
  "/api/property/getsingleproperty": {}
  "/api/property/searchProperty": {}
  "/api/propertyData": {}
  "/api/reset-password": {}
  "/api/sendSupportEmail": {}
  "/api/transactions": {}
  "/api/upload": {}
  "/api/users/analyticss": {}
  "/api/users/checkexituser": {}
  "/api/users/createNewUser": {}
  "/api/users/getBankDetail": {}
  "/api/users/getNextofKinDetail": {}
  "/api/users/getSingleUser": {}
  "/api/users/searchbyemail": {}
  "/api/users/updateuser": {}
  "/api/users/userproperty": {}
  "/api/users/withdraw-contract": {}
  "/api/verifyTransaction": {}
  "/api/verifyTransaction/subsequent-payment": {}
  "/api/webhook": {}
  "/auth/error": {}
  "/components": {}
  "/contact": {}
  "/emailverification": {}
  "/forgotResetPassword": {}
  "/login": {}
  "/privacy": {}
  "/properties": {}
  "/signup": {}
  "/terms": {}
  "/userDashboard": {}
  "/userDashboard/MyProperty": {}
  "/userDashboard/PropertyListing": {}
  "/userDashboard/SupportTab": {}
  "/userDashboard/TransactionHistory": {}
  "/userDashboard/UpdateProfile": {}
}


export type ParamsOf<Route extends Routes> = ParamMap[Route]

interface LayoutSlotMap {
  "/": never
  "/admin": never
  "/components": never
  "/userDashboard": never
}


export type { AppRoutes, PageRoutes, LayoutRoutes, RedirectRoutes, RewriteRoutes, ParamMap, AppRouteHandlerRoutes }

declare global {
  /**
   * Props for Next.js App Router page components
   * @example
   * ```tsx
   * export default function Page(props: PageProps<'/blog/[slug]'>) {
   *   const { slug } = await props.params
   *   return <div>Blog post: {slug}</div>
   * }
   * ```
   */
  interface PageProps<AppRoute extends AppRoutes> {
    params: Promise<ParamMap[AppRoute]>
    searchParams: Promise<Record<string, string | string[] | undefined>>
  }

  /**
   * Props for Next.js App Router layout components
   * @example
   * ```tsx
   * export default function Layout(props: LayoutProps<'/dashboard'>) {
   *   return <div>{props.children}</div>
   * }
   * ```
   */
  type LayoutProps<LayoutRoute extends LayoutRoutes> = {
    params: Promise<ParamMap[LayoutRoute]>
    children: React.ReactNode
  } & {
    [K in LayoutSlotMap[LayoutRoute]]: React.ReactNode
  }

  /**
   * Context for Next.js App Router route handlers
   * @example
   * ```tsx
   * export async function GET(request: NextRequest, context: RouteContext<'/api/users/[id]'>) {
   *   const { id } = await context.params
   *   return Response.json({ id })
   * }
   * ```
   */
  interface RouteContext<AppRouteHandlerRoute extends AppRouteHandlerRoutes> {
    params: Promise<ParamMap[AppRouteHandlerRoute]>
  }
}
