import { AuthConfigs } from "../../types/auth"; import { AuthRouterEndpoint, FileUploadRouterEndpoint, RouterConfig, RouterEndpoint } from "../../types/router-config"; import { ArkosRouteConfig } from "../arkos-router/types"; import { UserArkosConfig } from "../define-config"; export declare const safeCatchAsync: (middleware: any, options?: { type: "error" | "normal"; }) => any; export declare const processMiddleware: (middleware: any, options?: { type: "error" | "normal"; }) => any[]; export declare function getAuthenticationConfig(endpoint: RouterEndpoint | AuthRouterEndpoint | FileUploadRouterEndpoint, modelName: string, authConfigs?: AuthConfigs): boolean | { resource: string; action: string; rule: any; }; /** * Creates a route configuration object for a specific endpoint * @param endpoint - The router endpoint type * @param routeName - The pluralized route name (e.g., "users") * @param path - The path suffix for the route (e.g., "", "/:id", "/many") * @param routerConfig - The router configuration object * @param modelNameInKebab - The model name in kebab-case * @param authConfigs - Authentication configurations * @param validationSchema - Optional validation schema for the endpoint * @returns Route configuration object */ export declare function createRouteConfig(arkosConfig: UserArkosConfig, endpoint: RouterEndpoint | AuthRouterEndpoint | FileUploadRouterEndpoint, routeName: string, path: string, routerConfig: RouterConfig, modelNameInKebab: string, authConfigs: any): ArkosRouteConfig;