#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct JobId {
#[prost(string, tag = "1")]
pub id: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct VendorId {
#[prost(string, tag = "1")]
pub vendor: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct VendorProfile {
#[prost(string, tag = "1")]
pub vendor: ::prost::alloc::string::String,
#[prost(string, optional, tag = "2")]
pub profile: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct AccountKeys {
#[prost(string, tag = "1")]
pub vendor: ::prost::alloc::string::String,
#[prost(string, optional, tag = "2")]
pub profile: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag = "3")]
pub key_id: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub secret: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct SignIn {
#[prost(string, tag = "1")]
pub url: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ScriptPath {
#[prost(string, tag = "1")]
pub path: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct RunId {
#[prost(uint32, tag = "1")]
pub run: u32,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ScriptSchedule {
#[prost(string, tag = "1")]
pub script: ::prost::alloc::string::String,
#[prost(uint64, tag = "2")]
pub every_secs: u64,
#[prost(string, optional, tag = "3")]
pub cron: ::core::option::Option<::prost::alloc::string::String>,
#[prost(bool, tag = "4")]
pub enabled: bool,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct JobView {
#[prost(string, tag = "1")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub label: ::prost::alloc::string::String,
#[prost(string, optional, tag = "3")]
pub script: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag = "4")]
pub cron: ::core::option::Option<::prost::alloc::string::String>,
#[prost(uint64, tag = "5")]
pub every_secs: u64,
#[prost(bool, tag = "6")]
pub running: bool,
#[prost(uint32, tag = "7")]
pub runs: u32,
#[prost(string, optional, tag = "8")]
pub last_started: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag = "9")]
pub last_finished: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag = "10")]
pub last_result: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag = "11")]
pub last_error: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag = "12")]
pub next_run: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PluginStatusView {
#[prost(oneof = "plugin_status_view::Of", tags = "1, 2")]
pub of: ::core::option::Option<plugin_status_view::Of>,
}
pub mod plugin_status_view {
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)]
pub enum Of {
#[prost(message, tag = "1")]
Reachable(super::PluginStatusViewReachable),
#[prost(message, tag = "2")]
Unreachable(super::PluginStatusViewUnreachable),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PluginStatusViewReachable {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub version: ::prost::alloc::string::String,
#[prost(string, repeated, tag = "3")]
pub capabilities: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PluginStatusViewUnreachable {
#[prost(string, tag = "1")]
pub reason: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PluginView {
#[prost(string, tag = "1")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub address: ::prost::alloc::string::String,
#[prost(message, optional, tag = "3")]
pub status: ::core::option::Option<PluginStatusView>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SignalView {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub description: ::prost::alloc::string::String,
#[prost(bool, tag = "3")]
pub causal: bool,
#[prost(string, tag = "4")]
pub because: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub engine: ::prost::alloc::string::String,
#[prost(string, tag = "6")]
pub at: ::prost::alloc::string::String,
#[prost(double, optional, tag = "7")]
pub value: ::core::option::Option<f64>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct StrategyContributionView {
#[prost(string, tag = "1")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub label: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub premise: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub kind: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub interval: ::prost::alloc::string::String,
#[prost(uint32, tag = "6")]
pub configurations: u32,
#[prost(string, optional, tag = "7")]
pub problem: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct JobsView {
#[prost(message, repeated, tag = "1")]
pub jobs: ::prost::alloc::vec::Vec<JobView>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PluginsView {
#[prost(message, repeated, tag = "1")]
pub plugins: ::prost::alloc::vec::Vec<PluginView>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SignalsView {
#[prost(message, repeated, tag = "1")]
pub signals: ::prost::alloc::vec::Vec<SignalView>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StrategyContributionsView {
#[prost(message, repeated, tag = "1")]
pub contributions: ::prost::alloc::vec::Vec<StrategyContributionView>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ExtensionStrategiesView {
#[prost(map = "string, message", tag = "1")]
pub by_extension: ::std::collections::HashMap<
::prost::alloc::string::String,
StrategyContributionsView,
>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AccountView {
#[prost(string, tag = "1")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub label: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub credential: ::prost::alloc::string::String,
#[prost(bool, tag = "4")]
pub connected: bool,
#[prost(string, repeated, tag = "5")]
pub provides: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag = "6")]
pub sources: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(message, repeated, tag = "7")]
pub subaccounts: ::prost::alloc::vec::Vec<SubAccountView>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct SubAccountView {
#[prost(string, tag = "1")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub label: ::prost::alloc::string::String,
#[prost(bool, tag = "3")]
pub connected: bool,
#[prost(bool, tag = "4")]
pub live: bool,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AccountsView {
#[prost(message, repeated, tag = "1")]
pub accounts: ::prost::alloc::vec::Vec<AccountView>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct EventView {
#[prost(message, optional, tag = "1")]
pub kind: ::core::option::Option<EventKindView>,
#[prost(string, tag = "2")]
pub title: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub detail: ::prost::alloc::string::String,
#[prost(enumeration = "SeverityView", tag = "4")]
pub severity: i32,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct EventKindView {
#[prost(oneof = "event_kind_view::Of", tags = "1, 2, 3, 4, 5, 6")]
pub of: ::core::option::Option<event_kind_view::Of>,
}
pub mod event_kind_view {
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)]
pub enum Of {
#[prost(message, tag = "1")]
Plugin(super::PluginEvent),
#[prost(message, tag = "2")]
Feed(super::FeedEvent),
#[prost(message, tag = "3")]
Stream(super::StreamEvent),
#[prost(message, tag = "4")]
Findings(super::FindingsEvent),
#[prost(message, tag = "5")]
Session(super::SessionEvent),
#[prost(message, tag = "6")]
Library(super::LibraryEvent),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct LibraryEvent {
#[prost(string, tag = "1")]
pub instrument: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub fingerprint: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PluginEvent {
#[prost(string, tag = "1")]
pub id: ::prost::alloc::string::String,
#[prost(bool, tag = "2")]
pub reachable: bool,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct FeedEvent {
#[prost(string, tag = "1")]
pub id: ::prost::alloc::string::String,
#[prost(bool, tag = "2")]
pub connected: bool,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct StreamEvent {
#[prost(bool, tag = "1")]
pub live: bool,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct FindingsEvent {
#[prost(uint32, tag = "1")]
pub count: u32,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct SessionEvent {
#[prost(string, tag = "1")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub state: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ScriptJobView {
#[prost(string, tag = "1")]
pub script: ::prost::alloc::string::String,
#[prost(uint64, tag = "2")]
pub every_secs: u64,
#[prost(string, optional, tag = "3")]
pub cron: ::core::option::Option<::prost::alloc::string::String>,
#[prost(bool, tag = "4")]
pub enabled: bool,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ScriptJobsView {
#[prost(message, repeated, tag = "1")]
pub jobs: ::prost::alloc::vec::Vec<ScriptJobView>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ScriptOutputView {
#[prost(uint32, tag = "1")]
pub run: u32,
#[prost(string, tag = "2")]
pub stream: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub text: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum SeverityView {
Unspecified = 0,
Info = 1,
Warning = 2,
}
impl SeverityView {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "SEVERITY_VIEW_UNSPECIFIED",
Self::Info => "SEVERITY_VIEW_INFO",
Self::Warning => "SEVERITY_VIEW_WARNING",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"SEVERITY_VIEW_UNSPECIFIED" => Some(Self::Unspecified),
"SEVERITY_VIEW_INFO" => Some(Self::Info),
"SEVERITY_VIEW_WARNING" => Some(Self::Warning),
_ => None,
}
}
}