Skip to main content

ledger_models/
fintekkers.models.util.rs

1#[allow(clippy::derive_partial_eq_without_eq)]
2#[derive(Clone, PartialEq, ::prost::Message)]
3pub struct LocalTimestampProto {
4    #[prost(message, optional, tag = "1")]
5    pub timestamp: ::core::option::Option<::prost_types::Timestamp>,
6    /// TODO: Need to decide how to model this: <https://en.wikipedia.org/wiki/List_of_time_zone_abbreviations>
7    /// <https://docs.oracle.com/javase/8/docs/api/java/time/ZoneId.html>
8    #[prost(string, tag = "2")]
9    pub time_zone: ::prost::alloc::string::String,
10}
11#[allow(clippy::derive_partial_eq_without_eq)]
12#[derive(Clone, PartialEq, ::prost::Message)]
13pub struct UuidProto {
14    #[prost(bytes = "vec", tag = "1")]
15    pub raw_uuid: ::prost::alloc::vec::Vec<u8>,
16}
17///   uint32 scale = 1;
18#[allow(clippy::derive_partial_eq_without_eq)]
19#[derive(Clone, PartialEq, ::prost::Message)]
20pub struct DecimalValueProto {
21    /// This is a string representation of a float number.
22    /// This will be deprecated in the future for a more space efficient approach
23    #[prost(string, tag = "10")]
24    pub arbitrary_precision_value: ::prost::alloc::string::String,
25}
26#[allow(clippy::derive_partial_eq_without_eq)]
27#[derive(Clone, PartialEq, ::prost::Message)]
28pub struct LocalDateProto {
29    #[prost(uint32, tag = "1")]
30    pub year: u32,
31    #[prost(uint32, tag = "2")]
32    pub month: u32,
33    #[prost(uint32, tag = "3")]
34    pub day: u32,
35}
36/// A currency, identified by its ISO 4217 alpha code (e.g. "USD", "GBP", "EUR").
37/// This is a lightweight alternative to embedding a full CASH_SECURITY SecurityProto
38/// when only the currency code is needed.
39#[allow(clippy::derive_partial_eq_without_eq)]
40#[derive(Clone, PartialEq, ::prost::Message)]
41pub struct CurrencyProto {
42    /// ISO 4217 alpha-3, e.g. "USD", "GBP"
43    #[prost(string, tag = "1")]
44    pub iso_code: ::prost::alloc::string::String,
45}
46#[allow(clippy::derive_partial_eq_without_eq)]
47#[derive(Clone, PartialEq, ::prost::Message)]
48pub struct DateRangeProto {
49    #[prost(string, tag = "1")]
50    pub object_class: ::prost::alloc::string::String,
51    #[prost(string, tag = "2")]
52    pub version: ::prost::alloc::string::String,
53    /// Date Ranges are inclusive of the start and end dates
54    #[prost(message, optional, tag = "10")]
55    pub start: ::core::option::Option<LocalTimestampProto>,
56    #[prost(message, optional, tag = "11")]
57    pub end: ::core::option::Option<LocalTimestampProto>,
58}
59#[allow(clippy::derive_partial_eq_without_eq)]
60#[derive(Clone, PartialEq, ::prost::Message)]
61pub struct Endpoint {
62    /// The IP address that an endpoint is exposed through. The assumption is the IP
63    /// is exposed to internal clients through VPC/Security rules, or to the public
64    /// internet if public-facing
65    #[prost(string, tag = "1")]
66    pub ip: ::prost::alloc::string::String,
67    /// The port that the service is listening to on the specified IP address.
68    #[prost(uint32, tag = "2")]
69    pub port: u32,
70    /// Placeholder for the future. For public-facing traffic a URL will be used, and
71    /// the resolution to IP occurs via DNS.
72    #[prost(string, tag = "3")]
73    pub fully_qualified_url: ::prost::alloc::string::String,
74}