#![no_std]
#![warn(missing_docs)]
#[cfg(any(feature = "std", test))]
extern crate std;
#[macro_use]
extern crate alloc;
#[cfg(feature = "serde")]
#[macro_use]
extern crate serde;
pub extern crate bitcoin;
#[cfg(feature = "miniscript")]
pub extern crate miniscript;
mod consts;
mod error;
#[macro_use]
mod macros;
#[cfg(feature = "serde")]
mod serde_utils;
mod sighash_type;
pub mod raw;
pub mod serialize;
pub mod v0;
pub mod v2;
mod version;
use bitcoin::io;
#[rustfmt::skip] #[doc(inline)]
pub use crate::{
error::{InconsistentKeySourcesError, FeeError, FundingUtxoError},
sighash_type::{PsbtSighashType, InvalidSighashTypeError, ParseSighashTypeError},
version::{Version, UnsupportedVersionError},
};
pub const V0: Version = Version::ZERO;
pub const V2: Version = Version::TWO;
#[rustfmt::skip]
mod prelude {
#![allow(unused_imports)]
#[cfg(all(not(feature = "std"), not(test)))]
pub use alloc::{string::{String, ToString}, vec::Vec, boxed::Box, borrow::{Borrow, BorrowMut, Cow, ToOwned}, slice, rc};
#[cfg(all(not(feature = "std"), not(test), target_has_atomic = "ptr"))]
pub use alloc::sync;
#[cfg(any(feature = "std", test))]
pub use std::{string::{String, ToString}, vec::Vec, boxed::Box, borrow::{Borrow, BorrowMut, Cow, ToOwned}, slice, rc, sync};
#[cfg(all(not(feature = "std"), not(test)))]
pub use alloc::collections::{BTreeMap, BTreeSet, btree_map, BinaryHeap};
#[cfg(any(feature = "std", test))]
pub use std::collections::{BTreeMap, BTreeSet, btree_map, BinaryHeap};
#[cfg(any(feature = "std", test))]
pub use std::{println, print, format, write, writeln};
pub use bitcoin::hex::DisplayHex;
}