// Copyright (c) 2025-2026 R3E Network
// Licensed under the MIT License

//! Neo N3 Core Types
//!
//! This crate provides the core types and data structures for Neo N3 smart contract development.

mod array;
mod boolean;
mod bytestring;
mod error;
mod hash;
mod integer;
mod iterator;
mod manifest;
mod map;
mod storage;
mod string;
mod traits;
mod value;

pub use array::NeoArray;
pub use boolean::NeoBoolean;
pub use bytestring::NeoByteString;
pub use error::{NeoError, NeoResult};
pub use hash::{Hash160, Hash256};
pub use integer::NeoInteger;
pub use iterator::NeoIterator;
pub use manifest::{
    NeoContractABI, NeoContractEvent, NeoContractManifest, NeoContractMethod, NeoContractParameter,
    NeoContractPermission,
};
pub use map::NeoMap;
pub use storage::NeoStorageContext;
pub use string::NeoString;
pub use traits::{NeoContract, NeoContractEntry, NeoContractMethodTrait};
pub use value::{NeoStruct, NeoValue};
