javascript-ampache
Version:
A JS library for the Ampache API
81 lines (80 loc) • 3.31 kB
TypeScript
import { Base, BinaryBoolean, Success } from "../base";
import { PreferenceResponse, PreferencesResponse } from "./types";
export declare class Preferences extends Base {
/**
* Get your server preferences
* ACCESS REQUIRED: 100 (Admin)
* @remarks MINIMUM_API_VERSION=5.0.0
* @see {@link https://ampache.org/api/api-json-methods#system_preferences}
*/
systemPreferences(): Promise<PreferencesResponse>;
/**
* Get your system preference by name
* ACCESS REQUIRED: 100 (Admin)
* @remarks MINIMUM_API_VERSION=5.0.0
* @param params.systemPreference Preference name e.g ('notify_email', 'ajax_load')
* @see {@link https://ampache.org/api/api-json-methods#system_preference}
*/
systemPreference(params: {
filter: string;
}): Promise<PreferenceResponse>;
/**
* Get your user preferences
* @remarks MINIMUM_API_VERSION=5.0.0
* @see {@link https://ampache.org/api/api-json-methods#user_preferences}
*/
userPreferences(): Promise<PreferencesResponse>;
/**
* Get your user preference by name
* @remarks MINIMUM_API_VERSION=5.0.0
* @param params.filter Preference name e.g ('notify_email', 'ajax_load')
* @see {@link https://ampache.org/api/api-json-methods#user_preference}
*/
userPreference(params: {
filter: string;
}): Promise<PreferenceResponse>;
/**
* Add a new preference to your server
* ACCESS REQUIRED: 100 (Admin)
* @param params.filter Preference name e.g ('notify_email', 'ajax_load')
* @param params.type boolean, integer, string, special
* @param params.default string or integer default value
* @param params.category Category type
* @param [params.description]
* @param [params.subcategory]
* @param [params.level] access level required to change the value (default 100)
* @see {@link https://ampache.org/api/api-json-methods#preference_create}
*/
preferenceCreate(params: {
filter: string;
type: "boolean" | "integer" | "string" | "special";
default: string | number;
category: "interface" | "internal" | "options" | "playlist" | "plugins" | "streaming";
description?: string;
subcategory?: string;
level?: number;
}): Promise<Success>;
/**
* Edit a preference value and apply to all users if allowed
* ACCESS REQUIRED: 100 (Admin)
* @remarks MINIMUM_API_VERSION=5.0.0
* @param params.filter Preference name e.g ('notify_email', 'ajax_load')
* @param params.value (string/integer) Preference value
* @param [params.all] 0, 1 apply to all users
* @see {@link https://ampache.org/api/api-json-methods#preference_edit}
*/
preferenceEdit(params: {
filter: string;
value: string | number;
all?: BinaryBoolean;
}): Promise<Success>;
/**
* Delete a non-system preference by name
* ACCESS REQUIRED: 100 (Admin)
* @param params.filter Preference name e.g ('notify_email', 'ajax_load')
* @see {@link https://ampache.org/api/api-json-methods#preference_delete}
*/
preferenceDelete(params: {
filter: string;
}): Promise<Success>;
}