pub mod cistring;
pub mod datetime;
pub mod display_text;
pub mod extensions;
pub mod ids;
pub mod local;
pub mod number;
pub mod open_enum;
pub mod string;
pub mod url;
pub mod validate;
mod text;
pub use cistring::CiString;
pub use datetime::{DateTime, InvalidDateTime};
pub use display_text::DisplayText;
pub use extensions::Extensions;
pub use ids::{
ContractId, ContractIdParts, CountryCode, CountryCodeExt, Currency, EvseId, EvseIdParts, InvalidPartyRef,
PartyId, PartyRef,
};
pub use local::{InvalidLocalDate, InvalidLocalTime, LocalDate, LocalParts, LocalTime};
pub use number::{InvalidNumber, Number};
pub use open_enum::UnknownVariant;
pub use string::OcpiString;
pub use text::{InvalidString, StringKind};
pub use url::{InvalidUrl, URL_MAX_LEN, Url, UrlPolicy, UrlRefused};
pub use validate::{Validate, Validator, Violation, ViolationCode, Violations};
#[doc(hidden)]
pub use open_enum::{validate_closed_enum_value, validate_open_enum_value};
pub(crate) use validate::validate_fields;
pub const UNBOUNDED: usize = usize::MAX;
pub type OcpiText = OcpiString<UNBOUNDED>;
pub type CiText = CiString<UNBOUNDED>;