import { Union } from './types'; export declare class AccessControl { #private; constructor(roles: Union); can(role: keyof T, action: keyof P, resource: keyof R): boolean; getRoles(role: keyof T, action: keyof P, resource: keyof R): any; validate(role: keyof T, action: keyof P, resource: keyof R): (args: unknown, context: C) => Promise; filter(role: keyof T, action: keyof P, resource: keyof R): (res: T_1 | Promise) => Promise; } export * from './types';