UNPKG

@vansite/ts-sharetribe-flex-sdk

Version:

This is a TypeScript SDK for Sharetribe Flex API. It reduces the complexity of the API and provides a more user-friendly interface.

48 lines (47 loc) 2.29 kB
/** * @fileoverview Provides the AssetsApi class for interacting with the Sharetribe Asset Delivery API. * * @see https://www.sharetribe.com/api-reference/asset-delivery-api.html */ import type { AxiosResponse } from "axios"; import SharetribeSdk from "../../sdk"; import { AssetByAliasParameter, AssetByVersionParameter, AssetResponse, AssetsByAliasParameter, AssetsByVersionParameter } from "../../types"; declare class AssetsApi { private readonly axios; private readonly endpoint; private readonly headers; constructor(sdk: SharetribeSdk); /** * Fetch a single asset by alias (e.g. "latest") * * @template P * @param {P & AssetByAliasParameter} params * @returns {Promise<AxiosResponse<AssetResponse<"assetByAlias", P & AssetByAliasParameter>>>} */ assetByAlias<P extends AssetByAliasParameter>(params: P & AssetByAliasParameter): Promise<AxiosResponse<AssetResponse<"assetByAlias", P & AssetByAliasParameter>>>; /** * Fetch multiple assets by alias from the same directory * * @template P * @param {P & AssetsByAliasParameter} params * @returns {Promise<AxiosResponse<AssetResponse<"assetsByAlias", P & AssetsByAliasParameter>>>} */ assetsByAlias<P extends AssetsByAliasParameter>(params: P & AssetsByAliasParameter): Promise<AxiosResponse<AssetResponse<"assetsByAlias", P & AssetsByAliasParameter>>>; /** * Fetch a single asset by version * * @template P * @param {P & AssetByVersionParameter} params * @returns {Promise<AxiosResponse<AssetResponse<"assetByVersion", P & AssetByVersionParameter>>>} */ assetByVersion<P extends AssetByVersionParameter>(params: P & AssetByVersionParameter): Promise<AxiosResponse<AssetResponse<"assetByVersion", P & AssetByVersionParameter>>>; /** * Fetch multiple assets by version from the same directory * * @template P * @param {P & AssetsByVersionParameter} params * @returns {Promise<AxiosResponse<AssetResponse<"assetsByVersion", P & AssetsByVersionParameter>>>} */ assetsByVersion<P extends AssetsByVersionParameter>(params: P & AssetsByVersionParameter): Promise<AxiosResponse<AssetResponse<"assetsByVersion", P & AssetsByVersionParameter>>>; } export default AssetsApi;