UNPKG

@pulzar/core

Version:

Next-generation Node.js framework for ultra-fast web applications with zero-reflection DI, GraphQL, WebSockets, events, and edge runtime support

46 lines 1.68 kB
import { Request, Response, NextFunction } from "express"; import { I18nContext } from "./i18n"; export interface I18nMiddlewareOptions { queryParam?: string; cookieName?: string; headerName?: string; defaultLanguage?: string; setCookie?: boolean; cookieOptions?: { maxAge?: number; secure?: boolean; httpOnly?: boolean; sameSite?: "strict" | "lax" | "none"; domain?: string; path?: string; }; } export declare class I18nMiddleware { private options; constructor(options?: I18nMiddlewareOptions); /** * Express middleware for i18n */ middleware(): (req: Request, res: Response, next: NextFunction) => void; /** * Parse Accept-Language header */ private parseAcceptLanguage; /** * Get current options */ getOptions(): Required<I18nMiddlewareOptions>; /** * Update options */ updateOptions(options: Partial<I18nMiddlewareOptions>): void; } export declare const i18nMiddleware: I18nMiddleware; export declare function createI18nMiddleware(options?: I18nMiddlewareOptions): (req: Request, res: Response, next: NextFunction) => void; export declare function getI18nContext(req: Request): I18nContext; export declare function getTranslationFunction(req: Request): any; export declare function getCurrentLanguage(req: Request): string; export declare function languageChangeMiddleware(): (req: Request, res: Response, next: NextFunction) => Promise<Response<any, Record<string, any>>>; declare const _default: (req: Request, res: Response, next: NextFunction) => void; export default _default; //# sourceMappingURL=middleware.d.ts.map