import { Brand, BrandUpdateModel } from "../../model/base/SDKBrand";
import { DataCore } from "../data/SDKDataCore";
import { RemoteBrandIdentifier, RemoteVersionIdentifier } from "./SDKRemoteIdentifiers";
export declare class AreaBrands {
    /** Internal: Engine */
    private dataCore;
    constructor(dataCore: DataCore);
    /** Fetches all remote brands in the version
     * @param from - Remote version to fetch from
     * @returns All brands in the specified version
     */
    getBrands(from: RemoteVersionIdentifier): Promise<Array<Brand>>;
    /** Fetches a single brand
     * @param from - Remote brand to fetch from
     * @returns Brand in the specified version
     */
    getBrand(from: RemoteBrandIdentifier): Promise<Brand>;
    /** Creates new brand and retrieves the newly created brand object.
     * @param from - Remote brand to fetch from
     * @param model - new brand model
     * @returns Newly created brand object
     */
    createBrand(from: RemoteVersionIdentifier, model: BrandUpdateModel): Promise<Brand>;
    /** Edits brand
     * @param from - Remote brand to fetch from
     * @param model - new version model
     * @returns nothing
     */
    editBrand(from: RemoteBrandIdentifier, brand: Brand): Promise<void>;
    /** Deletes brand
     * @param from - Remote brand to fetch from
     * @returns nothing
     */
    deleteBrand(from: RemoteBrandIdentifier): Promise<void>;
}
