import { Merchant, Merchant as MerchantType } from '@bringg/types';
import StoreEntity from '../../Core/StoreEntity';
import Session from '../../Services/Identity/Session';
import { ValidatedMerchantSettings } from '../Merchant.consts';
export default class MerchantEntity extends StoreEntity<Merchant> {
    constructor(session: Session);
    private updateMerchant;
    private subscribe;
    getLocal(): Merchant;
    get(): Promise<Merchant>;
    updateMerchantRequest(merchantData: Partial<MerchantType>): Promise<Merchant>;
    getAll(): Promise<Merchant[]>;
    clean(options: {
        withDrivers: boolean;
    }): Promise<boolean>;
    createMerchantByAccountManager(newMerchant: Merchant): Promise<string>;
    validateMerchantSettingsForCopy(originMerchantId: number, destinationMerchantId: number): Promise<ValidatedMerchantSettings>;
    copyMerchantSettings(originMerchantId: number, destinationMerchantId: number, fields: Partial<Merchant>): Promise<boolean>;
}
