use serde::{Deserialize, Serialize};
use std::collections::HashMap;
use crate::AnkiRequest;
use crate::entities::NoteId;
#[derive(Default, Debug, Clone, PartialEq, Eq, Serialize)]
pub struct NotesInfoRequest {
pub notes: Vec<NoteId>,
}
#[derive(Default, Debug, Clone, PartialEq, Eq, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct NotesInfoResponse {
pub note_id: NoteId,
pub model_name: String,
pub tags: Vec<String>,
pub fields: HashMap<String, NotesInfoFieldsResponse>,
}
#[derive(Default, Debug, Clone, PartialEq, Eq, Deserialize)]
pub struct NotesInfoFieldsResponse {
pub value: String,
pub order: usize,
}
impl AnkiRequest for NotesInfoRequest {
type Response = Vec<NotesInfoResponse>;
const ACTION: &'static str = "notesInfo";
const VERSION: u8 = 6;
}