// For Library Version: 1.149.0 declare namespace sap { namespace rules { /** * UI5 library: sap.rules.ui. */ namespace ui { namespace services { /** * Describes the settings that can be provided to the AstExpressionLanguage constructor. */ interface $AstExpressionLanguageSettings extends sap.ui.core.$ElementSettings { /** * Path to a Vocabulary object in the model data, which is used for the definition of relative context bindings * inside the Ast Expression Language control (mandatory). Example: "/Vocabularies(Id='0050569181751ED683EFEEC6AA2B73C5')" */ bindingContextPath?: | string | sap.ui.base.ManagedObject.PropertyBindingInfo; dataChange?: (oEvent: sap.ui.base.Event) => void; } /** * Describes the settings that can be provided to the ExpressionLanguage constructor. * * @deprecated As of version 1.120.2. use the attribute astExpressionLanguage instead. */ interface $ExpressionLanguageSettings extends sap.ui.core.$ElementSettings { /** * The valueHelpCallback is a function that receives by reference an array of value help metadata and adds * to each item an OData model instance. The OData model is used for suggesting allowed values and for validating * values that are used in the rule. */ valueHelpCallback?: | any | sap.ui.base.ManagedObject.PropertyBindingInfo | `{${string}}`; /** * Path to a Vocabulary object in the model data, which is used for the definition of relative context bindings * inside the Expression Language control (mandatory). Example: "/Vocabularies(Id='0050569181751ED683EFEEC6AA2B73C5')" */ bindingContextPath?: | string | sap.ui.base.ManagedObject.PropertyBindingInfo; dataChange?: (oEvent: sap.ui.base.Event) => void; } /** * Parameters of the AstExpressionLanguage#dataChange event. */ interface AstExpressionLanguage$DataChangeEventParameters {} /** * Parameters of the ExpressionLanguage#dataChange event. */ interface ExpressionLanguage$DataChangeEventParameters {} /** * Provides the AstExpressionLanguage service functionality, such as expression validations, expression * parsing, auto-complete suggestions, retrieving expression metadata and tokens, and performing runtime * services (fetching data objects, outputs, etc). */ class AstExpressionLanguage extends sap.ui.core.Element { /** * Constructor for a new AstExpressionLanguage element. * * Accepts an object literal `mSettings` that defines initial property values, aggregated and associated * objects as well as event handlers. See {@link sap.ui.base.ManagedObject#constructor} for a general description * of the syntax of the settings object. */ constructor(); /** * Creates a new subclass of class sap.rules.ui.services.AstExpressionLanguage with name `sClassName` and * enriches it with the information contained in `oClassInfo`. * * `oClassInfo` might contain the same kind of information as described in {@link sap.ui.core.Element.extend}. * * * @returns Created class / constructor function */ static extend>( /** * Name of the class being created */ sClassName: string, /** * Object literal with information about the class */ oClassInfo?: sap.ClassInfo< T, sap.rules.ui.services.AstExpressionLanguage >, /** * Constructor function for the metadata object; if not given, it defaults to the metadata implementation * used by this class */ FNMetaImpl?: Function ): Function; /** * Returns a metadata object for class sap.rules.ui.services.AstExpressionLanguage. * * * @returns Metadata object describing this class */ static getMetadata(): sap.ui.core.ElementMetadata; /** * Attaches event handler `fnFunction` to the {@link #event:dataChange dataChange} event of this `sap.rules.ui.services.AstExpressionLanguage`. * * When called, the context of the event handler (its `this`) will be bound to `oListener` if specified, * otherwise it will be bound to this `sap.rules.ui.services.AstExpressionLanguage` itself. * * * @returns Reference to `this` in order to allow method chaining */ attachDataChange( /** * An application-specific payload object that will be passed to the event handler along with the event * object when firing the event */ oData: object, /** * The function to be called when the event occurs */ fnFunction: (p1: sap.ui.base.Event) => void, /** * Context object to call the event handler with. Defaults to this `sap.rules.ui.services.AstExpressionLanguage` * itself */ oListener?: object ): this; /** * Attaches event handler `fnFunction` to the {@link #event:dataChange dataChange} event of this `sap.rules.ui.services.AstExpressionLanguage`. * * When called, the context of the event handler (its `this`) will be bound to `oListener` if specified, * otherwise it will be bound to this `sap.rules.ui.services.AstExpressionLanguage` itself. * * * @returns Reference to `this` in order to allow method chaining */ attachDataChange( /** * The function to be called when the event occurs */ fnFunction: (p1: sap.ui.base.Event) => void, /** * Context object to call the event handler with. Defaults to this `sap.rules.ui.services.AstExpressionLanguage` * itself */ oListener?: object ): this; /** * Detaches event handler `fnFunction` from the {@link #event:dataChange dataChange} event of this `sap.rules.ui.services.AstExpressionLanguage`. * * The passed function and listener object must match the ones used for event registration. * * * @returns Reference to `this` in order to allow method chaining */ detachDataChange( /** * The function to be called, when the event occurs */ fnFunction: (p1: sap.ui.base.Event) => void, /** * Context object on which the given function had to be called */ oListener?: object ): this; /** * Fires event {@link #event:dataChange dataChange} to attached listeners. * * @ui5-protected Do not call from applications (only from related classes in the framework) * * @returns Reference to `this` in order to allow method chaining */ fireDataChange( /** * Parameters to pass along with the event */ mParameters?: object ): this; /** * Gets current value of property {@link #getBindingContextPath bindingContextPath}. * * Path to a Vocabulary object in the model data, which is used for the definition of relative context bindings * inside the Ast Expression Language control (mandatory). Example: "/Vocabularies(Id='0050569181751ED683EFEEC6AA2B73C5')" * * * @returns Value of property `bindingContextPath` */ getBindingContextPath(): string; /** * Sets a new value for property {@link #getBindingContextPath bindingContextPath}. * * Path to a Vocabulary object in the model data, which is used for the definition of relative context bindings * inside the Ast Expression Language control (mandatory). Example: "/Vocabularies(Id='0050569181751ED683EFEEC6AA2B73C5')" * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * * @returns Reference to `this` in order to allow method chaining */ setBindingContextPath( /** * New value for property `bindingContextPath` */ sBindingContextPath: string ): this; } /** * Provides the ExpressionLanguage service functionality, such as expression validations, expression parsing, * auto-complete suggestions, retrieving expression metadata and tokens, and performing runtime services * (fetching data objects, outputs, etc). * * @deprecated As of version 1.120.2. use the attribute astExpressionLanguage instead. */ class ExpressionLanguage extends sap.ui.core.Element { /** * Constructor for a new ExpressionLanguage element. * * Accepts an object literal `mSettings` that defines initial property values, aggregated and associated * objects as well as event handlers. See {@link sap.ui.base.ManagedObject#constructor} for a general description * of the syntax of the settings object. */ constructor(); /** * Creates a new subclass of class sap.rules.ui.services.ExpressionLanguage with name `sClassName` and enriches * it with the information contained in `oClassInfo`. * * `oClassInfo` might contain the same kind of information as described in {@link sap.ui.core.Element.extend}. * * * @returns Created class / constructor function */ static extend>( /** * Name of the class being created */ sClassName: string, /** * Object literal with information about the class */ oClassInfo?: sap.ClassInfo< T, sap.rules.ui.services.ExpressionLanguage >, /** * Constructor function for the metadata object; if not given, it defaults to the metadata implementation * used by this class */ FNMetaImpl?: Function ): Function; /** * Returns a metadata object for class sap.rules.ui.services.ExpressionLanguage. * * * @returns Metadata object describing this class */ static getMetadata(): sap.ui.core.ElementMetadata; /** * Attaches event handler `fnFunction` to the {@link #event:dataChange dataChange} event of this `sap.rules.ui.services.ExpressionLanguage`. * * When called, the context of the event handler (its `this`) will be bound to `oListener` if specified, * otherwise it will be bound to this `sap.rules.ui.services.ExpressionLanguage` itself. * * * @returns Reference to `this` in order to allow method chaining */ attachDataChange( /** * An application-specific payload object that will be passed to the event handler along with the event * object when firing the event */ oData: object, /** * The function to be called when the event occurs */ fnFunction: (p1: sap.ui.base.Event) => void, /** * Context object to call the event handler with. Defaults to this `sap.rules.ui.services.ExpressionLanguage` * itself */ oListener?: object ): this; /** * Attaches event handler `fnFunction` to the {@link #event:dataChange dataChange} event of this `sap.rules.ui.services.ExpressionLanguage`. * * When called, the context of the event handler (its `this`) will be bound to `oListener` if specified, * otherwise it will be bound to this `sap.rules.ui.services.ExpressionLanguage` itself. * * * @returns Reference to `this` in order to allow method chaining */ attachDataChange( /** * The function to be called when the event occurs */ fnFunction: (p1: sap.ui.base.Event) => void, /** * Context object to call the event handler with. Defaults to this `sap.rules.ui.services.ExpressionLanguage` * itself */ oListener?: object ): this; /** * Detaches event handler `fnFunction` from the {@link #event:dataChange dataChange} event of this `sap.rules.ui.services.ExpressionLanguage`. * * The passed function and listener object must match the ones used for event registration. * * * @returns Reference to `this` in order to allow method chaining */ detachDataChange( /** * The function to be called, when the event occurs */ fnFunction: (p1: sap.ui.base.Event) => void, /** * Context object on which the given function had to be called */ oListener?: object ): this; /** * Fires event {@link #event:dataChange dataChange} to attached listeners. * * @ui5-protected Do not call from applications (only from related classes in the framework) * * @returns Reference to `this` in order to allow method chaining */ fireDataChange( /** * Parameters to pass along with the event */ mParameters?: object ): this; /** * Gets current value of property {@link #getBindingContextPath bindingContextPath}. * * Path to a Vocabulary object in the model data, which is used for the definition of relative context bindings * inside the Expression Language control (mandatory). Example: "/Vocabularies(Id='0050569181751ED683EFEEC6AA2B73C5')" * * * @returns Value of property `bindingContextPath` */ getBindingContextPath(): string; /** * Separates the expression into individual tokens. * * * @returns [oResult] Returns the tokens and their semantic information. */ getExpressionMetadata( /** * The expression that has to be tokenized. */ sExpression?: string ): object; /** * Provides a context-sensitive suggestion list that assists the business user with the completion of the * input of an expression using the rule expression language. * * * @returns [oResult] Returns valid suggestions for the expression that needs to be completed. If tokenizing * was requested, returns the semantics of the tokens identified in the whole expression. */ getSuggestions( /** * The rule expression to be completed. */ sExpression?: string, /** * The expected business data type of the expression. */ eType?: sap.rules.ui.ExpressionType, /** * Indicates whether the final expression is a collection. */ bCollection?: boolean, /** * Indicates whether to return tokenizing sementics. */ bToken?: boolean ): object; /** * Gets current value of property {@link #getValueHelpCallback valueHelpCallback}. * * The valueHelpCallback is a function that receives by reference an array of value help metadata and adds * to each item an OData model instance. The OData model is used for suggesting allowed values and for validating * values that are used in the rule. * * * @returns Value of property `valueHelpCallback` */ getValueHelpCallback(): any; /** * Sets a new value for property {@link #getBindingContextPath bindingContextPath}. * * Path to a Vocabulary object in the model data, which is used for the definition of relative context bindings * inside the Expression Language control (mandatory). Example: "/Vocabularies(Id='0050569181751ED683EFEEC6AA2B73C5')" * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * * @returns Reference to `this` in order to allow method chaining */ setBindingContextPath( /** * New value for property `bindingContextPath` */ sBindingContextPath: string ): this; /** * Sets the expression language data (vocabulary and metadata). */ setData( /** * Contains the language data */ oData?: object ): void; /** * Sets a new value for property {@link #getValueHelpCallback valueHelpCallback}. * * The valueHelpCallback is a function that receives by reference an array of value help metadata and adds * to each item an OData model instance. The OData model is used for suggesting allowed values and for validating * values that are used in the rule. * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * * @returns Reference to `this` in order to allow method chaining */ setValueHelpCallback( /** * New value for property `valueHelpCallback` */ oValueHelpCallback: any ): this; /** * Validates a given rule expression according to a specific business data type. * * * @returns [oResult] Sends the validation status. In case of success, returns the actual data type of the * whole expression). In case of error, returns error details and cursor position of error. If tokenizing * was requested, returns the semantics of the tokens identified in the whole expression. If value help * use is identified a promise deferredResult is added to the oResult object. deferredResult is resolved * with an oResult object that includes validation results also for value help. */ validateExpression( /** * The expression to be validated. */ sExpression?: string, /** * The expected data type of the expression. */ eType?: sap.rules.ui.ExpressionType, /** * Indicates whether the expression is a collection. */ bCollection?: boolean, /** * Indicates whether to return tokenizing semantics. */ bToken?: boolean ): object; } /** * Event object of the AstExpressionLanguage#dataChange event. */ type AstExpressionLanguage$DataChangeEvent = sap.ui.base.Event< AstExpressionLanguage$DataChangeEventParameters, AstExpressionLanguage >; /** * Event object of the ExpressionLanguage#dataChange event. */ type ExpressionLanguage$DataChangeEvent = sap.ui.base.Event< ExpressionLanguage$DataChangeEventParameters, ExpressionLanguage >; } /** * Describes the settings that can be provided to the DecisionTableConfiguration constructor. */ interface $DecisionTableConfigurationSettings extends sap.ui.core.$ElementSettings { /** * The value determines the user input mode for the corresponding rule cells when creating or editing a * rule. * * @deprecated As of version 1.52.8. use the decisionTableFormat property. */ cellFormat?: | sap.rules.ui.DecisionTableCellFormat | sap.ui.base.ManagedObject.PropertyBindingInfo | `{${string}}`; /** * The value determines how the results of the decision table are evaluated when more than one rule is matched * for a given set of inputs. * * @deprecated As of version 1.120.2. to configure the settings, use the Manage Rules Project app or the * Rule Authoring APIs. */ hitPolicies?: | sap.rules.ui.RuleHitPolicy[] | sap.ui.base.ManagedObject.PropertyBindingInfo | `{${string}}`; /** * The value determines whether the Settings button is displayed in a decision table when the control is * used with S/4 HANA 17.05 (Cloud) or 17.09 (On Premise) and higher (On Premise). * * @deprecated As of version 1.120.2. to configure the settings, use the Manage Rules Project app or the * Rule Authoring APIs. */ enableSettings?: | boolean | sap.ui.base.ManagedObject.PropertyBindingInfo | `{${string}}`; /** * @deprecated As of version 1.120.2. to configure the settings, use the Manage Rules Project app or the * Rule Authoring APIs. */ enableSettingResult?: | boolean | sap.ui.base.ManagedObject.PropertyBindingInfo | `{${string}}`; /** * The value determines whether the user can set the rendering of the decision Table to be based on cellFormat * or rule Format */ decisionTableFormat?: | sap.rules.ui.DecisionTableFormat | sap.ui.base.ManagedObject.PropertyBindingInfo | `{${string}}`; /** * The threshold defines how many additional (not yet visible records) shall be pre-fetched to enable smooth * scrolling. The threshold is always added to the visibleRowCount. If the visibleRowCount is 10 and the * threshold is 100, there will be 110 records fetched with the initial load. */ threshold?: | int | sap.ui.base.ManagedObject.PropertyBindingInfo | `{${string}}`; /** * Number of visible rows of the table. */ visibleRowCount?: | int | sap.ui.base.ManagedObject.PropertyBindingInfo | `{${string}}`; change?: (oEvent: DecisionTableConfiguration$ChangeEvent) => void; } /** * Describes the settings that can be provided to the RuleBuilder constructor. */ interface $RuleBuilderSettings extends sap.ui.core.$ControlSettings { /** * Available types that can be created using the `sap.rules.ui.RuleBuilder` control. If empty, all rule * types will be available for selection. If only one type exists, the Rule Builder will open it automatically. */ types?: | sap.rules.ui.RuleType[] | sap.ui.base.ManagedObject.PropertyBindingInfo | `{${string}}`; /** * Path to a Rule object in the model data, which is used for the definition of relative context bindings * inside the RuleBuilder control (mandatory). Example: "/Rules(Id='0050569181751ED683EFEEC6AA2B73C5',Version='000001')" */ bindingContextPath?: | string | sap.ui.base.ManagedObject.PropertyBindingInfo; /** * Indicates whether or not the controls of the RuleBuilder are editable. */ editable?: | boolean | sap.ui.base.ManagedObject.PropertyBindingInfo | `{${string}}`; /** * Configuration for rule of type 'decision table'. */ decisionTableConfiguration?: sap.rules.ui.DecisionTableConfiguration; /** * Configuration for rule of type 'Text Rule'. */ textRuleConfiguration?: sap.rules.ui.TextRuleConfiguration; /** * Expression language to model English like expressions. Should not be used when sap.rules.ui.services.AstExpressionLanguage * is used. * * @deprecated As of version 1.120.2. use the attribute astExpressionLanguage instead. */ expressionLanguage?: sap.rules.ui.services.ExpressionLanguage | string; /** * Expression language to use DMN SFEEL for modelling expressions. Should not be used when sap.rules.ui.services.ExpressionLanguage * is used. */ astExpressionLanguage?: | sap.rules.ui.services.AstExpressionLanguage | string; } /** * Describes the settings that can be provided to the TextRuleConfiguration constructor. */ interface $TextRuleConfigurationSettings extends sap.ui.core.$ElementSettings { /** * The value determines whether the Settings button is displayed in a Text Rule when the control is used * with S/4 HANA 17.05 (Cloud) or 17.09 (On Premise) and higher (On Premise). * * @deprecated As of version 1.120.2. to configure the settings, use the Manage Rules Project app or the * Rule Authoring APIs. */ enableSettings?: | boolean | sap.ui.base.ManagedObject.PropertyBindingInfo | `{${string}}`; /** * @deprecated As of version 1.120.2. to configure the settings, use the Manage Rules Project app or the * Rule Authoring APIs. */ enableSettingResult?: | boolean | sap.ui.base.ManagedObject.PropertyBindingInfo | `{${string}}`; /** * The value determines whether the Else section is displayed in a Text Rule when the control is used with * S/4 HANA 17.05 (Cloud) or 17.09 (On Premise) and higher (On Premise). */ enableElse?: | boolean | sap.ui.base.ManagedObject.PropertyBindingInfo | `{${string}}`; /** * The value determines whether the Else If section is displayed in a Text Rule when the control is used * with S/4 HANA 17.05 (Cloud) or 17.09 (On Premise) and higher (On Premise). */ enableElseIf?: | boolean | sap.ui.base.ManagedObject.PropertyBindingInfo | `{${string}}`; change?: (oEvent: TextRuleConfiguration$ChangeEvent) => void; } /** * Parameters of the DecisionTableConfiguration#change event. */ interface DecisionTableConfiguration$ChangeEventParameters { name?: undefined; value?: undefined; } /** * Parameters of the TextRuleConfiguration#change event. */ interface TextRuleConfiguration$ChangeEventParameters { name?: undefined; value?: undefined; } /** * The `sap.rules.ui.DecisionTableConfiguration` element provides the ability to define specific properties * that will be applied when rendering the `sap.rules.ui.RuleBuilder` in decision table mode. * * @since 1.4 */ class DecisionTableConfiguration extends sap.ui.core.Element { /** * Constructor for a new DecisionTableConfiguration. * * Accepts an object literal `mSettings` that defines initial property values, aggregated and associated * objects as well as event handlers. See {@link sap.ui.base.ManagedObject#constructor} for a general description * of the syntax of the settings object. */ constructor( /** * initial settings for the new control */ mSettings?: sap.rules.ui.$DecisionTableConfigurationSettings ); /** * Constructor for a new DecisionTableConfiguration. * * Accepts an object literal `mSettings` that defines initial property values, aggregated and associated * objects as well as event handlers. See {@link sap.ui.base.ManagedObject#constructor} for a general description * of the syntax of the settings object. */ constructor( /** * id for the new control, generated automatically if no id is given */ sId?: string, /** * initial settings for the new control */ mSettings?: sap.rules.ui.$DecisionTableConfigurationSettings ); /** * Creates a new subclass of class sap.rules.ui.DecisionTableConfiguration with name `sClassName` and enriches * it with the information contained in `oClassInfo`. * * `oClassInfo` might contain the same kind of information as described in {@link sap.ui.core.Element.extend}. * * * @returns Created class / constructor function */ static extend>( /** * Name of the class being created */ sClassName: string, /** * Object literal with information about the class */ oClassInfo?: sap.ClassInfo< T, sap.rules.ui.DecisionTableConfiguration >, /** * Constructor function for the metadata object; if not given, it defaults to the metadata implementation * used by this class */ FNMetaImpl?: Function ): Function; /** * Returns a metadata object for class sap.rules.ui.DecisionTableConfiguration. * * * @returns Metadata object describing this class */ static getMetadata(): sap.ui.core.ElementMetadata; /** * Attaches event handler `fnFunction` to the {@link #event:change change} event of this `sap.rules.ui.DecisionTableConfiguration`. * * When called, the context of the event handler (its `this`) will be bound to `oListener` if specified, * otherwise it will be bound to this `sap.rules.ui.DecisionTableConfiguration` itself. * * * @returns Reference to `this` in order to allow method chaining */ attachChange( /** * An application-specific payload object that will be passed to the event handler along with the event * object when firing the event */ oData: object, /** * The function to be called when the event occurs */ fnFunction: (p1: DecisionTableConfiguration$ChangeEvent) => void, /** * Context object to call the event handler with. Defaults to this `sap.rules.ui.DecisionTableConfiguration` * itself */ oListener?: object ): this; /** * Attaches event handler `fnFunction` to the {@link #event:change change} event of this `sap.rules.ui.DecisionTableConfiguration`. * * When called, the context of the event handler (its `this`) will be bound to `oListener` if specified, * otherwise it will be bound to this `sap.rules.ui.DecisionTableConfiguration` itself. * * * @returns Reference to `this` in order to allow method chaining */ attachChange( /** * The function to be called when the event occurs */ fnFunction: (p1: DecisionTableConfiguration$ChangeEvent) => void, /** * Context object to call the event handler with. Defaults to this `sap.rules.ui.DecisionTableConfiguration` * itself */ oListener?: object ): this; /** * Detaches event handler `fnFunction` from the {@link #event:change change} event of this `sap.rules.ui.DecisionTableConfiguration`. * * The passed function and listener object must match the ones used for event registration. * * * @returns Reference to `this` in order to allow method chaining */ detachChange( /** * The function to be called, when the event occurs */ fnFunction: (p1: DecisionTableConfiguration$ChangeEvent) => void, /** * Context object on which the given function had to be called */ oListener?: object ): this; /** * Fires event {@link #event:change change} to attached listeners. * * @ui5-protected Do not call from applications (only from related classes in the framework) * * @returns Reference to `this` in order to allow method chaining */ fireChange( /** * Parameters to pass along with the event */ mParameters?: sap.rules.ui.DecisionTableConfiguration$ChangeEventParameters ): this; /** * Gets current value of property {@link #getCellFormat cellFormat}. * * The value determines the user input mode for the corresponding rule cells when creating or editing a * rule. * * Default value is `Both`. * * @deprecated As of version 1.52.8. use the decisionTableFormat property. * * @returns Value of property `cellFormat` */ getCellFormat(): sap.rules.ui.DecisionTableCellFormat; /** * Gets current value of property {@link #getDecisionTableFormat decisionTableFormat}. * * The value determines whether the user can set the rendering of the decision Table to be based on cellFormat * or rule Format * * Default value is `RuleFormat`. * * * @returns Value of property `decisionTableFormat` */ getDecisionTableFormat(): sap.rules.ui.DecisionTableFormat; /** * Gets current value of property {@link #getEnableSettingResult enableSettingResult}. * * Default value is `true`. * * @deprecated As of version 1.120.2. to configure the settings, use the Manage Rules Project app or the * Rule Authoring APIs. * * @returns Value of property `enableSettingResult` */ getEnableSettingResult(): boolean; /** * Gets current value of property {@link #getEnableSettings enableSettings}. * * The value determines whether the Settings button is displayed in a decision table when the control is * used with S/4 HANA 17.05 (Cloud) or 17.09 (On Premise) and higher (On Premise). * * Default value is `false`. * * @deprecated As of version 1.120.2. to configure the settings, use the Manage Rules Project app or the * Rule Authoring APIs. * * @returns Value of property `enableSettings` */ getEnableSettings(): boolean; /** * Gets current value of property {@link #getHitPolicies hitPolicies}. * * The value determines how the results of the decision table are evaluated when more than one rule is matched * for a given set of inputs. * * Default value is `[FirstMatch, AllMatch]`. * * @deprecated As of version 1.120.2. to configure the settings, use the Manage Rules Project app or the * Rule Authoring APIs. * * @returns Value of property `hitPolicies` */ getHitPolicies(): sap.rules.ui.RuleHitPolicy[]; /** * Gets current value of property {@link #getThreshold threshold}. * * The threshold defines how many additional (not yet visible records) shall be pre-fetched to enable smooth * scrolling. The threshold is always added to the visibleRowCount. If the visibleRowCount is 10 and the * threshold is 100, there will be 110 records fetched with the initial load. * * Default value is `30`. * * * @returns Value of property `threshold` */ getThreshold(): int; /** * Gets current value of property {@link #getVisibleRowCount visibleRowCount}. * * Number of visible rows of the table. * * Default value is `30`. * * * @returns Value of property `visibleRowCount` */ getVisibleRowCount(): int; /** * Sets a new value for property {@link #getCellFormat cellFormat}. * * The value determines the user input mode for the corresponding rule cells when creating or editing a * rule. * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * Default value is `Both`. * * @deprecated As of version 1.52.8. use the decisionTableFormat property. * * @returns Reference to `this` in order to allow method chaining */ setCellFormat( /** * New value for property `cellFormat` */ sCellFormat?: sap.rules.ui.DecisionTableCellFormat ): this; /** * Sets a new value for property {@link #getDecisionTableFormat decisionTableFormat}. * * The value determines whether the user can set the rendering of the decision Table to be based on cellFormat * or rule Format * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * Default value is `RuleFormat`. * * * @returns Reference to `this` in order to allow method chaining */ setDecisionTableFormat( /** * New value for property `decisionTableFormat` */ sDecisionTableFormat?: sap.rules.ui.DecisionTableFormat ): this; /** * Sets a new value for property {@link #getEnableSettingResult enableSettingResult}. * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * Default value is `true`. * * @deprecated As of version 1.120.2. to configure the settings, use the Manage Rules Project app or the * Rule Authoring APIs. * * @returns Reference to `this` in order to allow method chaining */ setEnableSettingResult( /** * New value for property `enableSettingResult` */ bEnableSettingResult?: boolean ): this; /** * Sets a new value for property {@link #getEnableSettings enableSettings}. * * The value determines whether the Settings button is displayed in a decision table when the control is * used with S/4 HANA 17.05 (Cloud) or 17.09 (On Premise) and higher (On Premise). * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * Default value is `false`. * * @deprecated As of version 1.120.2. to configure the settings, use the Manage Rules Project app or the * Rule Authoring APIs. * * @returns Reference to `this` in order to allow method chaining */ setEnableSettings( /** * New value for property `enableSettings` */ bEnableSettings?: boolean ): this; /** * Sets a new value for property {@link #getHitPolicies hitPolicies}. * * The value determines how the results of the decision table are evaluated when more than one rule is matched * for a given set of inputs. * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * Default value is `[FirstMatch, AllMatch]`. * * @deprecated As of version 1.120.2. to configure the settings, use the Manage Rules Project app or the * Rule Authoring APIs. * * @returns Reference to `this` in order to allow method chaining */ setHitPolicies( /** * New value for property `hitPolicies` */ sHitPolicies?: sap.rules.ui.RuleHitPolicy[] ): this; /** * Sets a new value for property {@link #getThreshold threshold}. * * The threshold defines how many additional (not yet visible records) shall be pre-fetched to enable smooth * scrolling. The threshold is always added to the visibleRowCount. If the visibleRowCount is 10 and the * threshold is 100, there will be 110 records fetched with the initial load. * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * Default value is `30`. * * * @returns Reference to `this` in order to allow method chaining */ setThreshold( /** * New value for property `threshold` */ iThreshold?: int ): this; /** * Sets a new value for property {@link #getVisibleRowCount visibleRowCount}. * * Number of visible rows of the table. * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * Default value is `30`. * * * @returns Reference to `this` in order to allow method chaining */ setVisibleRowCount( /** * New value for property `visibleRowCount` */ iVisibleRowCount?: int ): this; } /** * The `sap.rules.ui.RuleBuilder` control allows business users to create rules using a business language. */ class RuleBuilder extends sap.ui.core.Control { /** * Constructor for a new RuleBuilder control. * * Accepts an object literal `mSettings` that defines initial property values, aggregated and associated * objects as well as event handlers. See {@link sap.ui.base.ManagedObject#constructor} for a general description * of the syntax of the settings object. */ constructor( /** * Initial settings for the new control. */ mSettings?: sap.rules.ui.$RuleBuilderSettings ); /** * Constructor for a new RuleBuilder control. * * Accepts an object literal `mSettings` that defines initial property values, aggregated and associated * objects as well as event handlers. See {@link sap.ui.base.ManagedObject#constructor} for a general description * of the syntax of the settings object. */ constructor( /** * ID for the new control, generated automatically if no ID is given. */ sId?: string, /** * Initial settings for the new control. */ mSettings?: sap.rules.ui.$RuleBuilderSettings ); /** * Creates a new subclass of class sap.rules.ui.RuleBuilder with name `sClassName` and enriches it with * the information contained in `oClassInfo`. * * `oClassInfo` might contain the same kind of information as described in {@link sap.ui.core.Control.extend}. * * * @returns Created class / constructor function */ static extend>( /** * Name of the class being created */ sClassName: string, /** * Object literal with information about the class */ oClassInfo?: sap.ClassInfo, /** * Constructor function for the metadata object; if not given, it defaults to the metadata implementation * used by this class */ FNMetaImpl?: Function ): Function; /** * Returns a metadata object for class sap.rules.ui.RuleBuilder. * * * @returns Metadata object describing this class */ static getMetadata(): sap.ui.core.ElementMetadata; /** * Destroys the decisionTableConfiguration in the aggregation {@link #getDecisionTableConfiguration decisionTableConfiguration}. * * * @returns Reference to `this` in order to allow method chaining */ destroyDecisionTableConfiguration(): this; /** * Destroys the textRuleConfiguration in the aggregation {@link #getTextRuleConfiguration textRuleConfiguration}. * * * @returns Reference to `this` in order to allow method chaining */ destroyTextRuleConfiguration(): this; /** * ID of the element which is the current target of the association {@link #getAstExpressionLanguage astExpressionLanguage}, * or `null`. */ getAstExpressionLanguage(): sap.ui.core.ID | null; /** * Gets current value of property {@link #getBindingContextPath bindingContextPath}. * * Path to a Rule object in the model data, which is used for the definition of relative context bindings * inside the RuleBuilder control (mandatory). Example: "/Rules(Id='0050569181751ED683EFEEC6AA2B73C5',Version='000001')" * * * @returns Value of property `bindingContextPath` */ getBindingContextPath(): string; /** * Gets content of aggregation {@link #getDecisionTableConfiguration decisionTableConfiguration}. * * Configuration for rule of type 'decision table'. */ getDecisionTableConfiguration(): sap.rules.ui.DecisionTableConfiguration; /** * Gets current value of property {@link #getEditable editable}. * * Indicates whether or not the controls of the RuleBuilder are editable. * * Default value is `true`. * * * @returns Value of property `editable` */ getEditable(): boolean; /** * ID of the element which is the current target of the association {@link #getExpressionLanguage expressionLanguage}, * or `null`. * * @deprecated As of version 1.120.2. use the attribute astExpressionLanguage instead. */ getExpressionLanguage(): sap.ui.core.ID | null; /** * Gets content of aggregation {@link #getTextRuleConfiguration textRuleConfiguration}. * * Configuration for rule of type 'Text Rule'. */ getTextRuleConfiguration(): sap.rules.ui.TextRuleConfiguration; /** * Gets current value of property {@link #getTypes types}. * * Available types that can be created using the `sap.rules.ui.RuleBuilder` control. If empty, all rule * types will be available for selection. If only one type exists, the Rule Builder will open it automatically. * * Default value is `[DecisionTable, TextRule]`. * * * @returns Value of property `types` */ getTypes(): sap.rules.ui.RuleType[]; /** * Sets the associated {@link #getAstExpressionLanguage astExpressionLanguage}. * * * @returns Reference to `this` in order to allow method chaining */ setAstExpressionLanguage( /** * ID of an element which becomes the new target of this astExpressionLanguage association; alternatively, * an element instance may be given */ oAstExpressionLanguage: | sap.ui.core.ID | sap.rules.ui.services.AstExpressionLanguage ): this; /** * Sets a new value for property {@link #getBindingContextPath bindingContextPath}. * * Path to a Rule object in the model data, which is used for the definition of relative context bindings * inside the RuleBuilder control (mandatory). Example: "/Rules(Id='0050569181751ED683EFEEC6AA2B73C5',Version='000001')" * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * * @returns Reference to `this` in order to allow method chaining */ setBindingContextPath( /** * New value for property `bindingContextPath` */ sBindingContextPath: string ): this; /** * Sets the aggregated {@link #getDecisionTableConfiguration decisionTableConfiguration}. * * * @returns Reference to `this` in order to allow method chaining */ setDecisionTableConfiguration( /** * The decisionTableConfiguration to set */ oDecisionTableConfiguration: sap.rules.ui.DecisionTableConfiguration ): this; /** * Sets a new value for property {@link #getEditable editable}. * * Indicates whether or not the controls of the RuleBuilder are editable. * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * Default value is `true`. * * * @returns Reference to `this` in order to allow method chaining */ setEditable( /** * New value for property `editable` */ bEditable?: boolean ): this; /** * Sets the associated {@link #getExpressionLanguage expressionLanguage}. * * @deprecated As of version 1.120.2. use the attribute astExpressionLanguage instead. * * @returns Reference to `this` in order to allow method chaining */ setExpressionLanguage( /** * ID of an element which becomes the new target of this expressionLanguage association; alternatively, * an element instance may be given */ oExpressionLanguage: | sap.ui.core.ID | sap.rules.ui.services.ExpressionLanguage ): this; /** * Sets the aggregated {@link #getTextRuleConfiguration textRuleConfiguration}. * * * @returns Reference to `this` in order to allow method chaining */ setTextRuleConfiguration( /** * The textRuleConfiguration to set */ oTextRuleConfiguration: sap.rules.ui.TextRuleConfiguration ): this; /** * Sets a new value for property {@link #getTypes types}. * * Available types that can be created using the `sap.rules.ui.RuleBuilder` control. If empty, all rule * types will be available for selection. If only one type exists, the Rule Builder will open it automatically. * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * Default value is `[DecisionTable, TextRule]`. * * * @returns Reference to `this` in order to allow method chaining */ setTypes( /** * New value for property `types` */ sTypes?: sap.rules.ui.RuleType[] ): this; } /** * The `sap.rules.ui.TextRuleConfiguration` element provides the ability to define specific properties that * will be applied when rendering the `sap.rules.ui.RuleBuilder` in decision table mode. * * @since 1.4 */ class TextRuleConfiguration extends sap.ui.core.Element { /** * Constructor for a new TextRuleConfiguration. * * Accepts an object literal `mSettings` that defines initial property values, aggregated and associated * objects as well as event handlers. See {@link sap.ui.base.ManagedObject#constructor} for a general description * of the syntax of the settings object. */ constructor( /** * initial settings for the new control */ mSettings?: sap.rules.ui.$TextRuleConfigurationSettings ); /** * Constructor for a new TextRuleConfiguration. * * Accepts an object literal `mSettings` that defines initial property values, aggregated and associated * objects as well as event handlers. See {@link sap.ui.base.ManagedObject#constructor} for a general description * of the syntax of the settings object. */ constructor( /** * id for the new control, generated automatically if no id is given */ sId?: string, /** * initial settings for the new control */ mSettings?: sap.rules.ui.$TextRuleConfigurationSettings ); /** * Creates a new subclass of class sap.rules.ui.TextRuleConfiguration with name `sClassName` and enriches * it with the information contained in `oClassInfo`. * * `oClassInfo` might contain the same kind of information as described in {@link sap.ui.core.Element.extend}. * * * @returns Created class / constructor function */ static extend>( /** * Name of the class being created */ sClassName: string, /** * Object literal with information about the class */ oClassInfo?: sap.ClassInfo, /** * Constructor function for the metadata object; if not given, it defaults to the metadata implementation * used by this class */ FNMetaImpl?: Function ): Function; /** * Returns a metadata object for class sap.rules.ui.TextRuleConfiguration. * * * @returns Metadata object describing this class */ static getMetadata(): sap.ui.core.ElementMetadata; /** * Attaches event handler `fnFunction` to the {@link #event:change change} event of this `sap.rules.ui.TextRuleConfiguration`. * * When called, the context of the event handler (its `this`) will be bound to `oListener` if specified, * otherwise it will be bound to this `sap.rules.ui.TextRuleConfiguration` itself. * * * @returns Reference to `this` in order to allow method chaining */ attachChange( /** * An application-specific payload object that will be passed to the event handler along with the event * object when firing the event */ oData: object, /** * The function to be called when the event occurs */ fnFunction: (p1: TextRuleConfiguration$ChangeEvent) => void, /** * Context object to call the event handler with. Defaults to this `sap.rules.ui.TextRuleConfiguration` * itself */ oListener?: object ): this; /** * Attaches event handler `fnFunction` to the {@link #event:change change} event of this `sap.rules.ui.TextRuleConfiguration`. * * When called, the context of the event handler (its `this`) will be bound to `oListener` if specified, * otherwise it will be bound to this `sap.rules.ui.TextRuleConfiguration` itself. * * * @returns Reference to `this` in order to allow method chaining */ attachChange( /** * The function to be called when the event occurs */ fnFunction: (p1: TextRuleConfiguration$ChangeEvent) => void, /** * Context object to call the event handler with. Defaults to this `sap.rules.ui.TextRuleConfiguration` * itself */ oListener?: object ): this; /** * Detaches event handler `fnFunction` from the {@link #event:change change} event of this `sap.rules.ui.TextRuleConfiguration`. * * The passed function and listener object must match the ones used for event registration. * * * @returns Reference to `this` in order to allow method chaining */ detachChange( /** * The function to be called, when the event occurs */ fnFunction: (p1: TextRuleConfiguration$ChangeEvent) => void, /** * Context object on which the given function had to be called */ oListener?: object ): this; /** * Fires event {@link #event:change change} to attached listeners. * * @ui5-protected Do not call from applications (only from related classes in the framework) * * @returns Reference to `this` in order to allow method chaining */ fireChange( /** * Parameters to pass along with the event */ mParameters?: sap.rules.ui.TextRuleConfiguration$ChangeEventParameters ): this; /** * Gets current value of property {@link #getEnableElse enableElse}. * * The value determines whether the Else section is displayed in a Text Rule when the control is used with * S/4 HANA 17.05 (Cloud) or 17.09 (On Premise) and higher (On Premise). * * Default value is `true`. * * * @returns Value of property `enableElse` */ getEnableElse(): boolean; /** * Gets current value of property {@link #getEnableElseIf enableElseIf}. * * The value determines whether the Else If section is displayed in a Text Rule when the control is used * with S/4 HANA 17.05 (Cloud) or 17.09 (On Premise) and higher (On Premise). * * Default value is `true`. * * * @returns Value of property `enableElseIf` */ getEnableElseIf(): boolean; /** * Gets current value of property {@link #getEnableSettingResult enableSettingResult}. * * Default value is `true`. * * @deprecated As of version 1.120.2. to configure the settings, use the Manage Rules Project app or the * Rule Authoring APIs. * * @returns Value of property `enableSettingResult` */ getEnableSettingResult(): boolean; /** * Gets current value of property {@link #getEnableSettings enableSettings}. * * The value determines whether the Settings button is displayed in a Text Rule when the control is used * with S/4 HANA 17.05 (Cloud) or 17.09 (On Premise) and higher (On Premise). * * Default value is `false`. * * @deprecated As of version 1.120.2. to configure the settings, use the Manage Rules Project app or the * Rule Authoring APIs. * * @returns Value of property `enableSettings` */ getEnableSettings(): boolean; /** * Sets a new value for property {@link #getEnableElse enableElse}. * * The value determines whether the Else section is displayed in a Text Rule when the control is used with * S/4 HANA 17.05 (Cloud) or 17.09 (On Premise) and higher (On Premise). * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * Default value is `true`. * * * @returns Reference to `this` in order to allow method chaining */ setEnableElse( /** * New value for property `enableElse` */ bEnableElse?: boolean ): this; /** * Sets a new value for property {@link #getEnableElseIf enableElseIf}. * * The value determines whether the Else If section is displayed in a Text Rule when the control is used * with S/4 HANA 17.05 (Cloud) or 17.09 (On Premise) and higher (On Premise). * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * Default value is `true`. * * * @returns Reference to `this` in order to allow method chaining */ setEnableElseIf( /** * New value for property `enableElseIf` */ bEnableElseIf?: boolean ): this; /** * Sets a new value for property {@link #getEnableSettingResult enableSettingResult}. * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * Default value is `true`. * * @deprecated As of version 1.120.2. to configure the settings, use the Manage Rules Project app or the * Rule Authoring APIs. * * @returns Reference to `this` in order to allow method chaining */ setEnableSettingResult( /** * New value for property `enableSettingResult` */ bEnableSettingResult?: boolean ): this; /** * Sets a new value for property {@link #getEnableSettings enableSettings}. * * The value determines whether the Settings button is displayed in a Text Rule when the control is used * with S/4 HANA 17.05 (Cloud) or 17.09 (On Premise) and higher (On Premise). * * When called with a value of `null` or `undefined`, the default value of the property will be restored. * * Default value is `false`. * * @deprecated As of version 1.120.2. to configure the settings, use the Manage Rules Project app or the * Rule Authoring APIs. * * @returns Reference to `this` in order to allow method chaining */ setEnableSettings( /** * New value for property `enableSettings` */ bEnableSettings?: boolean ): this; } /** * An enumeration that defines how a cell in a decision table is formulated by the rule creator. * * This enum is part of the 'sap/rules/ui/library' module export and must be accessed by the property 'DecisionTableCellFormat'. * * @deprecated As of version 1.52.8. use the property decisionTableFormat. */ enum DecisionTableCellFormat { /** * Specifies that both rule formats are available in the decision table; allowing the rule creator to choose * whether to formulate the decision table cells in either the basic or advanced format. */ Both = "BOTH", /** * Specifies that the content of the decision table cell is restricted to values relevant to the data type * of the table column's expression. */ Guided = "GUIDED", /** * Specifies that the content of the decision table cell receives all possible suggestions (relevant functions, * attributes and values) that are relevant to the data type of the table column's expression. */ Text = "TEXT", } /** * An enumeration that decides the rendering format for decisionTable. * * This enum is part of the 'sap/rules/ui/library' module export and must be accessed by the property 'DecisionTableFormat'. */ enum DecisionTableFormat { /** * Specifies that the rendering of a cell is based on cellFormat and each cell can have a different format * during rendering * * @deprecated As of version 1.52.8. use the attribute RuleFormat instead. */ CellFormat = "CELLFORMAT", /** * Specifies that the rendering is at the rule level. The value set here is applicable for all the cells * in the rule. */ RuleFormat = "RULEFORMAT", } /** * An enumeration that defines the different business data types for an expression * * This enum is part of the 'sap/rules/ui/library' module export and must be accessed by the property 'ExpressionType'. */ enum ExpressionType { /** * Specifies that the expression can be of any of the supported business data types. */ All = "All", /** * Specifies that the expression must represent a Boolean data type: true, false. */ Boolean = "Boolean", /** * Specifies that the expression must represent a date only. */ Date = "Date", /** * Specifies that the expression must represent a real number with or without dot-decimal notation. */ Number = "Number", /** * Specifies that the expression must represent a single-quoted UTF-8 encoded string. */ String = "String", /** * Specifies that the expression must represent a time only. */ Time = "Time", /** * Specifies that the expression must represent a time difference in milliseconds. */ TimeSpan = "TimeSpan", /** * Specifies that the expression must represent a date and timestamp. */ Timestamp = "Timestamp", } /** * An enumeration that defines the output when more than one rule in the decision table is matched for a * given set of inputs. * * This enum is part of the 'sap/rules/ui/library' module export and must be accessed by the property 'RuleHitPolicy'. */ enum RuleHitPolicy { /** * Specifies that all conditions that match the input (each matching row in the decision table) are returned * as an output. */ AllMatch = "AM", /** * Specifies that only the first condition that matches the input (the first matching row by order in the * decision table) is returned as an output. */ FirstMatch = "FM", } /** * An enumeration that defines whether the rule is formulated as a table with multiple rules instead of * a rule with a single associated condition. * * This enum is part of the 'sap/rules/ui/library' module export and must be accessed by the property 'RuleType'. */ enum RuleType { /** * Specifies that the rule is formulated as a table that allows complex rules to be visualized according * to an if-then-else logic. */ DecisionTable = "DT", /** * Specifies that the rule is formulated as a single condition, which is written directly in a business * language. */ TextRule = "TextRule", } /** * Event object of the DecisionTableConfiguration#change event. */ type DecisionTableConfiguration$ChangeEvent = sap.ui.base.Event< DecisionTableConfiguration$ChangeEventParameters, DecisionTableConfiguration >; /** * Event object of the TextRuleConfiguration#change event. */ type TextRuleConfiguration$ChangeEvent = sap.ui.base.Event< TextRuleConfiguration$ChangeEventParameters, TextRuleConfiguration >; } } interface IUI5DefineDependencyNames { "sap/rules/ui/DecisionTableConfiguration": undefined; "sap/rules/ui/library": undefined; "sap/rules/ui/RuleBuilder": undefined; "sap/rules/ui/services/AstExpressionLanguage": undefined; "sap/rules/ui/services/ExpressionLanguage": undefined; "sap/rules/ui/TextRuleConfiguration": undefined; } }