use alloc::vec::Vec;
use binary_sv2::{binary_codec_sv2, Deserialize, Serialize, Str0255, B0255, B064K};
use core::convert::TryInto;
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Eq)]
#[repr(C)]
pub struct AllocateMiningJobToken<'decoder> {
pub user_identifier: Str0255<'decoder>,
pub request_id: u32,
}
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Eq)]
#[repr(C)]
pub struct AllocateMiningJobTokenSuccess<'decoder> {
pub request_id: u32,
pub mining_job_token: B0255<'decoder>,
pub coinbase_output_max_additional_size: u32,
pub coinbase_output_max_additional_sigops: u16,
pub coinbase_output: B064K<'decoder>,
pub async_mining_allowed: bool,
}