diff --git a/src/types/non_telegram_types/country_code.rs b/src/types/non_telegram_types/country_code.rs new file mode 100644 index 00000000..c8bd37c4 --- /dev/null +++ b/src/types/non_telegram_types/country_code.rs @@ -0,0 +1,252 @@ +#[derive(Copy, Clone, Debug, Eq, Hash, PartialEq, Serialize, Deserialize)] +pub enum CountryCode { + AD, + AE, + AF, + AG, + AI, + AL, + AM, + AO, + AQ, + AR, + AS, + AT, + AU, + AW, + AX, + AZ, + BA, + BB, + BD, + BE, + BF, + BG, + BH, + BI, + BJ, + BL, + BM, + BN, + BO, + BQ, + BR, + BS, + BT, + BV, + BW, + BY, + BZ, + CA, + CC, + CD, + CF, + CG, + CH, + CI, + CK, + CL, + CM, + CN, + CO, + CR, + CU, + CV, + CW, + CX, + CY, + CZ, + DE, + DJ, + DK, + DM, + DO, + DZ, + EC, + EE, + EG, + EH, + ER, + ES, + ET, + FI, + FJ, + FK, + FM, + FO, + FR, + GA, + GB, + GD, + GE, + GF, + GG, + GH, + GI, + GL, + GM, + GN, + GP, + GQ, + GR, + GS, + GT, + GU, + GW, + GY, + HK, + HM, + HN, + HR, + HT, + HU, + ID, + IE, + IL, + IM, + IN, + IO, + IQ, + IR, + IS, + IT, + JE, + JM, + JO, + JP, + KE, + KG, + KH, + KI, + KM, + KN, + KP, + KR, + KW, + KY, + KZ, + LA, + LB, + LC, + LI, + LK, + LR, + LS, + LT, + LU, + LV, + LY, + MA, + MC, + MD, + ME, + MF, + MG, + MH, + MK, + ML, + MM, + MN, + MO, + MP, + MQ, + MR, + MS, + MT, + MU, + MV, + MW, + MX, + MY, + MZ, + NA, + NC, + NE, + NF, + NG, + NI, + NL, + NO, + NP, + NR, + NU, + NZ, + OM, + PA, + PE, + PF, + PG, + PH, + PK, + PL, + PM, + PN, + PR, + PS, + PT, + PW, + PY, + QA, + RE, + RO, + RS, + RU, + RW, + SA, + SB, + SC, + SD, + SE, + SG, + SH, + SI, + SJ, + SK, + SL, + SM, + SN, + SO, + SR, + SS, + ST, + SV, + SX, + SY, + SZ, + TC, + TD, + TF, + TG, + TH, + TJ, + TK, + TL, + TM, + TN, + TO, + TR, + TT, + TV, + TW, + TZ, + UA, + UG, + UM, + US, + UY, + UZ, + VA, + VC, + VE, + VG, + VI, + VN, + VU, + WF, + WS, + YE, + YT, + ZA, + ZM, + ZW, +} \ No newline at end of file diff --git a/src/types/non_telegram_types/mod.rs b/src/types/non_telegram_types/mod.rs index 08b21ee7..1e6c96f2 100644 --- a/src/types/non_telegram_types/mod.rs +++ b/src/types/non_telegram_types/mod.rs @@ -1,3 +1,5 @@ pub use currency::*; +pub use country_code::*; -mod currency; \ No newline at end of file +mod currency; +mod country_code; \ No newline at end of file diff --git a/src/types/shipping_address.rs b/src/types/shipping_address.rs index b323bb24..e35d1153 100644 --- a/src/types/shipping_address.rs +++ b/src/types/shipping_address.rs @@ -1,4 +1,5 @@ use serde::{Deserialize, Serialize}; +use crate::types::CountryCode; /// This object represents a shipping address. /// @@ -6,7 +7,7 @@ use serde::{Deserialize, Serialize}; #[derive(Clone, Debug, Eq, Hash, PartialEq, Serialize, Deserialize)] pub struct ShippingAddress { /// ISO 3166-1 alpha-2 country code. - pub country_code: String, + pub country_code: CountryCode, /// State, if applicable. pub state: String,