// SPDX-License-Identifier: BUSL-1.1

pub mod coordinator;
pub mod handler;
pub mod local_executor;
pub mod merge;
pub mod opcodes;
pub mod partition;
pub mod routing;
pub mod rpc;
pub mod scatter;
pub mod wire;

pub use coordinator::{
    ArrayCoordinator, ArrayWriteCoordParams, CoordSliceResult, coord_delete, coord_put,
    coord_put_partitioned,
};
pub use handler::handle_array_shard_rpc;
pub use local_executor::ArrayLocalExecutor;
pub use merge::{
    ArrayAggPartial, any_truncated_before_horizon_agg, any_truncated_before_horizon_slice,
    merge_slice_rows, reduce_agg_partials,
};
pub use routing::{array_vshard_for_tile, array_vshards_for_slice};
pub use rpc::ShardRpcDispatch;
pub use wire::{
    ArrayShardAggReq, ArrayShardAggResp, ArrayShardDeleteReq, ArrayShardDeleteResp,
    ArrayShardPutReq, ArrayShardPutResp, ArrayShardSliceReq, ArrayShardSliceResp,
    ArrayShardSurrogateBitmapReq, ArrayShardSurrogateBitmapResp,
};
