Skip to main content

lenso_contracts/
lib.rs

1//! Public module-authoring contracts for the Lenso backend framework.
2//!
3//! This crate is deliberately smaller than the backend workspace. It exposes
4//! stable manifest declarations and lint helpers that module authors can use
5//! without depending on internal `platform-*` crates.
6
7mod admin;
8mod admin_schema;
9mod console;
10mod cron;
11mod events;
12mod http;
13mod lifecycle;
14mod manifest;
15mod module_source;
16mod runtime;
17mod story_display;
18
19pub use admin::{
20    AdminAction, AdminActionConfirmation, AdminActionDangerLevel, AdminActionInputField,
21    AdminActionInputSchema, AdminDeclarativeComponent, AdminDeclarativePage,
22    AdminDeclarativeSection, AdminDeclarativeSurface, AdminEmbeddedEntry, AdminEmbeddedRuntime,
23    AdminEmbeddedSurface, AdminMetricBinding, AdminPermission, AdminSandboxPolicy, AdminSurface,
24};
25pub use admin_schema::{AdminSchema, EntitySchema, FieldSchema, FieldType};
26pub use console::{
27    ConsoleArea, ConsoleNavigation, ConsoleNavigationGroup, ConsolePackage, ConsoleSurface,
28    ConsoleWorkspaceRef,
29};
30pub use cron::{CronParseError, CronSchedule, validate_cron_expression};
31pub use events::{EventHandlerDeclaration, EventSurface};
32pub use http::{
33    ModuleHttpMethod, ModuleHttpRoute, ModuleRouteLint, ModuleRouteLintSeverity,
34    lint_module_http_routes,
35};
36pub use lifecycle::{
37    LifecycleActivationJobDeclaration, LifecycleActivationRunPolicy,
38    LifecycleStartupCheckDeclaration, LifecycleStartupCheckKind, LifecycleSurface,
39};
40pub use manifest::{
41    ModuleCapabilityReference, ModuleManifest, ModuleManifestBuilder, ModuleManifestLint,
42    ModuleManifestLintSeverity, lint_module_manifest, lint_module_manifest_parts,
43    module_capability_references,
44};
45pub use module_source::ModuleSource;
46pub use runtime::{
47    RuntimeFunctionDeclaration, RuntimeRetryPolicyDeclaration, RuntimeSurface,
48    ScheduledFunctionDeclaration,
49};
50pub use story_display::{StoryDisplayDescriptor, StoryDisplaySource};