import { BusinessProfile, BusinessProfileWithProperties, CompareBusinessProfilePathType, BusinessProfilePath, BusinessProfileProperty, MultilingualString } from "../models";
export declare class BusinessProfileService {
    private omniaContext;
    private httpClient;
    private baseUrl;
    constructor();
    createProfile: (profileName: MultilingualString) => Promise<BusinessProfile>;
    updateProfile: (profileId: string, name: MultilingualString) => Promise<BusinessProfile>;
    findProfile: (path: string) => Promise<BusinessProfile>;
    getProfiles: () => Promise<Array<BusinessProfile>>;
    getProfile: (profileId: string) => Promise<BusinessProfile>;
    getDefaultBusinessProfileUrl: (profileId: string, includeOmniaAdminPath?: boolean) => Promise<string>;
    getProfileWithProperties: (profileId: string) => Promise<BusinessProfileWithProperties>;
    deleteProfile: (profileId: string) => Promise<void>;
    getPathsOfProfile: (profileId: string) => Promise<Array<string>>;
    getAllPaths: () => Promise<Array<string>>;
    getByPath: (path: string, compareType?: CompareBusinessProfilePathType) => Promise<BusinessProfilePath>;
    addPaths: (profileId: string, paths: Array<string>) => Promise<void>;
    updatePath: (profileId: string, oldPath: string, newPath: string) => Promise<void>;
    removePaths: (paths: Array<string>) => Promise<void>;
    removePathsOfProfile: (profileId: string) => Promise<void>;
    getPropertiesInAllProfilePropertyBags: <Model extends BusinessProfileProperty>(model: new () => Model) => Promise<{
        [profileId: string]: Model;
    }>;
    validateDeleteProfile: (profileId: string) => Promise<boolean>;
}
