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_HANDLER = "handler";
14
15const std::string ACTION_PARAMETER_FIELD_NAME = "name";
16const std::string ACTION_PARAMETER_FIELD_DESCRIPTION = "description";
17const std::string ACTION_PARAMETER_FIELD_TYPE = "type";
18const std::string ACTION_PARAMETER_FIELD_IS_OPTIONAL = "isOptional";
19
20const std::string ACTION_PARAMETER_TYPE_BOOLEAN = "boolean";
21const std::string ACTION_PARAMETER_TYPE_FLOAT = "float";
22const std::string ACTION_PARAMETER_TYPE_INT = "int";
23const std::string ACTION_PARAMETER_TYPE_STRING = "string";
24const std::string ACTION_PARAMETER_TYPE_OBJECT = "object";
25
26using ActionHandler = std::function<Result<SBAny>(const SBAnyMap&)>;
27
28}