1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: app.bsky.video.uploadVideo
4//
5// This file was automatically generated from Lexicon schemas.
6// Any manual changes will be overwritten on the next regeneration.
7
8#[derive(
9 serde::Serialize,
10 serde::Deserialize,
11 Debug,
12 Clone,
13 PartialEq,
14 Eq,
15 bon::Builder
16)]
17#[builder(start_fn = new)]
18#[serde(rename_all = "camelCase")]
19pub struct UploadVideo {
20 pub body: bytes::Bytes,
21}
22
23impl jacquard_common::IntoStatic for UploadVideo {
24 type Output = UploadVideo;
25 fn into_static(self) -> Self::Output {
26 self
27 }
28}
29
30#[jacquard_derive::lexicon]
31#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
32#[serde(rename_all = "camelCase")]
33pub struct UploadVideoOutput<'a> {
34 #[serde(borrow)]
35 pub job_status: crate::app_bsky::video::JobStatus<'a>,
36}
37
38impl jacquard_common::IntoStatic for UploadVideoOutput<'_> {
39 type Output = UploadVideoOutput<'static>;
40 fn into_static(self) -> Self::Output {
41 UploadVideoOutput {
42 job_status: self.job_status.into_static(),
43 extra_data: self.extra_data.into_static(),
44 }
45 }
46}
47
48impl jacquard_common::types::xrpc::XrpcRequest for UploadVideo {
49 const NSID: &'static str = "app.bsky.video.uploadVideo";
50 const METHOD: jacquard_common::types::xrpc::XrpcMethod = jacquard_common::types::xrpc::XrpcMethod::Procedure(
51 "video/mp4",
52 );
53 const OUTPUT_ENCODING: &'static str = "application/json";
54 type Output<'de> = UploadVideoOutput<'de>;
55 type Err<'de> = jacquard_common::types::xrpc::GenericError<'de>;
56 fn encode_body(&self) -> Result<Vec<u8>, jacquard_common::types::xrpc::EncodeError> {
57 Ok(self.body.to_vec())
58 }
59}