crunchyroll-js-api
Version:
JavaScript API consumer for crunchyroll
90 lines (89 loc) • 2.51 kB
TypeScript
declare namespace _default {
export { storage };
export { getAuthToken };
export { getToken };
export { getLocale };
export { getCms };
export { getContentParam };
export { loadFromLocal };
export { saveToLocal };
export { authDataFile };
export { getAccount };
export { saveToken };
export { setExternalStorage };
export { setNewData };
export { switchProfile };
export { revokeToken };
}
export default _default;
/** @type {import('./types.js').Storage} */
declare const storage: import('./types.js').Storage;
/**
* @returns {Promise<String>}
*/
declare function getAuthToken(): Promise<string>;
/**
* @returns {Promise<import('./types').TokenObj>}
*/
declare function getToken(): Promise<import('./types').TokenObj>;
/**
* @todo maybe add a extra field to save locale, and return profile.preferredContentSubtitleLanguage too
*/
declare function getLocale(): Promise<string>;
/**
* @returns {Promise<import('./types').CmsObj>}
*/
declare function getCms(): Promise<import('./types').CmsObj>;
/**
* Return basic params to query api
* @param {import('./types').Profile} profile
* @returns {Promise<import('./types').AccountAuth>}
*/
declare function getContentParam(profile: import('./types').Profile): Promise<import('./types').AccountAuth>;
/**
* Load from persistence data
* @returns {Promise}
*/
declare function loadFromLocal(): Promise<any>;
/**
* Save to persistence data
* @returns {Promise}
*/
declare function saveToLocal(): Promise<any>;
/**
* Disk file with credential data
* @returns {Promise<String>}
*/
declare function authDataFile(): Promise<string>;
/**
* @returns {Promise<import('./types').AccountObj>}
*/
declare function getAccount(): Promise<import('./types').AccountObj>;
/**
* @param {Object} [data]
* @returns {Promise}
*/
declare function saveToken(data?: any): Promise<any>;
/**
* Set function to save and load data from external storage
* @param {{save: Function, load: Function}} obj
*/
declare function setExternalStorage({ save, load }: {
save: Function;
load: Function;
}): void;
/**
* Set credentials of an account
* @param {Storage} newData
* @returns {Promise}
*/
declare function setNewData(newData: Storage): Promise<any>;
/**
* @param {String} profileId
* @returns {Promise<import('./types').TokenObj>}
*/
declare function switchProfile(profileId: string): Promise<import('./types').TokenObj>;
/**
* @returns {Promise}
*/
declare function revokeToken(): Promise<any>;