#![doc = env!("CARGO_PKG_DESCRIPTION")]
#![forbid(unsafe_code)]
pub mod auth;
pub mod autocomplete;
pub mod classify;
pub mod collate;
pub mod config;
pub mod event;
pub mod extension_event;
pub mod js;
pub mod json;
pub mod message;
pub mod model;
pub mod models;
pub mod rpc;
pub mod session;
pub mod settings;
pub mod sync;
pub mod system_prompt;
pub mod time;
use serde::{Deserialize, Deserializer};
pub(crate) fn present<'de, D, T>(deserializer: D) -> Result<Option<T>, D::Error>
where
D: Deserializer<'de>,
T: Deserialize<'de>,
{
T::deserialize(deserializer).map(Some)
}