1use crate::low_level::apis::{lfs_api, Error};
2use crate::models;
3
4use super::RepoClient;
5
6#[derive(Clone, Debug)]
8pub struct LfsClient<'a> {
9 pub(super) repo: &'a RepoClient<'a>,
10}
11
12impl LfsClient<'_> {
13 pub async fn upload(
19 &self,
20 request: models::PostByOrgByRepoLfsObjectsRequest,
21 ) -> Result<
22 models::PostByOrgByRepoLfsObjects200Response,
23 Error<lfs_api::PostByOrgByRepoLfsObjectsError>,
24 > {
25 lfs_api::post_by_org_by_repo_lfs_objects(
26 self.repo.org.config,
27 self.repo.org.org,
28 self.repo.repo,
29 Some(request),
30 )
31 .await
32 }
33
34 pub async fn download(
40 &self,
41 request: models::PostByOrgByRepoLfsObjectsRequest,
42 ) -> Result<
43 models::PostByOrgByRepoLfsObjects200Response,
44 Error<lfs_api::PostByOrgByRepoLfsObjectsDownloadError>,
45 > {
46 lfs_api::post_by_org_by_repo_lfs_objects_download(
47 self.repo.org.config,
48 self.repo.org.org,
49 self.repo.repo,
50 Some(request),
51 )
52 .await
53 }
54}