/**
 * @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;
