javascript-ampache
Version:
A JS library for the Ampache API
70 lines (69 loc) • 2.7 kB
TypeScript
import { ShareResponse, SharesResponse } from "./types";
import { Base, BinaryBoolean, ExtendedPagination, Success, UID } from "../base";
export declare class Shares extends Base {
/**
* This searches the shares and returns... shares
* @remarks MINIMUM_API_VERSION=420000
* @param [params.filter] UID to find
* @param [params.exact] 0, 1 boolean to match the exact filter string
* @param [params.offset]
* @param [params.limit]
* @param [params.cond]
* @param [params.sort]
* @see {@link https://ampache.org/api/api-json-methods#shares}
*/
shares(params?: {
filter?: string;
exact?: BinaryBoolean;
} & ExtendedPagination): Promise<SharesResponse>;
/**
* Return a share from UID
* @remarks MINIMUM_API_VERSION=420000
* @param params.filter UID to find
* @see {@link https://ampache.org/api/api-json-methods#share}
*/
share(params: {
filter: UID;
}): Promise<ShareResponse>;
/**
* Create a public url that can be used by anyone to stream media.
* @remarks MINIMUM_API_VERSION=420000
* @param params.filter UID of object you are sharing
* @param params.type ('song', 'album', 'artist', 'playlist', 'podcast', 'podcast_episode', 'video')
* @param [params.description] description (will be filled for you if empty)
* @param [params.expires] days to keep active
* @see {@link https://ampache.org/api/api-json-methods#share_create}
*/
shareCreate(params: {
filter: UID;
type: "song" | "album" | "artist" | "playlist" | "podcast" | "podcast_episode" | "video";
description?: string;
expires?: number;
}): Promise<ShareResponse>;
/**
* Update the description and/or expiration date for an existing share
* @remarks MINIMUM_API_VERSION=420000
* @param params.filter UID to find
* @param [params.stream] 0, 1
* @param [params.download] 0, 1
* @param [params.expires] days to keep active
* @param [params.description] description
* @see {@link https://ampache.org/api/api-json-methods#share_edit}
*/
shareEdit(params: {
filter: UID;
stream?: BinaryBoolean;
download?: BinaryBoolean;
expires?: number;
description?: string;
}): Promise<Success>;
/**
* Delete an existing share.
* @remarks MINIMUM_API_VERSION=420000
* @param params.filter UID of share to delete
* @see {@link https://ampache.org/api/api-json-methods#share_delete}
*/
shareDelete(params: {
filter: UID;
}): Promise<Success>;
}