import * as react_jsx_runtime from 'react/jsx-runtime'; import * as React from 'react'; import { ReactNode, JSX } from 'react'; import { NextRequest, NextResponse } from 'next/server'; import { ClassValue } from 'clsx'; type AlertVariant = "default" | "muted" | "success" | "destructive" | "warning" | "info"; declare const Alert: React.ForwardRefExoticComponent & { variant?: AlertVariant; } & React.RefAttributes>; declare const Avatar: { ({ src, className, children, }: { src?: string | null; className?: string; children?: React.ReactNode; }): react_jsx_runtime.JSX.Element; displayName: string; }; type ButtonVariant = "default" | "muted" | "success" | "destructive" | "warning" | "info" | "outline" | "ghost"; type ButtonSizeVariant = "default" | "icon" | "avatar"; declare const Button: React.ForwardRefExoticComponent & { variant?: ButtonVariant; size?: ButtonSizeVariant; } & React.RefAttributes>; declare const Card: React.ForwardRefExoticComponent & React.RefAttributes>; declare const Checkbox: React.ForwardRefExoticComponent, HTMLInputElement>, "ref"> & React.RefAttributes>; declare function cn(...inputs: ClassValue[]): string; declare function CodeBlock({ code, language, }: { code: string; language: string; }): react_jsx_runtime.JSX.Element; declare function DarkModeScript(): null; declare function DarkModeToggle(): react_jsx_runtime.JSX.Element; type FormMessageVariant = "default" | "success" | "error"; declare const Form: React.ForwardRefExoticComponent, HTMLFormElement>, "ref"> & React.RefAttributes>; declare const FormControl: React.ForwardRefExoticComponent & React.RefAttributes>; declare const FormMessage: React.ForwardRefExoticComponent & { variant?: FormMessageVariant; } & React.RefAttributes>; declare const Input: React.ForwardRefExoticComponent, HTMLInputElement>, "ref"> & React.RefAttributes>; declare const Label: React.ForwardRefExoticComponent & React.RefAttributes>; type PaginationOpts = { showRowCount?: boolean; enablePageInput?: boolean; perPageInputType?: "text" | "select" | "none"; perPageOptions?: number[]; buttonVariant?: ButtonVariant; rowSingularLabel?: string; rowPluralLabel?: string; perPageLabel?: string; }; declare function Pagination({ page, totalPages, pageSize, count, opts, }: { page: number; totalPages: number; pageSize: number; count: number; opts?: PaginationOpts; }): react_jsx_runtime.JSX.Element; declare const RichTextEditor: ({ html, name, id, }: { html: string; name: string; id: string; }) => react_jsx_runtime.JSX.Element; declare function SearchInput({ placeholder }: { placeholder?: string; }): react_jsx_runtime.JSX.Element; declare const Select: React.ForwardRefExoticComponent, HTMLSelectElement>, "ref"> & React.RefAttributes>; declare const SelectOption: React.ForwardRefExoticComponent, HTMLOptionElement>, "ref"> & React.RefAttributes>; declare function Sortable({ children, column, }: { children: ReactNode; column: string; }): react_jsx_runtime.JSX.Element; declare const Table: React.ForwardRefExoticComponent & React.RefAttributes>; declare const TableHeader: React.ForwardRefExoticComponent & React.RefAttributes>; declare const TableBody: React.ForwardRefExoticComponent & React.RefAttributes>; declare const TableFooter: React.ForwardRefExoticComponent & React.RefAttributes>; declare const TableRow: React.ForwardRefExoticComponent & React.RefAttributes>; declare const TableHead: React.ForwardRefExoticComponent & React.RefAttributes>; declare const TableCell: React.ForwardRefExoticComponent & React.RefAttributes>; declare const TableCaption: React.ForwardRefExoticComponent & React.RefAttributes>; declare const Textarea: React.ForwardRefExoticComponent, HTMLTextAreaElement>, "ref"> & React.RefAttributes>; type Params = Promise<{ [key: string]: string; }>; type SearchParams = Promise<{ [key: string]: string | undefined; }>; type CustomFormControl = (props: { value?: any; }) => JSX.Element; type CustomFormControlMap = { [key: string]: CustomFormControl; }; type FormControlType = "input" | "textarea" | "checkbox" | "date" | "datetime-local" | "number" | "richtext" | "file" | "json" | "custom"; type FormControlMap = { [key: string]: FormControlType; }; type AdminRowNavProps = { basePath: string; resourcePath: string; row: T; }; type AdminRowNav = (props: AdminRowNavProps) => JSX.Element; type AdminPageNavProps = { basePath: string; resourcePath: string; row?: T; }; type AdminPageNav = (props: AdminPageNavProps) => JSX.Element; type DrizzleTableConfig = { drizzleTable: any; tableName?: string; path?: string; formControlMap?: FormControlMap; customFormControlMap?: CustomFormControlMap; searchBy?: string[]; components?: { RowNav?: AdminRowNav; ViewPageNav?: AdminPageNav; EditPageNav?: AdminPageNav; DeletePageNav?: AdminPageNav; ListPageNav?: AdminPageNav; }; }; type DrizzleTableConfigComplete = { drizzleTable: any; tableName: string; path: string; formControlMap: FormControlMap; customFormControlMap: CustomFormControlMap; searchBy?: string[]; components?: { RowNav?: AdminRowNav; ViewPageNav?: AdminPageNav; EditPageNav?: AdminPageNav; DeletePageNav?: AdminPageNav; ListPageNav?: AdminPageNav; }; }; type DrizzleAdminConfig = { basePath: string; schema: { [key: string]: DrizzleTableConfig; }; db: any; dbDialect: "postgresql" | "mysql" | "sqlite"; paginationOpts?: PaginationOpts; }; type DrizzleAdminConfigComplete = { basePath: string; schema: { [key: string]: DrizzleTableConfigComplete; }; db: any; dbDialect: "postgresql" | "mysql" | "sqlite"; paginationOpts?: PaginationOpts; }; type ColumnDataType = "string" | "boolean" | "number" | "date" | "json"; type ColumnDataTypeMap = { [key: string]: ColumnDataType; }; type SimplifiedColumn = { name: string; dataType: string; }; type Filter = { column: string; operator: string; value: string; }; declare function DrizzleAdmin(props: { params: Params; searchParams: SearchParams; config: DrizzleAdminConfig; }): Promise; declare function DELETE_ROUTE(config: DrizzleAdminConfig): (request: NextRequest) => Promise>; declare function GET_ROUTE(config: DrizzleAdminConfig): (request: NextRequest) => Promise>; declare function PATCH_ROUTE(config: DrizzleAdminConfig): (request: NextRequest) => Promise>; declare function POST_ROUTE(config: DrizzleAdminConfig): (request: NextRequest) => Promise>; declare function PUT_ROUTE(config: DrizzleAdminConfig): (request: NextRequest) => Promise>; export { type AdminPageNav, type AdminPageNavProps, type AdminRowNav, type AdminRowNavProps, Alert, Avatar, Button, Card, Checkbox, CodeBlock, type ColumnDataType, type ColumnDataTypeMap, type CustomFormControl, type CustomFormControlMap, DELETE_ROUTE, DarkModeScript, DarkModeToggle, DrizzleAdmin, type DrizzleAdminConfig, type DrizzleAdminConfigComplete, type DrizzleTableConfig, type DrizzleTableConfigComplete, type Filter, Form, FormControl, type FormControlMap, type FormControlType, FormMessage, GET_ROUTE, Input, Label, PATCH_ROUTE, POST_ROUTE, PUT_ROUTE, Pagination, type PaginationOpts, type Params, RichTextEditor, SearchInput, type SearchParams, Select, SelectOption, type SimplifiedColumn, Sortable, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Textarea, cn };