@spasea/uz-booking-client
Version:
Unofficial UZ api client
57 lines (56 loc) • 2.01 kB
TypeScript
import Requestable from '../lib/requestable';
import { Language } from '../models';
export default class Auth extends Requestable {
fcmToken: string;
deviceName: string;
phoneNumber: string;
private _accessToken;
/**
* Construct auth class.
* @constructor
* @param {string} fcmToken
* @param {string} deviceName
* @param {auth} accessToken - the credentials to authenticate to UzBoojking. If auth is
* not provided requests will be made unauthenticated
* @param userId - user id of UZ account
* @param {Language} [lang] - language
* @param {string} [apiBase] - the base UzBooking API URL
*/
constructor(fcmToken: string, deviceName: string, accessToken: string, userId: number | string, lang: Language, apiBase: string);
/**
* Send sms
* @param {string} phoneNumber
* @param {Function} [callback] - callback function
* @returns {Promise<void>}
*/
sendSms(phoneNumber: string, callback?: (error: Error, data?: object, response?: object) => any): Promise<void>;
/**
* Login
* @param {string} code
* @param {Function} [callback] - callback function
* @returns {Promise<{access_token: string, expires_in: number}>}
*/
login(code: string, callback?: (error: Error, data?: object, response?: object) => any): Promise<{
access_token: string;
expires_in: number;
}>;
/**
* Refresh token
* @param {Function} [callback] - callback function
* @returns {Promise<{access_token: string, expires_in: number}>}
*/
refresh(callback?: (error: Error, data?: object, response?: object) => any): Promise<{
access_token: string;
expires_in: number;
}>;
/**
* Check if access token expired
* @returns {Boolean} - the promise for the http request
*/
isExpired(): boolean;
/**
* Get access token
* @returns {string}
*/
get accessToken(): string;
}