1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
use candid::Principal as CandidPrincipal;

/// Represents a wrapper around the `candid::Principal` type.
///
/// This struct is designed to encapsulate a Candid Principal, allowing for
/// integration and usage within Juno hooks contexts.
///
/// # Fields
/// - `value`: The `Principal` this struct wraps.
pub struct DocDataPrincipal {
    pub value: CandidPrincipal,
}

/// Represents a large integer value for document data, particularly useful for interacting with
/// languages or environments that support large numeric types, such as the `bigint` in JavaScript.
///
/// # Fields
/// - `value`: A `u64` integer representing the large numeric value encapsulated by this struct.
pub struct DocDataBigInt {
    pub value: u64,
}