Switchboard Extension SDK
Loading...
Searching...
No Matches
Action.hpp
1#pragma once
2
3#include <functional>
4#include <string>
5#include <switchboard/Result.hpp>
6#include <switchboard/SBAny.hpp>
7
8namespace switchboard {
9
10const std::string ACTION_FIELD_NAME = "name";
11const std::string ACTION_FIELD_DESCRIPTION = "description";
12const std::string ACTION_FIELD_PARAMETERS = "parameters";
13const std::string ACTION_FIELD_RETURN_TYPE = "returnType";
14const std::string ACTION_FIELD_RETURN_DESCRIPTION = "returnDescription";
15const std::string ACTION_FIELD_HANDLER = "handler";
16
17const std::string ACTION_PARAMETER_FIELD_NAME = "name";
18const std::string ACTION_PARAMETER_FIELD_DESCRIPTION = "description";
19const std::string ACTION_PARAMETER_FIELD_TYPE = "type";
20const std::string ACTION_PARAMETER_FIELD_IS_OPTIONAL = "isOptional";
21
22const std::string ACTION_PARAMETER_TYPE_BOOLEAN = "boolean";
23const std::string ACTION_PARAMETER_TYPE_FLOAT = "float";
24const std::string ACTION_PARAMETER_TYPE_INT = "int";
25const std::string ACTION_PARAMETER_TYPE_STRING = "string";
26const std::string ACTION_PARAMETER_TYPE_ARRAY = "array";
27const std::string ACTION_PARAMETER_TYPE_OBJECT = "object";
28
29const std::string ACTION_RETURN_TYPE_BOOLEAN = "boolean";
30const std::string ACTION_RETURN_TYPE_FLOAT = "float";
31const std::string ACTION_RETURN_TYPE_INT = "int";
32const std::string ACTION_RETURN_TYPE_STRING = "string";
33const std::string ACTION_RETURN_TYPE_ARRAY = "array";
34const std::string ACTION_RETURN_TYPE_OBJECT = "object";
35
36using ActionHandler = std::function<Result<SBAny>(const SBAnyMap&)>;
37
38}