import { HttpService } from '../http/http-service';
export declare class Permissions {
    _type: string;
    _roles: {
        ANONYMOUS: {
            actions: string[];
            subject: string[];
        }[];
    };
    _rolesMap: Map<string, any[]>;
    _rules: any[];
    _http: HttpService;
    ability: any;
    constructor();
    defineRole(roleName: string, rules: any[]): void;
    defineRoles(roles: any): void;
    addRole(roleName: string, rules?: any[], activate?: boolean): void;
    removeRole(roleName: string): void;
    addRules(rules: any[], replace?: boolean): void;
    removeRule(rule: any): void;
    removeRules(rules: any[]): void;
    private update;
    loadRules(url: string, replace?: boolean, pluck?: string): Promise<void>;
    registerAbilityInstance(abilityInstance: any): void;
    registerPermissionComponents(componentElements?: any): void;
    rules: any[];
    readonly roles: {
        ANONYMOUS: {
            actions: string[];
            subject: string[];
        }[];
    };
}
