UNPKG

we0-cms-supabase-api

Version:

A CMS API package for Next.js applications with Supabase and dynamic table management

106 lines (105 loc) 3.63 kB
import { NextRequest, NextResponse } from "next/server"; import { createModel, deleteModel, getModels, updateModel } from "../handlers/models"; export declare function createModelRoute(): { GET: typeof getModels; POST: typeof createModel; PUT: typeof updateModel; DELETE: typeof deleteModel; }; export declare function createDataRoute(tableName: string): { GET: (request: NextRequest) => Promise<NextResponse<unknown>>; POST: (request: NextRequest) => Promise<NextResponse<unknown>>; PUT: (request: NextRequest) => Promise<NextResponse<unknown>>; DELETE: (request: NextRequest) => Promise<NextResponse<unknown>>; }; export declare function createDynamicDataRoute(): { GET: (request: NextRequest, context: { params: Promise<{ tableName: string; }>; }) => Promise<NextResponse<unknown>>; POST: (request: NextRequest, context: { params: Promise<{ tableName: string; }>; }) => Promise<NextResponse<unknown>>; PUT: (request: NextRequest, context: { params: Promise<{ tableName: string; }>; }) => Promise<NextResponse<unknown>>; DELETE: (request: NextRequest, context: { params: Promise<{ tableName: string; }>; }) => Promise<NextResponse<unknown>>; }; export declare function createDynamicAuthRoute(): { login: (request: NextRequest, context: { params: Promise<{ tableName: string; }>; }) => Promise<NextResponse<unknown>>; getCurrentUser: (request: NextRequest, context: { params: Promise<{ tableName: string; }>; }) => Promise<NextResponse<unknown>>; verifyAuth: (request: NextRequest, context: { params: Promise<{ tableName: string; }>; }) => Promise<NextResponse<unknown>>; }; export declare function createAuthRoute(tableName: string): { login: (request: NextRequest) => Promise<NextResponse<unknown>>; getCurrentUser: (request: NextRequest) => Promise<NextResponse<unknown>>; verifyAuth: (request: NextRequest) => Promise<NextResponse<unknown>>; }; export declare function createCmsRoutes(): { models: { GET: typeof getModels; POST: typeof createModel; PUT: typeof updateModel; DELETE: typeof deleteModel; }; data: { GET: (request: NextRequest, context: { params: Promise<{ tableName: string; }>; }) => Promise<NextResponse<unknown>>; POST: (request: NextRequest, context: { params: Promise<{ tableName: string; }>; }) => Promise<NextResponse<unknown>>; PUT: (request: NextRequest, context: { params: Promise<{ tableName: string; }>; }) => Promise<NextResponse<unknown>>; DELETE: (request: NextRequest, context: { params: Promise<{ tableName: string; }>; }) => Promise<NextResponse<unknown>>; }; auth: { login: (request: NextRequest, context: { params: Promise<{ tableName: string; }>; }) => Promise<NextResponse<unknown>>; getCurrentUser: (request: NextRequest, context: { params: Promise<{ tableName: string; }>; }) => Promise<NextResponse<unknown>>; verifyAuth: (request: NextRequest, context: { params: Promise<{ tableName: string; }>; }) => Promise<NextResponse<unknown>>; }; };