export interface IModuleAction {
    [module: string]: string[];
}
export interface IAction {
    module: string;
    action: string;
}
export interface IStatement {
    effect: 'allow' | 'deny';
    action: '*' | string[];
}
export interface IPolicyData {
    version: string | number;
    statement: IStatement[];
}
declare class Policy {
    private actions;
    moduleMap: IModuleAction;
    allowActions: string[];
    denyActions: string[];
    constructor(actions: IAction[]);
    private getModuleMap;
    combinationVerify: (actionStr: string) => boolean;
    multipleVerify: (actions: string | string[]) => boolean;
    singleVerify: (action: string) => boolean;
    addPolicy: (policy: IPolicyData) => void;
    private parseAction;
    private getAllAction;
}
export default Policy;
