1use std::time::Duration;
6
7use ruma_macros::{OrdAsRefStr, PartialEqAsRefStr, PartialOrdAsRefStr};
8
9use crate::{serde::StringEnum, PrivOwnedStr};
10
11#[doc = include_str!(concat!(env!("CARGO_MANIFEST_DIR"), "/src/doc/string_enum.md"))]
13#[derive(Clone, StringEnum, PartialEqAsRefStr, Eq, PartialOrdAsRefStr, OrdAsRefStr)]
14#[ruma_enum(rename_all = "snake_case")]
15#[non_exhaustive]
16pub enum Method {
17 Crop,
19
20 Scale,
22
23 #[doc(hidden)]
24 _Custom(PrivOwnedStr),
25}
26
27pub fn default_download_timeout() -> Duration {
29 Duration::from_secs(20)
30}
31
32pub fn is_default_download_timeout(timeout: &Duration) -> bool {
35 timeout.as_secs() == 20
36}