#![allow(dead_code)]
#![allow(non_snake_case)]
#![allow(non_camel_case_types)]
#![allow(unused_imports)]
use serde::{Serialize, Deserialize};
use serde_repr::{Deserialize_repr, Serialize_repr};use super::*;
use super::common::*;
use super::notify_ctl::*;
pub struct CurrentStatus {
pub configured: bool,
pub registered: bool,
pub loggedIn: bool,
pub sessionIsValid: bool,
pub user: Option<User>,
}
pub struct SessionStatus {
pub SessionFor: Option<String>,
pub Loaded: bool,
pub Cleared: bool,
pub SaltOnly: bool,
pub Expired: bool,
}
pub struct ClientDetails {
pub pid: i32,
pub clientType: ClientType,
pub argv: Option<Vec<String>>,
pub desc: Option<String>,
pub version: Option<String>,
}
pub struct ClientStatus {
pub details: ClientDetails,
pub connectionID: i32,
pub notificationChannels: NotificationChannels,
}
pub struct PlatformInfo {
pub os: Option<String>,
pub osVersion: Option<String>,
pub arch: Option<String>,
pub goVersion: Option<String>,
}
pub struct LoadDeviceErr {
pub where_: Option<String>,
pub desc: Option<String>,
}
pub struct DirSizeInfo {
pub numFiles: i32,
pub name: Option<String>,
pub humanSize: Option<String>,
}
pub struct ExtendedStatus {
pub standalone: bool,
pub passphraseStreamCached: bool,
pub tsecCached: bool,
pub deviceSigKeyCached: bool,
pub deviceEncKeyCached: bool,
pub paperSigKeyCached: bool,
pub paperEncKeyCached: bool,
pub storedSecret: bool,
pub secretPromptSkip: bool,
pub rememberPassphrase: bool,
pub device: Option<Device>,
pub deviceErr: Option<LoadDeviceErr>,
pub logDir: Option<String>,
pub session: Option<SessionStatus>,
pub defaultUsername: Option<String>,
pub provisionedUsernames: Option<Vec<String>>,
pub configuredAccounts: Option<Vec<ConfiguredAccount>>,
pub Clients: Option<Vec<ClientStatus>>,
pub deviceEkNames: Option<Vec<String>>,
pub platformInfo: PlatformInfo,
pub defaultDeviceID: DeviceID,
pub localDbStats: Option<Vec<String>>,
pub localChatDbStats: Option<Vec<String>>,
pub localBlockCacheDbStats: Option<Vec<String>>,
pub localSyncCacheDbStats: Option<Vec<String>>,
pub cacheDirSizeInfo: Option<Vec<DirSizeInfo>>,
pub uiRouterMapping: std::collections::HashMap<String, i32>,
}
pub struct KbClientStatus {
pub version: Option<String>,
}
pub struct KbServiceStatus {
pub version: Option<String>,
pub running: bool,
pub pid: Option<String>,
pub log: Option<String>,
pub ekLog: Option<String>,
}
pub struct KBFSStatus {
pub version: Option<String>,
pub installedVersion: Option<String>,
pub running: bool,
pub pid: Option<String>,
pub log: Option<String>,
pub mount: Option<String>,
}
pub struct DesktopStatus {
pub version: Option<String>,
pub running: bool,
pub log: Option<String>,
}
pub struct UpdaterStatus {
pub log: Option<String>,
}
pub struct StartStatus {
pub log: Option<String>,
}
pub struct GitStatus {
pub log: Option<String>,
}
pub struct FullStatus {
pub username: Option<String>,
pub configPath: Option<String>,
pub curStatus: CurrentStatus,
pub extStatus: ExtendedStatus,
pub client: KbClientStatus,
pub service: KbServiceStatus,
pub kbfs: KBFSStatus,
pub desktop: DesktopStatus,
pub updater: UpdaterStatus,
pub start: StartStatus,
pub git: GitStatus,
}
pub type LogSendID = String;
pub struct AllProvisionedUsernames {
pub defaultUsername: Option<String>,
pub provisionedUsernames: Option<Vec<String>>,
pub hasProvisionedUser: bool,
}
#[derive(Serialize_repr, Deserialize_repr, Debug, Hash, PartialEq, Eq)]
#[repr(u8)]
pub enum ForkType {
None_0,
Auto_1,
Watchdog_2,
Launchd_3,
Systemd_4,
}
pub struct Config {
pub serverURI: Option<String>,
pub socketFile: Option<String>,
pub label: Option<String>,
pub runMode: Option<String>,
pub gpgExists: bool,
pub gpgPath: Option<String>,
pub version: Option<String>,
pub path: Option<String>,
pub binaryRealpath: Option<String>,
pub configPath: Option<String>,
pub versionShort: Option<String>,
pub versionFull: Option<String>,
pub isAutoForked: bool,
pub forkType: ForkType,
}
pub struct ConfigValue {
pub isNull: bool,
pub b: Option<bool>,
pub i: Option<i32>,
pub s: Option<String>,
pub o: Option<String>,
}
pub struct OutOfDateInfo {
pub upgradeTo: Option<String>,
pub upgradeURI: Option<String>,
pub customMessage: Option<String>,
pub criticalClockSkew: i64,
}
#[derive(Serialize_repr, Deserialize_repr, Debug, Hash, PartialEq, Eq)]
#[repr(u8)]
pub enum UpdateInfoStatus {
Up_to_date_0,
Need_update_1,
Critically_out_of_date_2,
}
pub struct UpdateInfo {
pub status: UpdateInfoStatus,
pub message: Option<String>,
}
pub struct BootstrapStatus {
pub registered: bool,
pub loggedIn: bool,
pub uid: UID,
pub username: Option<String>,
pub deviceID: DeviceID,
pub deviceName: Option<String>,
pub fullname: FullName,
pub userReacjis: UserReacjis,
pub httpSrvInfo: Option<HttpSrvInfo>,
}
#[derive(Serialize_repr, Deserialize_repr, Debug, Hash, PartialEq, Eq)]
#[repr(u8)]
pub enum UpdateInfoStatus2 {
Ok_0,
Suggested_1,
Critical_2,
}
pub struct UpdateDetails {
pub message: Option<String>,
}
pub enum UpdateInfo2 {
Ok {ok: ()},
Suggested {suggested: UpdateDetails},
Critical {critical: UpdateDetails},
}
#[derive(Serialize_repr, Deserialize_repr, Debug, Hash, PartialEq, Eq)]
#[repr(u8)]
pub enum ProxyType {
No_proxy_0,
Http_connect_1,
Socks_2,
}
pub struct ProxyData {
pub addressWithPort: Option<String>,
pub proxyType: ProxyType,
pub certPinning: bool,
}