1use wasm_bindgen::{JsError, prelude::wasm_bindgen};
8
9#[derive(Clone, Copy, Debug)]
11#[wasm_bindgen]
12pub struct Params(scryptenc::Params);
13
14#[wasm_bindgen]
15impl Params {
16 #[wasm_bindgen(constructor)]
27 pub fn new(ciphertext: &[u8]) -> Result<Self, JsError> {
28 scryptenc::Params::new(ciphertext)
29 .map(Self)
30 .map_err(JsError::from)
31 }
32
33 #[allow(clippy::missing_const_for_fn)]
34 #[must_use]
36 #[wasm_bindgen(js_name = logN, getter)]
37 pub fn log_n(&self) -> u8 {
38 self.0.log_n()
39 }
40
41 #[allow(clippy::missing_const_for_fn)]
42 #[must_use]
44 #[wasm_bindgen(getter)]
45 pub fn n(&self) -> u64 {
46 self.0.n()
47 }
48
49 #[allow(clippy::missing_const_for_fn)]
50 #[must_use]
52 #[wasm_bindgen(getter)]
53 pub fn r(&self) -> u32 {
54 self.0.r()
55 }
56
57 #[allow(clippy::missing_const_for_fn)]
58 #[must_use]
60 #[wasm_bindgen(getter)]
61 pub fn p(&self) -> u32 {
62 self.0.p()
63 }
64}