import Service from "../../service";
import Client from "../../client";
import { IRequest } from "../../typings/requestOptions";
import { Logo } from "../../typings/management/models";
import { TerminalSettings } from "../../typings/management/models";
/**
 * API handler for TerminalSettingsStoreLevelApi
 */
export declare class TerminalSettingsStoreLevelApi extends Service {
    private readonly API_BASEPATH;
    private baseUrl;
    constructor(client: Client);
    /**
    * @summary Get the terminal logo
    * @param merchantId {@link string } The unique identifier of the merchant account.
    * @param reference {@link string } The reference that identifies the store.
    * @param requestOptions {@link IRequest.Options }
    * @param model {@link string } (Required) The terminal model. Possible values: E355, VX675WIFIBT, VX680, VX690, VX700, VX820, M400, MX925, P400Plus, UX300, UX410, V200cPlus, V240mPlus, V400cPlus, V400m, e280, e285, e285p, S1E, S1EL, S1F2, S1L, S1U, S7T.
    * @return {@link Logo }
    */
    getTerminalLogo(merchantId: string, reference: string, model: string, requestOptions?: IRequest.Options): Promise<Logo>;
    /**
    * @summary Get the terminal logo
    * @param storeId {@link string } The unique identifier of the store.
    * @param requestOptions {@link IRequest.Options }
    * @param model {@link string } (Required) The terminal model. Possible values: E355, VX675WIFIBT, VX680, VX690, VX700, VX820, M400, MX925, P400Plus, UX300, UX410, V200cPlus, V240mPlus, V400cPlus, V400m, e280, e285, e285p, S1E, S1EL, S1F2, S1L, S1U, S7T.
    * @return {@link Logo }
    */
    getTerminalLogoByStoreId(storeId: string, model: string, requestOptions?: IRequest.Options): Promise<Logo>;
    /**
    * @summary Get terminal settings
    * @param merchantId {@link string } The unique identifier of the merchant account.
    * @param reference {@link string } The reference that identifies the store.
    * @param requestOptions {@link IRequest.Options }
    * @return {@link TerminalSettings }
    */
    getTerminalSettings(merchantId: string, reference: string, requestOptions?: IRequest.Options): Promise<TerminalSettings>;
    /**
    * @summary Get terminal settings
    * @param storeId {@link string } The unique identifier of the store.
    * @param requestOptions {@link IRequest.Options }
    * @return {@link TerminalSettings }
    */
    getTerminalSettingsByStoreId(storeId: string, requestOptions?: IRequest.Options): Promise<TerminalSettings>;
    /**
    * @summary Update the terminal logo
    * @param merchantId {@link string } The unique identifier of the merchant account.
    * @param reference {@link string } The reference that identifies the store.
    * @param logo {@link Logo }
    * @param requestOptions {@link IRequest.Options }
    * @param model {@link string } (Required) The terminal model. Possible values: E355, VX675WIFIBT, VX680, VX690, VX700, VX820, M400, MX925, P400Plus, UX300, UX410, V200cPlus, V240mPlus, V400cPlus, V400m, e280, e285, e285p, S1E, S1EL, S1F2, S1L, S1U, S7T
    * @return {@link Logo }
    */
    updateTerminalLogo(merchantId: string, reference: string, logo: Logo, model: string, requestOptions?: IRequest.Options): Promise<Logo>;
    /**
    * @summary Update the terminal logo
    * @param storeId {@link string } The unique identifier of the store.
    * @param logo {@link Logo }
    * @param requestOptions {@link IRequest.Options }
    * @param model {@link string } (Required) The terminal model. Possible values: E355, VX675WIFIBT, VX680, VX690, VX700, VX820, M400, MX925, P400Plus, UX300, UX410, V200cPlus, V240mPlus, V400cPlus, V400m, e280, e285, e285p, S1E, S1EL, S1F2, S1L, S1U, S7T.
    * @return {@link Logo }
    */
    updateTerminalLogoByStoreId(storeId: string, logo: Logo, model: string, requestOptions?: IRequest.Options): Promise<Logo>;
    /**
    * @summary Update terminal settings
    * @param merchantId {@link string } The unique identifier of the merchant account.
    * @param reference {@link string } The reference that identifies the store.
    * @param terminalSettings {@link TerminalSettings }
    * @param requestOptions {@link IRequest.Options }
    * @return {@link TerminalSettings }
    */
    updateTerminalSettings(merchantId: string, reference: string, terminalSettings: TerminalSettings, requestOptions?: IRequest.Options): Promise<TerminalSettings>;
    /**
    * @summary Update terminal settings
    * @param storeId {@link string } The unique identifier of the store.
    * @param terminalSettings {@link TerminalSettings }
    * @param requestOptions {@link IRequest.Options }
    * @return {@link TerminalSettings }
    */
    updateTerminalSettingsByStoreId(storeId: string, terminalSettings: TerminalSettings, requestOptions?: IRequest.Options): Promise<TerminalSettings>;
}
