aboutsummaryrefslogtreecommitdiff
path: root/lib/csapi/definitions/push_condition.h
blob: defcebb39e5578b468b3408c1f82247bfb3462b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/******************************************************************************
 * THIS FILE IS GENERATED - ANY EDITS WILL BE OVERWRITTEN
 */

#pragma once

#include "converters.h"


namespace QMatrixClient
{
    // Data structures

    struct PushCondition
    {
        QString kind;
        /// Required for ``event_match`` conditions. The dot-separated field of the
        /// event to match.
        QString key;
        /// Required for ``event_match`` conditions. The glob-style pattern to
        /// match against. Patterns with no special glob characters should be
        /// treated as having asterisks prepended and appended when testing the
        /// condition.
        QString pattern;
        /// Required for ``room_member_count`` conditions. A decimal integer
        /// optionally prefixed by one of, ==, <, >, >= or <=. A prefix of < matches
        /// rooms where the member count is strictly less than the given number and
        /// so forth. If no prefix is present, this parameter defaults to ==.
        QString is;
    };

    QJsonObject toJson(const PushCondition& pod);

    template <> struct FromJsonObject<PushCondition>
    {
        PushCondition operator()(const QJsonObject& jo) const;
    };

} // namespace QMatrixClient