pub mod api {
pub mod create {
#![allow(non_snake_case)]
use matrix_sdk_base::ruma::{
api::{request, response, Metadata},
metadata,
};
use serde;
use serde::Serialize;
#[derive(Serialize, Default, Debug, Clone)]
#[serde(rename_all = "kebab-case")]
enum RequestType {
#[default]
Ref,
}
use crate::events::RefDetails;
const METADATA: Metadata = metadata! {
method: PUT,
rate_limited: false,
authentication: AccessToken,
history: {
unstable => "/_synapse/client/share_link/",
}
};
#[request]
pub struct Request {
#[serde(flatten)]
inner: RefDetails,
#[serde(rename = "type")]
req_type: RequestType,
}
impl Request {
pub fn new(inner: RefDetails) -> Self {
Request {
inner,
req_type: Default::default(),
}
}
}
#[response]
pub struct Response {
pub url: String,
pub targetUri: String,
}
}
}