iota_rest_kv/types.rs
1// Copyright (c) 2025 IOTA Stiftung
2// SPDX-License-Identifier: Apache-2.0
3
4//! This module includes types and useful conversions.
5
6use std::{num::NonZeroUsize, sync::Arc};
7
8use crate::bigtable::KvStoreClient;
9
10/// Represents a shared instance of the application state, used by the
11/// REST API server global [`State`](axum::extract::State).
12pub type SharedRestServerAppState = Arc<RestServerAppState>;
13
14pub struct RestServerAppState {
15 pub kv_store_client: Arc<KvStoreClient>,
16 pub multiget_max_items: NonZeroUsize,
17}