import { IApihawkSession } from '@apihawk/connector';
import { BilliaSDKServiceBase } from '../lib/billia-sdk-service-base';
import { IHashTable } from '../types/common';
import { IChangePasswordBody, IChangePasswordResponse, IChangeSupportPinResponse, IUserSettingResponse } from './billia-sdk-user.types';
export declare class BilliaSDKUser extends BilliaSDKServiceBase {
    /**
     * Changes the password of the currently logged in user.
     * @param session - user session
     * @param data - old and new password
     */
    changePassword(session: IApihawkSession, data: IChangePasswordBody): Promise<IChangePasswordResponse>;
    /**
     * Gets the user settings as key-value pairs.
     *
     * @param session - user session
     */
    getSettings(session: IApihawkSession): Promise<IHashTable<string>>;
    /**
     * Gets a single user setting by its key.
     *
     * @param session - user session
     * @param key - setting name
     */
    getSetting(session: IApihawkSession, key: string): Promise<IUserSettingResponse>;
    /**
     * Sets the value of a user setting by its key.
     *
     * @param session - user session
     * @param key - setting name (key)
     * @param value - setting value
     */
    putSetting(session: IApihawkSession, key: string, value: string): Promise<IUserSettingResponse>;
    /**
     * Generates a new random support PIN code for the customer and saves it.
     *
     * @param session - user session
     * @param userId - user ID
     */
    changeSupportPin(session: IApihawkSession, userId: number): Promise<IChangeSupportPinResponse>;
}
//# sourceMappingURL=billia-sdk-user.d.ts.map