UNPKG

@rbac/rbac

Version:

Blazing Fast, Zero dependency, Hierarchical Role-Based Access Control for Node.js

11 lines (10 loc) 632 B
import type { RBACInstance } from '../types'; import { Request, Response, NextFunction } from 'express'; import { BaseMiddlewareOptions } from './types'; export interface ExpressOptions<P = unknown> extends BaseMiddlewareOptions<P> { getRole?: (req: Request) => string; getParams?: (req: Request) => P; onDenied?: (req: Request, res: Response, next: NextFunction) => void; } export declare const createExpressMiddleware: <P>(rbac: RBACInstance<P>) => (operation: string | RegExp, options?: ExpressOptions<P>) => (req: Request, res: Response, next: NextFunction) => Promise<void>; export default createExpressMiddleware;