manabrew_protocol/prompts/
choose_damage_assignment_order.rs1use serde::{Deserialize, Serialize};
2use ts_rs::TS;
3
4use crate::game::CardDto;
5
6#[derive(Debug, Clone, Serialize, Deserialize, TS)]
7#[serde(rename_all = "camelCase")]
8#[ts(export, export_to = "prompts/chooseDamageAssignmentOrder.ts")]
9pub struct ChooseDamageAssignmentOrderInput {
10 pub attacker_id: String,
11 pub blocker_ids: Vec<String>,
12 pub blocker_cards: Vec<CardDto>,
13}
14
15#[derive(Debug, Clone, Serialize, Deserialize, TS)]
16#[serde(
17 tag = "type",
18 rename_all = "camelCase",
19 rename_all_fields = "camelCase"
20)]
21#[ts(export, export_to = "prompts/chooseDamageAssignmentOrder.ts")]
22pub enum ChooseDamageAssignmentOrderOutput {
23 DamageAssignmentOrderDecision { ordered_blocker_ids: Vec<String> },
24}