Skip to main content
Version: Next

ParsedPredicate

ParsedPredicate: { name: "IS"; tags: string[]; } | { caseSensitive: boolean; name: "CONTAINS"; property: string; value: string; } | { name: "EQUALS"; property: string; value: any; } | { name: "INEQUALITY_OPERATOR"; operator: string; property: string; strict: boolean; value: any; } | { name: "NOT"; predicate: ParsedPredicate; } | { caseSensitive: boolean; name: "REGEX"; pattern: RegExp; property: string; }

Details for a predicate from the OLYMPE query API

Type declaration

{ name: "IS"; tags: string[]; }

name

name: "IS"

Checks if the instance has any of the specified tags.

tags

tags: string[]

An array of tags to check against.

{ caseSensitive: boolean; name: "CONTAINS"; property: string; value: string; }

caseSensitive

caseSensitive: boolean

Whether the search should be case-sensitive or not.

name

name: "CONTAINS"

Checks if a string type property contains a specific string value.

property

property: string

The tag of the property being checked.

value

value: string

The value being searched for.

{ name: "EQUALS"; property: string; value: any; }

name

name: "EQUALS"

Checks if a property equals a specific value.

property

property: string

The tag of the property being checked.

value

value: any

The value being compared to.

{ name: "INEQUALITY_OPERATOR"; operator: string; property: string; strict: boolean; value: any; }

name

name: "INEQUALITY_OPERATOR"

Checks if a property is greater than or less than a specific value.

operator

operator: string

The operator being used in the comparison (e.g. <, >).

property

property: string

The tag of the property being compared.

strict

strict: boolean

Whether the comparison should be strict (e.g. "<" vs. "<=").

value

value: any

The value being compared to.

{ name: "NOT"; predicate: ParsedPredicate; }

name

name: "NOT"

Negates a predicate.

predicate

predicate: ParsedPredicate

The predicate being negated.

{ caseSensitive: boolean; name: "REGEX"; pattern: RegExp; property: string; }

caseSensitive

caseSensitive: boolean

Whether the matching should be case-sensitive or not.

name

name: "REGEX"

Checks if a property matches a regular expression pattern.

pattern

pattern: RegExp

The regular expression pattern being matched.

property

property: string

The tag of the property being checked.