import { Application, ApplicationMerchantConfigurations } from '@bringg/types';
import { MerchantConfigurationApi } from '../MerchantConfiguration/MerchantConfigurationApi';
import Session from '../Services/Identity/Session';
export default class ApplicationMerchantConfigurationApi {
    private entity;
    private merchantConfigurationApi;
    constructor(session: Session, merchantConfigurationApi: MerchantConfigurationApi);
    getByAppId(id: number): Promise<ApplicationMerchantConfigurations>;
    getByAppUuid(uuid: string): Promise<ApplicationMerchantConfigurations>;
    addApplicationById(appId: number): Promise<Application>;
    addApplicationByUuid(appUuid: Bringg.ApplicationUuid): Promise<Application>;
    removeApplicationById(appId: number): Promise<void>;
    removeApplicationByUuid(appUuid: Bringg.ApplicationUuid): Promise<void>;
    /**
     * Updates the config of the application for the current merchant by either the app's id (number) or uuid (guid string).
     * @param appId The id or uuid of the application to update.
     * @param data The config data.
     */
    updateConfig(appId: string | number, data: object): Promise<boolean>;
    getApplicationByUuid(uuid: Bringg.ApplicationUuid): Promise<Bringg.Application>;
    testSamlUrl(url: string): Promise<import("./Entity/ApplicationMerchantConfigurationEntity").TestSamlResponse>;
}
