import Link from "../../link";
import { ConditionResource } from "./condition-resource";
/**
* Type to allow only certain resource type values.
*/
export type RuleResourceType = "Regular" | "BuiltIn";
/**
* Rule representation for {@link PolicyResource}
*/
export declare class RuleResource {
/**
* Non null collection of entity definition resource links to which this policy applies.
*/
definitions: Array;
/**
* Unique identifier of the rule, usually GUID string.
* This identifier is automatically generated by the system and shall not be set freely by user.
*/
readonly identifier: string;
/**
* Non null collection of conditions which needs to be fulfilled uniformly in order to trigger this rule
* (i.e. conditions are combined with "AND" logical operator).
*/
conditions: Array;
/**
* Non null collection of permissions this rule grands,
*
* @remarks
* The permissions are simple string constants recognized by the system.
*/
permissions: Array;
/**
* If set to true, this rule only applies to entities created by the logged on user.
*/
createdByLoggedOnUser: boolean;
/**
* The type of the rule. It is not applicable when creating resource.
* Indicates if this object is owned by the system and cannot be updated by users.
*
* @remarks
* Possible values are: "Regular" or "BuiltIn".
*/
type: RuleResourceType;
/**
* Indicates if this object is owned by the system and cannot be updated by users.
*/
isSystemOwned: boolean;
constructor(init?: Partial);
}