import { IDevKnativeEventingPkgApisEventingV1SubscriptionsAPIFilter } from "./SubscriptionsAPIFilter.js"; import { ModelData, Model } from "@kubernetes-models/base"; /** * SubscriptionsAPIFilter allows defining a filter expression using CloudEvents * Subscriptions API. If multiple filters are specified, then the same semantics * of SubscriptionsAPIFilter.All is applied. If no filter dialect or empty * object is specified, then the filter always accept the events. */ export interface ISubscriptionsAPIFilter { /** * All evaluates to true if all the nested expressions evaluate to true. * It must contain at least one filter expression. */ "all"?: Array; /** * Any evaluates to true if at least one of the nested expressions evaluates * to true. It must contain at least one filter expression. */ "any"?: Array; /** * CESQL is a CloudEvents SQL expression that will be evaluated to true or false against each CloudEvent. */ "cesql"?: string; /** * Exact evaluates to true if the values of the matching CloudEvents attributes MUST * all exactly match with the associated value String specified (case-sensitive). * The keys are the names of the CloudEvents attributes to be matched, * and their values are the String values to use in the comparison. * The attribute name and value specified in the filter express MUST NOT be * empty strings. */ "exact"?: { [key: string]: string; }; /** * Not evaluates to true if the nested expression evaluates to false. */ "not"?: IDevKnativeEventingPkgApisEventingV1SubscriptionsAPIFilter; /** * Prefix evaluates to true if the values of the matching CloudEvents attributes MUST * all start with the associated value String specified (case sensitive). * The keys are the names of the CloudEvents attributes to be matched, * and their values are the String values to use in the comparison. * The attribute name and value specified in the filter express MUST NOT be * empty strings. */ "prefix"?: { [key: string]: string; }; /** * Suffix evaluates to true if the values of the matching CloudEvents attributes MUST * all end with the associated value String specified (case sensitive). * The keys are the names of the CloudEvents attributes to be matched, * and their values are the String values to use in the comparison. * The attribute name and value specified in the filter express MUST NOT be * empty strings. */ "suffix"?: { [key: string]: string; }; } /** * SubscriptionsAPIFilter allows defining a filter expression using CloudEvents * Subscriptions API. If multiple filters are specified, then the same semantics * of SubscriptionsAPIFilter.All is applied. If no filter dialect or empty * object is specified, then the filter always accept the events. */ export declare class SubscriptionsAPIFilter extends Model implements ISubscriptionsAPIFilter { "all"?: Array; "any"?: Array; "cesql"?: string; "exact"?: { [key: string]: string; }; "not"?: IDevKnativeEventingPkgApisEventingV1SubscriptionsAPIFilter; "prefix"?: { [key: string]: string; }; "suffix"?: { [key: string]: string; }; constructor(data?: ModelData); } export type { ISubscriptionsAPIFilter as IDevKnativeEventingPkgApisEventingV1SubscriptionsAPIFilter, SubscriptionsAPIFilter as DevKnativeEventingPkgApisEventingV1SubscriptionsAPIFilter };