import { BaseAPI } from '../BaseAPI';
import { DeleteMacroRequest, MacroResult, UpsertMacroRequest, UserMacroRequest } from './MacrosModels';
export declare class MacrosAPI extends BaseAPI {
    private _accountCode;
    private _accessKey;
    private _baseUrl;
    constructor(_accountCode: string, _accessKey: string, server: string);
    /**
     * Returns a list of macros for the specified user.
     * @param request UserMacroRequest
     * @returns The list of Macros
     */
    getMacros(request: UserMacroRequest): Promise<MacroResult | string>;
    /**
     * Creates or Updates a Macro for the specified user.
     * @param request UpsertMacroRequest
     * @returns The result of the operation
     */
    upsertMacro(request: UpsertMacroRequest): Promise<MacroResult | string>;
    /**
     * Deletes a Macro for the specified user.
     * @param request DeleteMacroRequest
     * @returns The result of the operation
     */
    deleteMacro(request: DeleteMacroRequest): Promise<MacroResult | string>;
    private getURL;
    private getAccountModel;
}
