@eang/core
Version:
eang - model driven enterprise event processing
29 lines (28 loc) • 1.03 kB
TypeScript
import { Obj } from '../entity.js';
import { RuleEffect, AuthzActionType, Rule } from '../authorizer.js';
import { ObjOptions } from './base.js';
export declare class SecurityPolicyObj extends Obj<'SecurityPolicy'> {
readonly typeOf: "SecurityPolicy";
constructor(opts: ObjOptions);
}
export declare function isSecurityPolicyObj(obj: any): obj is SecurityPolicyObj;
export interface PolicyRuleObjOptions extends ObjOptions {
effect: RuleEffect;
overrideable: boolean;
applicableActions?: AuthzActionType[];
applicableEntityTypes?: string[];
rules?: Rule[];
}
/**
* PolicyRuleObj - A policy rule object using declarative rules.
*/
export declare class PolicyRuleObj extends Obj<'PolicyRule'> {
readonly typeOf: "PolicyRule";
effect: RuleEffect;
overrideable: boolean;
applicableActions?: AuthzActionType[];
applicableEntityTypes?: string[];
rules?: Rule[];
constructor(opts: PolicyRuleObjOptions);
}
export declare function isPolicyRuleObj(obj: any): obj is PolicyRuleObj;