Skip to main content

shaperail_core/
lib.rs

1//! # shaperail-core
2//!
3//! Shared foundation types for the Shaperail framework.
4//!
5//! This crate defines the core data structures that all other Shaperail crates
6//! consume: resource definitions, field types, endpoint specs, error handling,
7//! and project configuration.
8
9mod channel;
10mod config;
11mod endpoint;
12mod error;
13mod field_type;
14mod relation;
15mod resource;
16mod schema;
17
18pub use channel::{ChannelDefinition, ChannelHooks, WsClientMessage, WsServerMessage};
19pub use config::{
20    AuthConfig, CacheConfig, DatabaseConfig, EventSubscriber, EventTarget, EventsConfig,
21    InboundWebhookConfig, LoggingConfig, ProjectConfig, StorageConfig, WebhookConfig, WorkerCount,
22};
23pub use endpoint::{AuthRule, CacheSpec, EndpointSpec, HttpMethod, PaginationStyle, UploadSpec};
24pub use error::{FieldError, ShaperailError};
25pub use field_type::FieldType;
26pub use relation::{IndexSpec, RelationSpec, RelationType};
27pub use resource::ResourceDefinition;
28pub use schema::FieldSchema;