import { interfaces } from "inversify-express-utils"; import e = require("express"); import { TStringOrNumber } from "../decorators/authorization-policy.decorator"; export declare abstract class AuthProvider implements interfaces.AuthProvider { static Counter: number; cookies: any; headers: any; details: any; request: e.Request; test: any; setRequestData(request: e.Request): this; abstract isAuthenticated(): Promise; abstract isResourceOwner(resourceId: any, resourceType?: any, ...args: any[]): Promise; abstract getUser(req: e.Request, res: e.Response, next: e.NextFunction): Promise; abstract isInRole(...roles: TStringOrNumber[]): Promise; abstract isAllowedTo(...permissions: Array): Promise; getUserData(): Promise; setUserData(userData: T): void; static builder(test?: any): any; }