import { Rule as AliasTypeRule } from './Rule';
import { Constraint } from './Constraint';
import { ContextEnum } from './ContextEnum';
import { TypeEnum } from './TypeEnum';
/** A configuration rule defines validation to launch when executing an action on a domain (create, trade...). Depending on the extension, the rule may be different */
export interface Rule {
    /** An "and" operator on multiple rules */
    and?: AliasTypeRule[];
    /** Whether this rule is applied or not */
    conditions?: AliasTypeRule;
    /** The constraints of the rule */
    constraints?: Constraint[];
    /** The context on which the rule applies */
    contexts?: ContextEnum[];
    /** The description of the rule */
    description?: string;
    /** The fields with specific rules */
    fields?: AliasTypeRule;
    /** The label of the rule */
    label?: string;
    /** An "or" operator on multiple rules */
    or?: AliasTypeRule[];
    /** The default value used for the rule */
    placeholder?: string;
    /** The type of the object the rule applies on */
    type?: TypeEnum;
}
//# sourceMappingURL=Rule.d.ts.map