pub const VERSION: &str = env!("ANGZARR_CLIENT_VERSION");
pub mod builder;
pub mod client;
pub mod convert;
pub mod error;
pub mod handler;
pub mod proto;
pub mod proto_ext;
pub mod router;
pub mod server;
pub mod traits;
pub mod validation;
pub use client::{CommandHandlerClient, DomainClient, QueryClient, SpeculativeClient};
pub use error::{ClientError, Result};
pub use builder::{CommandBuilderExt, QueryBuilderExt};
pub use builder::{decode_event, events_from_response, root_from_cover};
pub use convert::{
full_type_name, full_type_url, now, parse_timestamp, proto_to_uuid, try_unpack, type_matches,
type_name_from_url, type_url, type_url_matches_exact, unpack, uuid_to_proto, TYPE_URL_PREFIX,
};
pub use proto_ext::{
CommandBookExt, CommandPageExt, CoverExt, EditionExt, EventBookExt, EventPageExt, ProtoUuidExt,
UuidExt,
};
pub use router::{
event_book_from,
event_page,
new_event_book,
new_event_book_multi,
pack_event,
BoxedHandlerFactory,
HandlerFactory,
HandlerHOF,
BoxedUpcasterHandler,
UpcasterHandler,
UpcasterHandlerHOF,
UpcasterMode,
UpcasterRouter,
CloudEventsHandler,
CloudEventsProjector,
CloudEventsRouter,
CommandHandlerDomainHandler,
CommandHandlerMode,
CommandHandlerRouter,
CommandRejectedError,
CommandResult,
EventApplier,
EventApplierHOF,
StateFactory,
StateRouter,
ProcessManagerDomainHandler,
ProcessManagerMode,
ProcessManagerResponse,
ProcessManagerRouter,
ProjectorDomainHandler,
ProjectorMode,
ProjectorRouter,
RejectionHandlerResponse,
SagaContext,
SagaDomainHandler,
SagaHandlerResponse,
SagaMode,
SagaRouter,
UnpackAny,
};
pub use handler::{
CloudEventsGrpcHandler, CommandHandlerGrpc, ProcessManagerGrpcHandler, ProjectorHandler,
SagaHandler, StatePacker, UpcasterGrpcHandler, UpcasterHandleClosureFn, UpcasterHandleFn,
};
pub use server::{
run_cloudevents_projector, run_command_handler_server, run_process_manager_server,
run_projector_server, run_saga_server, run_upcaster_server, ServerConfig,
};
pub use validation::{
require_exists, require_non_negative, require_not_empty, require_not_empty_str,
require_not_exists, require_positive, require_status, require_status_not,
};
pub use angzarr_macros::{
aggregate, applies, handles, prepares, process_manager, projector, projects, rejected, saga,
};