remote_mcp_kernel/microkernel/
types.rs

1//! Type aliases for microkernel server configurations
2//!
3//! This module provides convenient type aliases for common microkernel server
4//! configurations with different OAuth providers and storage backends.
5
6use oauth_provider_rs::{
7    CognitoOAuthHandler, DefaultClientManager, GitHubOAuthHandler, InMemoryStorage,
8};
9
10use super::core::MicrokernelServer;
11
12/// Type alias for GitHub-based microkernel server with InMemoryStorage
13pub type GitHubMicrokernelServer = MicrokernelServer<
14    GitHubOAuthHandler<InMemoryStorage, DefaultClientManager<InMemoryStorage>>,
15    InMemoryStorage,
16>;
17
18/// Type alias for GitHub-based microkernel server with DynamoDBStorage
19pub type GitHubMicrokernelServerDynamoDB<S> =
20    MicrokernelServer<GitHubOAuthHandler<S, DefaultClientManager<S>>, S>;
21
22/// Type alias for Cognito-based microkernel server with InMemoryStorage
23pub type CognitoMicrokernelServer = MicrokernelServer<
24    CognitoOAuthHandler<InMemoryStorage, DefaultClientManager<InMemoryStorage>>,
25    InMemoryStorage,
26>;
27
28/// Type alias for Cognito-based microkernel server with DynamoDBStorage
29pub type CognitoMicrokernelServerDynamoDB<S> =
30    MicrokernelServer<CognitoOAuthHandler<S, DefaultClientManager<S>>, S>;